STM32串口通讯

本文介绍了STM32串口通讯的流程,包括基于寄存器和固件库的区别,以及在Ubuntu系统和Keil环境中进行STM32编程的步骤。通过示例展示了全局变量、局部变量、堆和栈在C语言程序中的应用。
摘要由CSDN通过智能技术生成

STM32串口通讯

基于寄存器与基于固件库编写的差异

固件库就是函数的集合,固件库函数的作用就是:向下负责与寄存器直接打交道,向上提供用户函数调用的接口(API)。对于STM32这种级别的MCU,数百个寄存器记起来何谈容易,于是推出了官方固件库,固件库将这些寄存器底层操作都封装起来,提供一套API供开发者使用。

STM32的USART窗口通讯

1.安装驱动
在这里插入图片描述
2.串口下载助手mcuisp
在这里插入图片描述
3.配置mcuisp
在这里插入图片描述
4.打开keil工程
在这里插入图片描述
5.对程序代码进行修改

将stm32f10x_it.c文件的串口中断服务函数部分修改:

int i=0;
uint8_t ucTemp[50];
void DEBUG_USART_IRQHandler(void)
{
   
	if(USART_GetITStatus(DEBUG_USARTx,USART_IT_RXNE)!=RESET)
	{
   
		ucTemp[i] = USART_ReceiveData(USART1);	
	}
  if(ucTemp[i] == '!')
	{
   
		if(ucTemp[i-1] == '2'&&ucTemp[i-2] == '3'&&ucTemp[i-3] == 'm'&&ucTemp[i-4] == 't'&&ucTemp[i-5] == 's'&&ucTemp[i-6] == ' ')
			if(ucTemp
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值