学习目标:
学会用USART1_RX/PA10接收电脑端发来的数据,以及USART1_TX/PA9单片机向电脑端发送数据。 附上管脚定义图
实现步骤:
1.在usart1.c文件中定义:
GPIO_InitStructure.GPIO_Pin=GPIO_Pin_9;
GPIO_InitStructure.GPIO_Speed=GPIO_Speed_50MHZ ; //定义接收的速率
GPIO_InitStructure.GPIO_Mode=GPIO_Mode_AF_PP ; //设置模式
GPIO_Init(GPIOA,&GPIO_InitStructure);//A组管脚
GPIO_InitStructure.GPIO_Pin=GPIO_Pin_10;
GPIO_InitStructure.GPIO_Mode=GPIO_Mode_IN_FLOATING ;
GPIO_Init(GPIOA,&GPIO_InitStructure);
2.在usart1.h中:
#define EN_USART1 1 //使用串口1 1为使用 0为禁止
#define EN_USART2 0
#DEFINE EN_USART3 0
3.在main.c文件中:
USART1_Init(115200);//串口初始化 115200为波特率
方法一:
USART_SendData(USART1,OX55) ;//OX55为你要发送的数据的16进制
while(USART_GetFlagStatus(USART1,USART1_FLAG_TC)==RESET);
//用USART_GetFlagStatus方法循环判断线程1的发送完成标志位,当发送完即为0的时候发送数据
方法二:直接用printf
printf(“%c:led on!”,0x55);//0x55可以替换为变量
学习链接:
链接:https://pan.baidu.com/s/1yKxKm_8jdBH2qsK42iuvIg
提取码:htm6
学习建议:
希望各位uu不要直接复制粘贴上面的代码,是肯定会报错的,因为我只记录了一些重点,完整的代码示例在网盘里也有。我和大家一样是个学习者,怕什么真理无穷,进一寸有一寸的欢喜!
ps(谢谢观看,可以的话能一键三连嘛)