Stm32f103vct6在keil mdk 下使用 串口4,5 (UART4,UART5)实例Stm32f103vct6在keil mdk 下使用串口4,5 (UART4,UART5)实例
1 中断向量表应包括UART4,UART5 的中断入口函数名称的定义
STM32F10x.s 该文件不包括UART4,UART5 的中断入口函数名称的定义startup_stm32f10x_cl.s 该文件包括UART4,UART5 的中断入口函数名称的定义,
所以把它加入项目文件里面
2串口初始化UART5 // 注意要用UART5 不是USART5
void uart_init5(u32 pclk1,u32 boun...
Stm32f103vct6在keil mdk 下使用串口4,5 (UART4,UART5)实例
1 中断向量表应包括UART4,UART5 的中断入口函数名称的定义
STM32F10x.s 该文件不包括UART4,UART5 的中断入口函数名称的定义startup_stm32f10x_cl.s 该文件包括UART4,UART5 的中断入口函数名称的定义,
所以把它加入项目文件里面
2串口初始化UART5 // 注意要用UART5 不是USART5
void uart_init5(u32 pclk1,u32 bound)
//串口2,3,4,5 用pclk1 36m 调用格式uart_init5 (36,9600); //9600波特率pclk1 =36m {
float temp;
u16 mantissa;
u16 fraction;
temp=(float)(pclk1*1000000)/(bound*16);//得到USARTDIV
mantissa=temp; //得到整数部分
fraction=(temp-mantissa)*16; //得到小数部分
mantissa<<=4;
mantissa+=fraction;
RCC->APB2ENR|=1<<5; //使能PORTd时钟
RCC->APB2ENR|=1<<4; //使能PORTc时钟
RCC->APB1ENR|=1<<20; //使能串口5时钟20位UART5EN:UART5时钟使能(UART 5 clock enable)
RCC->APB1RSTR|=1<<20; //复位串口5
RCC->APB1RSTR&=~(1<<20);//停止复位
//波特率设置
UART5->BRR=mantissa; // 波特率设置
UART5->CR1|=0X200C; //1位停止,无校验位.
PRxd5_SL; //本人的DEFINE 接收脚输入上拉
PTxd5_out; //本人的DEFINE 发送脚推挽输出
PTxd5_1; //本人的DEFINE 发送脚输出1
UART5->CR1|=1<<8; //PE中断使能
UART5->CR1|=1<<5; //接收缓冲区非空中断使能
MY_NVIC_Init(3,3,UART5_IRQChannel,2);//抢占优先级是3 响应优先级是3 组2,最低优先级
}
3接收中断服务函数
void UART5_IRQHandler(void) // 注意要用UART5 不是USART5
// UART5_IRQHandler 注意函数名不要写错
{
u8 data;
if(UART5->SR&(1<<5))//接收到数据
{
data=UART5->DR;
BufRxdBenq[QHead++]=data; //把数据放入先进先出缓冲区
if(QHead>=BUF_RXD_BENQ_MAX) //满了从0开始
QHead=0;
if(QHead==QTail)
{
QTail++;
if(QTail>=BUF_RXD_BENQ_MAX) //满了从0开始
QTail=0;
}
CntRxdBenqFree=0; //232接收忙计数器
if(data==0x0a||data==0X7E) //收到一条指令的结束标志{
BRxdBenq0x0d=1; //置位
}
}
}
4发送函数
void SendByte5( unsigned char c_byte )//发送给模块gsm
{
UART5->DR=c_byte;
while((UART5->SR&0X40)==0);//等待发送结束
}
本文档为【Stm32f103vct6在keil mdk 下使用 串口4,5 (UART4,UART5)实例】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑,
图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。