历史上的今天
今天是:2024年09月24日(星期二)
2019年09月24日 | STM32F1系列——固件库函数使用手册摘要
2019-09-24 来源:eefocus
命名
1.缩写

2.函数命名
固态函数库遵从以下命名规则 PPP表示任一外设缩写,例如:ADC。
更多缩写相关信息参阅章节1.1 缩写系统、源程序文件和头文件命名都以“stm32f10x_”作为开头,例如:stm32f10x_conf.h。
常量仅被应用于一个文件的,定义于该文件中;被应用于多个文件的,在对应头文件中定义。所有常量都由英文字母大写书写。
寄存器作为常量处理。他们的命名都由英文字母大写书写。在大多数情况下,他们采用与缩写规范与本用户手册一致。
外设函数的命名以该外设的缩写加下划线为开头。每个单词的第一个字母都由英文字母大写书写,例如:SPI_SendData。在函数名中,只允许存在一个下划线,用以分隔外设缩写和函数名的其它部分。
名为PPP_Init的函数,其功能是根据PPP_InitTypeDef中指定的参数,初始化外设PPP,例如TIM_Init.
名为PPP_DeInit的函数,其功能为复位外设PPP的所有寄存器至缺省值,例如TIM_DeInit.
名为PPP_StructInit的函数,其功能为通过设置PPP_InitTypeDef 结构中的各种参数来定义外设的功能,例如:USART_StructInit .
名为PPP_Cmd的函数,其功能为使能或者失能外设PPP,例如: SPI_Cmd.
名为PPP_DMAConfig的函数,其功能为使能或者失能外设PPP的DMA接口,例如:TIM1_DMAConfig.
用以配置外设功能的函数,总是以字符串“Config”结尾,例如GPIO_PinRemapConfig.
名为PPP_GetFlagStatus的函数,其功能为检查外设PPP某标志位被设置与否,例如:I2C_GetFlagStatus.
名为PPP_ClearFlag的函数,其功能为清除外设PPP标志位,例如:I2C_ClearFlag. 名为PPP_GetITStatus的函数,其功能为判断来自外设PPP的中断发生与否,例如:I2C_GetITStatus.
名为PPP_ClearITPendingBit的函数,其功能为清除外设PPP中断待处理标志位,例如: I2C_ClearITPendingBit.
数据类型(定义于stm32f10x_type.h)
1.基本类型
typedef signed long s32;
typedef signed short s16;
typedef signed char s8;
typedef unsigned long u32;
typedef unsigned short u16;
typedef unsigned char u8;
//volatile声明在最前面加v,const声明在数字前加c
//例如vsc32,vuc8
2.布尔类型
typedef enum{FALSE = 0, TRUE = !FALSE } bool;
3.状态标志位类型
我们定义标志位类型(FlagStatus type)的2个可能值为“设置”与“重置”(SET or RESET)。
typedef enum { RESET = 0, SET = !RESET } FlagStatus;
4.功能状态类型
我们定义功能状态类型(FunctionalState type)的2个可能值为“使能”与“失能”(ENABLE or DISABLE)。
typedef enum { DISABLE = 0, ENABLE = !DISABLE } FunctionalState;
5.错误状态类型
我们定义错误状态类型类型(ErrorStatus type)的2个可能值为“成功”与“出错”(SUCCESS or ERROR)。
typedef enum { ERROR = 0, SUCCESS = !ERROR } ErrorStatus;
史海拾趣
|
随着人们生活水平的提高和对通讯工具的需要,大部分人都选择用手机做自己最常用的沟通工具,工具多了自然问题也就多了,下面给大家介绍几种使用手机的过程中经常遇到的问题及解决办法。 1.如果手机万一被水淋湿,我们该采取何种保护措施? 在日常 ...… 查看全部问答> |
|
在智能仪表等小型单片机应用系统中,一般采用发光二极管作功能提示,数码管显示数据。随着智能仪表功能的不断扩充和提高,这种显示方式逐渐不能满足需求。为系统添加一片液晶显示器作为显示设备,显然能够很大程度扩展系统功能,提升产品的档次。若 ...… 查看全部问答> |
|
谬误之五:无线系统不可升级 无线网络的升级只有在您选择了错误技术方案的情况下才会成为问题。 对点对点无线现场网络来说,每台设备都必须直接同指定的网关进行通信,所以会受到从设备到网关的传输距离范围以及网关可处理设备数量的限制。这种无 ...… 查看全部问答> |
|
makefile中首先用ccarm -c将一堆.cc文件编译出了一堆.o中间文件 然后又调用ararm将它们做成了一个.a文件 问题是,如何将这个.a文件转换成可以下载到板子上的.o文件呢?… 查看全部问答> |
|
Sep 25 09:50:40 login[45]: Authentication successful for root from 192.168.101.211 Sep 25 09:51:26 pppd[47]: pppd 2.3.8 started by (unknown), uid 0 Sep 25 09:51:27 chat[48]: timeout set to 3 seconds Sep 25 09:51:2 ...… 查看全部问答> |
|
眾所周知,由于单电极芯片封装时对固晶的要求极高,因此在固晶过程中银胶的使用要求也极严格,虽然在生产过程中看不出什麼问题,但是到用户使用过程中会出现死灯等异常情况。所以,固晶银胶的性能会直接影响LED产品的性能,不能忽视。 由于没有较正 ...… 查看全部问答> |
|
ADI DSP BF518开发板交换一块TI原装9B96开发板,开包的也行。 ADI DSP BF518开发板交换一块TI原装9B96开发板,开包的也行。 有意的请联系qq:307799870 板子上带有usb烧写接口。没有仿真器忙调即可。… 查看全部问答> |




