基于STM32的UART串口通信实验
一 串口通信原理:
1.1 本实验实现串口助手发送数据然后回送在串口助手呈现出来。
1.2 实验思路:看懂电路图,理解uart串口通信原理。
1.3 开发环境 : MDK5 库函数版本开发 JLINK仿真
二 实验步骤:
2.1 uart.h代码:
#ifndef __USART_H
#define __USART_H
#include "stdio.h"
#include "sys.h"
#define USART_REC_LEN 200 //定义最大接收字节数 200
#define EN_USART1_RX 1 //使能(1)/禁止(0)串口1接收
extern u16 USART_TX_BUF[16];
extern u8 USART_RX_BUF[USART_REC_LEN]; //接收缓冲,最大USART_REC_LEN个字节.末字节为换行符
extern u16 USART_RX_STA; //接收状态标记
void uart_init(u32 bound);
#endif
2.2 uart.c代码(UART串口配置及中断服务程序):
#include "sys.h"
#include "usart.h"
#if 1
#pragma import(__use_no_semihosting) //标准库需要的支持函数
struct __FILE
{
int handle;
};
FILE __stdout;
_sys_exit(int x) // 以避免使用半主机模式
{
x = x;
}
int