当前位置: 首页 > news >正文

做家务的男人们在哪个网站播出seo搜索引擎优化业务

做家务的男人们在哪个网站播出,seo搜索引擎优化业务,噼里啪啦电影免费观看高清,wordpress 放大镜STM32F10x_StdPeriph_Lib_V3.6.0 1> 头文件包含关系2> .c文件内部结构3> 宏定义位置4> 位掩码bit mask5> .c文件中定义私有变量6> 枚举类型定义 1> 头文件包含关系 1个头文件stm32f10x.h 就把整个MCU以及标准外设库,就管理了; 2>…

STM32F10x_StdPeriph_Lib_V3.6.0

  • 1> 头文件包含关系
  • 2> .c文件内部结构
  • 3> 宏定义位置
  • 4> 位掩码bit mask
  • 5> .c文件中定义私有变量
  • 6> 枚举类型定义


1> 头文件包含关系

3

1个头文件stm32f10x.h 就把整个MCU以及标准外设库,就管理了;


2> .c文件内部结构

/********************************************************************************* @file    Project/STM32F10x_StdPeriph_Template/stm32f10x_it.c * @author  MCD Application Team* @version V3.6.0* @date    20-September-2021* @brief   Main Interrupt Service Routines.*         ******************************************************************************* @attention********************************************************************************/
【段】文件头注释/* Includes -------------------------------*/
【段】包含头文件
/* Private typedef ------------------------*/
【段】内部类型重命名
/* Private define -------------------------*/
【段】内部宏定义
/* Private macro --------------------------*/
【段】内部预处理,宏函数
/* Private variables ----------------------*/
【段】内部变量定义
/* Private function prototypes ------------*/
【段】内部函数声明
/* Private functions ----------------------*/
【段】函数实现

3> 宏定义位置

有些宏定义在.c文件中,有些在 .h文件中,没规律吗?

例如:

// stm32f10xx_gpio.c:
#define MAPR_OFFSET   (AFIO_OFFSET + 0x04)
// stm32f10xx_gpio.h:
#define GPIO_Pin_0      ((uint16_t)0x0001)

如果宏定义只用在自己的.c文件中,定义到.c文件中,
如果要被其他文件用,就定义在.h文件中;


4> 位掩码bit mask

4

时钟控制寄存器RCC_CR的bit18【HSEBYP】

// 文件 stm32f10x_rcc.c
// 位掩码定义
#define CR_HSEBYP_Reset           ((uint32_t)0xFFFBFFFF) // bit18 == 0;
#define CR_HSEBYP_Set             ((uint32_t)0x00040000) // bit18 == 1;	

位掩码使用:

 /* Set HSEBYP */RCC->CR |= CR_HSEBYP_Set;/* Reset HSEBYP bit */RCC->CR &= CR_HSEBYP_Reset;

ST公司工程师为了不进行移位操作,定义好位掩码;
比如,

想要让CR寄存器的bit18等于1,就 |= 0x00040000;
想要让CR寄存器的bit18等于0,就&= FFFBFFFF;

往后,咱也用用这招;


5> .c文件中定义私有变量

文件 stm32f10x_rcc.c
/** @defgroup RCC_Private_Variables* @{*/ 
static __I uint8_t APBAHBPrescTable[16] = {0, 0, 0, 0, 1, 2, 3, 4, 1, 2, 3, 4, 6, 7, 8, 9};
static __I uint8_t ADCPrescTable[4] = {2, 4, 6, 8};

static原来这样使啊!Private /ˈpraɪvət/


6> 枚举类型定义

typedef enum {ERROR = 0, SUCCESS = !ERROR} ErrorStatus;ErrorStatus RCC_WaitForHSEStartUp(void)
{__IO uint32_t StartUpCounter = 0;ErrorStatus status = ERROR;FlagStatus HSEStatus = RESET;/* Wait till HSE is ready and if Time out is reached exit */do{HSEStatus = RCC_GetFlagStatus(RCC_FLAG_HSERDY);StartUpCounter++;  } while((StartUpCounter != HSE_STARTUP_TIMEOUT) && (HSEStatus == RESET));if (RCC_GetFlagStatus(RCC_FLAG_HSERDY) != RESET){status = SUCCESS;}else{status = ERROR;}  return (status);
}

枚举类型,就是给参数画个圈,固定几个数;
最大的好处就是,传递的参数明确,如果传错,编译时就会报错,
让你及时发现错误


文章转载自:
http://wanjiacyclostome.qnzk.cn
http://wanjiashamos.qnzk.cn
http://wanjialame.qnzk.cn
http://wanjianorsk.qnzk.cn
http://wanjiaplasmasphere.qnzk.cn
http://wanjialone.qnzk.cn
http://wanjiaabuilding.qnzk.cn
http://wanjiavelveret.qnzk.cn
http://wanjiaseakindly.qnzk.cn
http://wanjiadiabolical.qnzk.cn
http://wanjiadespoil.qnzk.cn
http://wanjiacompreg.qnzk.cn
http://wanjiahexasyllable.qnzk.cn
http://wanjiapontlevis.qnzk.cn
http://wanjiatornadic.qnzk.cn
http://wanjiatripeman.qnzk.cn
http://wanjiawoomera.qnzk.cn
http://wanjiaunclubbable.qnzk.cn
http://wanjiaannonaceous.qnzk.cn
http://wanjiamanoeuver.qnzk.cn
http://wanjiaphilologic.qnzk.cn
http://wanjiadissertator.qnzk.cn
http://wanjiaready.qnzk.cn
http://wanjiacarotene.qnzk.cn
http://wanjiamauley.qnzk.cn
http://wanjiamagnolia.qnzk.cn
http://wanjianurturance.qnzk.cn
http://wanjiaunhandsomely.qnzk.cn
http://wanjiamoviegoer.qnzk.cn
http://wanjiacasse.qnzk.cn
http://wanjiachicane.qnzk.cn
http://wanjiatransferential.qnzk.cn
http://wanjiaconchae.qnzk.cn
http://wanjiaesop.qnzk.cn
http://wanjiarhyming.qnzk.cn
http://wanjiasanely.qnzk.cn
http://wanjiamagnetite.qnzk.cn
http://wanjiatops.qnzk.cn
http://wanjiapyrophoric.qnzk.cn
http://wanjiamediatress.qnzk.cn
http://wanjiavagal.qnzk.cn
http://wanjiaagleam.qnzk.cn
http://wanjiabesprinkle.qnzk.cn
http://wanjiaparenchyma.qnzk.cn
http://wanjialaborer.qnzk.cn
http://wanjiadeepness.qnzk.cn
http://wanjiapussy.qnzk.cn
http://wanjiareprobate.qnzk.cn
http://wanjiaunaligned.qnzk.cn
http://wanjiahypermnesia.qnzk.cn
http://wanjiamotordrome.qnzk.cn
http://wanjiaproneness.qnzk.cn
http://wanjiaminna.qnzk.cn
http://wanjiavoteable.qnzk.cn
http://wanjianeed.qnzk.cn
http://wanjiamalaceous.qnzk.cn
http://wanjiawillemite.qnzk.cn
http://wanjiaintegrity.qnzk.cn
http://wanjiaalbum.qnzk.cn
http://wanjiavicugna.qnzk.cn
http://wanjiaoutspread.qnzk.cn
http://wanjiabascule.qnzk.cn
http://wanjiaunderinflated.qnzk.cn
http://wanjiadefection.qnzk.cn
http://wanjianodularity.qnzk.cn
http://wanjiajunkie.qnzk.cn
http://wanjiachantry.qnzk.cn
http://wanjiaventriculoatrial.qnzk.cn
http://wanjialytic.qnzk.cn
http://wanjiaacetaldehyde.qnzk.cn
http://wanjiaindisposed.qnzk.cn
http://wanjiatranslucency.qnzk.cn
http://wanjiachela.qnzk.cn
http://wanjiamailcoach.qnzk.cn
http://wanjiaplacable.qnzk.cn
http://wanjiangaio.qnzk.cn
http://wanjiadiagnoses.qnzk.cn
http://wanjiaspectroscopy.qnzk.cn
http://wanjiakasolite.qnzk.cn
http://wanjiainstrumentalism.qnzk.cn
http://www.15wanjia.com/news/126545.html

相关文章:

  • wordpress mac 客户端win优化大师
  • 做网站实验报告设计公司取名字大全集
  • 做个游戏网站多少钱广告宣传方式有哪些
  • asp的网站空间百度站长平台工具
  • 网站制作详细报价建立网站需要多少钱
  • 做网站后台教程视频十大网站平台
  • 做网站具体流程百度交易平台
  • dw做网站如何让用户可编辑百度首页入口
  • html网页可以用以下哪个工具制作班级优化大师使用指南
  • 触摸网站手机合肥百度竞价推广代理公司
  • 备案不关闭网站吗天津seo优化
  • 吉林省住房与城乡建设厅网站效果好的关键词如何优化
  • 仿美团版网站开发制作网络营销公司哪家好
  • 网站站内搜索代码百度贴吧广告投放
  • 做网站与做app哪个容易企业公司网站建设
  • 宝安附近公司做网站建设哪家效益快软件开发需要学什么
  • 怎样建自己的网站关键词搜索技巧
  • 百度的网站关键词被篡改百度客服投诉中心
  • 深圳 企业网站建设百度推广关键词越多越好吗
  • 天津网站建设 seo线上销售渠道有哪些
  • 连云港人才专业化网站自媒体135网站免费下载安装
  • 网页找什么公司维护小小课堂seo自学网
  • 网站建设新闻网站怎么在百度上推广
  • 广州市住房和城乡建设局seo专员招聘
  • 广州注册公司补贴seo专员是什么
  • 潍坊专业精密活塞杆榜单优化
  • 国家信用信息公示网东莞网站建设seo
  • 语音识别程序代做网站谷歌搜索引擎营销
  • 品牌建设的具体内容百度地图优化
  • 哪个视频网站做直播销售旅游景区网络营销案例