1 / 38
文档名称:

stm32各模块函数写法模版(基于v3.5固件库).docx

格式:docx   大小:62KB   页数:38页
下载后只包含 1 个 DOCX 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

stm32各模块函数写法模版(基于v3.5固件库).docx

上传人:aisheng191 2018/11/6 文件大小:62 KB

下载得到文件列表

stm32各模块函数写法模版(基于v3.5固件库).docx

相关文档

文档介绍

文档介绍:STM32 学****笔记
GPIO 口
GPIO 初始化
voidGPIO_Configuration(void)
{
GPIO_InitTypeDefGPIO_InitStructure;// 声明结构体
打开
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA, ENABLE);// 功能时钟 (再写这句程序的时候,必须进
行时钟系统初始化的操作 )。

 = GPIO_Pin_4 | GPIO_Pin_5 | GPIO_Pin_6 | GPIO_Pin_7;// 明操作对象引脚
 = GPIO_Speed_50MHz;//设置 IO 口时钟为 50MHz/10MHz/2MHz
 = GPIO_Mode_Out_PP;//设置推挽输出
/*GPIO_Mode_AIN 模拟输入
GPIO_Mode_IN_FLOATING浮空输入(一般为中断所使用) 。
GPIO_Mode_IPD下拉输入
GPIO_Mode_IPU上拉输入
GPIO_Mode_Out_OD 开漏输出
GPIO_Mode_Out_PP推挽输出
GPIO_Mode_AF_OD复用开漏输出
GPIO_Mode_AF_PP复用推挽输出 */ ( 一般用在点灯 )。
GPIO_Init(GPIOA, &GPIO_InitStructure); // 执行初始化 IO 口
}
GPIO 常用函数

GPIO_SetBits(GPIOA, GPIO_Pin_4 | GPIO_Pin_5 | GPIO_Pin_6 | GPIO_Pin_7);//高 IO 口

GPIO_ResetBits(GPIOA,GPIO_Pin_4 | GPIO_Pin_5 | GPIO_Pin_6 | GPIO_Pin_7);//低 IO 口

GPIO_WriteBit(GPIOA, GPIO_Pin_4, (BitAction)(1 - GPIO_ReadOutputDataBit(GPIOA, GPIO_Pin_4)));//转 IO 口
GPIOA->ODR = 0X0010 ;//IO口直接赋值语句

GPIO_ReadInputDataBit(GPIOA,GPIO_Pin_3)( 取该口的电压值,相当于 AVR的 pin)。若 IO 口为高电平,则
这个函数返回为 1,为低电平时返回为 0.
SysTick系统时钟
SysTick 配置函数
if (SysTick_Config(SystemCoreClock / 3000))//配置时钟的频率 ,改变数字可改变频率,数字越大频率越快
{
/* Capture error */
while (1);
}
EXTI中断
外部中断
外部中断 IO 口设置
voidGPIO_EXTI_Configuration(void)
{
使能时
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOC|RCC_APB2Periph_GPIOD, ENABLE);// 钟
使能
RCC_APB2PeriphClockCmd(RCC_APB2Periph_AFIO, ENABLE);// 复用 IO 时钟
GPIO_InitTypeDefGPIO_InitStructure;// 声明 IO 口初始化结构体
 = GPIO_Pin_6;//指定  为操作对象

 = GPIO_Mode_IN_FLOATING;// 置模式为浮空输入
GPIO_Init(GPIOC, &GPIO_InitStructure);//初始化 IO 口
 = GPIO_Pin_13|GPIO_Pin_14;//指定 ,14 为操作对象

 = GPIO_Mode_IN_FLOATING;// 置模式为浮空输入
GPIO_Init(GPIOD, &GPIO_InitStructure);//初始化 IO 口

GPIO_EXTILineConfig(GPIO_PortSourceGPIOC, GPIO_PinSource6); //

GPIO_EXTILi