uart通信程序_中断方法

uart通信程序_中断方法

ID:19547886

大小:412.50 KB

页数:13页

时间:2018-10-03

uart通信程序_中断方法_第1页
uart通信程序_中断方法_第2页
uart通信程序_中断方法_第3页
uart通信程序_中断方法_第4页
uart通信程序_中断方法_第5页
资源描述:

《uart通信程序_中断方法》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、UART通信程序中断实现方法——发送中断与接收中断声明:本文著作权归电子科技大学中山学院嵌入式系统实验室所有著作人:邓春健UART通信程序——发送中断程序回忆:P297页使用查询方式从串口发送多个字节数据char*str=“helloworld”;for(i=0;i<=9;i++)UART0_SendByte(str[i]);voidUART0_SendByte(uint8dat){U0THR=dat;while((U0LSR&0x40)==0);}主函数uint8SEND_STRING[]="HelloWorld!r

2、n";uint8*str;intmain(void){IRQEnable();UART0_Init();UART0_INT_Init();str=SEND_STRING;UART0_SendByte(*str++);while(1);return(0);}通信参数设置voidUART0_Init(void){uint16Fdiv;PINSEL0=0x00000005;U0LCR=0x83;Fdiv=(Fpclk/16)/9600;U0DLM=Fdiv/256;U0DLL=Fdiv%256;U0LCR=0x03;}UART中

3、断设置voidUART0_INT_Init(void){U0IER=2;U0FCR=1;VICIntSelect=0;VICVectCntl0=0x20

4、6;VICVectAddr0=(int)UART0_ISR;VICIntEnable=1<<6;}UART中断服务程序void__irqUART0_ISR(){intint_flag;int_flag=U0IIR&0x0f;if(int_flag==2){if(*str==‘’)str=SEND_STRING;UART0_SendByte(*str++);}VICVe

5、ctAddr=0;}voidUART0_SendByte(uint8data){U0THR=data;}UART通信程序——发送接收中断程序要求:1.PC和ARM通信,当PC发送10个数据给ARM后,ARM将这10个数据返回给PC2.要求在发送和接收程序都使用中断方法主函数uint8rebuf[20];intre_pointer=0;intsend_pointer=0;intmain(void){IRQEnable();UART0_Init();UART0_INT_Init();while(1);return(0);}通信

6、参数设置voidUART0_Init(void){uint16Fdiv;PINSEL0=0x00000005;U0LCR=0x83;Fdiv=(Fpclk/16)/9600;U0DLM=Fdiv/256;U0DLL=Fdiv%256;U0LCR=0x03;}UART中断设置voidUART0_INT_Init(void){U0IER=3;U0FCR=1;VICIntSelect=0;VICVectCntl0=0x20

7、6;VICVectAddr0=(int)UART0_ISR;VICIntEnable=1<<6;}void

8、__irqUART0_ISR(){intint_flag;int_flag=U0IIR&0x0f;if(int_flag==2){if(send_pointer<=10){send_pointer++;UART0_SendByte(rebuf[send_pointer]);}else{send_pointer=0;}}if(int_flag==4){rebuf[re_pointer]=U0RBR;re_pointer++;if(re_pointer>=10){UART0_SendByte(rebuf[0]);re_poin

9、ter=0;}}VICVectAddr=0;}

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。