首页/文章/ 详情

嵌入式学习(一)—STM32固件库介绍

1年前浏览186

STM32利用库函数编程


库函数是STM32生产厂家封装好的函数库,方便用户编程。


下面举个栗子:

以USART 库函数为例;


USART库函数包括三种初始化函数,

1—缺省值初始化;

2—普通初始化;

3—结构体类初始化;

一般情况下,我们选择第三种初始化方式。


第三种方法配置步骤如下:

第一步:配置使能位(包括波特率,数据位,停止位,校验位)

先定义一个结构体变量:

------------------------------------------------------------------------------

USART_InitTypeDef   USART_InitStructure  ,

然后根据该结构体的相关配置参数,配置实际需要的参数。

USART_InitStructure.USART_BaudRate = 9600;         //波特率设置为9600

USART_InitStructure.USART_WordLength = USART_WordLength_8b;        //数据长度为8位

USART_InitStructure.USART_StopBits = USART_StopBits_1;                       //1位停止位

USART_InitStructure.USART_Parity = USART_Parity_No;                              //无奇偶校验位

USART_InitStructure.USART_HardwareFlowControl = USART_HardwareFlowControl_None;   //关闭数据流控制

USART_InitStructure.USART_Mode = USART_Mode_Tx | USART_Mode_Rx ;       //收发模式任选

USART_Init(USART1, &USART_InitStructure);                                                  //给结构体成员赋值

 USART_Cmd(USART1 ,ENABLE);                                   //USART1使能

----------------------------------------------------------------------------


第二步:配置好了USART1的功能,下面可以调用这个函数,进行发送并在USART1#窗口中显示

-----------------------------------------------------------------------------

u8 i ,data = 'A';     //定义变量

//利用for循环,显示连续20个字符

for(i=0;i<20;i++)

 {

  USART_SendData(USART1,data);

  data++;

  while( USART_GetFlagStatus(USART1,USART_FLAG_TC) == RESET) ; ;  //判断USART_SR寄存器中TXE/TC 位

 }

----------------------------------------------------------------------------

此时,可以编译增加的这部分程序,编译成功后,然后进行Debug。

来源:不懂幽默的秦二
控制
著作权归作者所有,欢迎分享,未经许可,不得转载
首次发布时间:2023-06-20
最近编辑:1年前
点墨设计
本科 | 高级硬件工程... 十年饮冰,难凉热血!
获赞 0粉丝 6文章 48课程 0
点赞
收藏
未登录
还没有评论
课程
培训
服务
行家
VIP会员 学习 福利任务 兑换礼品
下载APP
联系我们
帮助与反馈