收藏 分销(赏)

UART串口通讯(中断).ppt

上传人:s4****5z 文档编号:10391336 上传时间:2025-05-26 格式:PPT 页数:9 大小:289KB
下载 相关 举报
UART串口通讯(中断).ppt_第1页
第1页 / 共9页
UART串口通讯(中断).ppt_第2页
第2页 / 共9页
点击查看更多>>
资源描述
单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,UART,串口通讯,中断方式,LPC21XX,串口通讯,移位寄存器,UnRSR,接收缓冲寄存器,UnRBR,UARTn,接收单元,RxDn,除数锁存寄存器,UnDLL,、,UnDLM,UARTn,波特率发生器,UARTn,控制寄存器(,UnLCR,),FIFO,控制寄存器,(UnFCR),UARTn,状态寄存器(,UnLSR,),中断,中断使能寄存器,UnIER,中断标志寄存器,UnIIR,UARTn,高速缓存寄存器,UnSCR,发送缓冲寄存器,UnTHR,UARTn,发送单元,TxDn,移位寄存器,UnTSR,MODEM,Modem,控制寄存器,U1MCR,Modem,状态寄存器,U1MSR,CTS,DSR,DCD,DTR,RI,RTS,V,P,B,总,线,UART,结构图,UART0,、,UART1,各含有,1,个,16,字节的接收,FIFO,缓冲区。,软件设置接收,FIFO,缓冲区的触发字节。,UART FIFO,控制寄存器,位,7,6,5:3,2,1,0,功能,Rx,触发点设置,复位,TxFIFO,复位,RxFIFO,使能,FIFO,接收,FIFO,UnRSR,UnRBR,UnFCR,UART,接收,FIFO,缓冲区,00,:,1,字节,01,:,4,字节,10,:,8,字节,11,:,14,字节,UART0,、,UART1,各含有,1,个,16,字节的发送,FIFO,缓冲区。,UnTHR,是,UARTn,发送,FIFO,的最高字节。,UART,的发送,FIFO,是一直使能的。,发送,FIFO,UnTHR,UnTSR,UART,发送,FIFO,缓冲区,UART,线状态寄存器,位,7,6,5,4,3,2,1,0,功能,RXFE,TEMT,THRE,BI,FE,PE,OE,RDR,RxFIFO,错误,发送器空,发送保持寄存器空,间隔中断,帧错误,奇偶错误,溢出错误,接收数据就绪,UART,线状态寄存器,UnLSR,线状态寄存器(,UnLSR,)为只读寄存器,它提供,UARTn,发送和接收模块的状态信息,。,中断方式,UART0,初始化,void UART0_Ini(void),uint16 Fdiv;,PINSEL0=(PINSEL0,/,只修改,P0.0,和,P0.1,连接到,UART0,,教材,P174,表,4.53,U0LCR=0 x83;,/DLAB=1,,允许设置波特率,教材,P288,Fdiv=(Fpclk/16)/UART_BPS;/,设置波特率,U0DLM=Fdiv/256;/,教材,P283,U0DLL=Fdiv%256;,U0LCR=0 x03;/8,位数据位,,1,位停止位,无奇偶校验,U0FCR=0 x0C7;/,使能和复位,TX,和,RX FIFO,Rx,触发点为,14,字节,U0IER=0X05;/RBR,、,Rx,线状态 中断使能,THRE,中断禁止,,P284,VICIntSelect|=16;/,选择,UART0,为,IRQ,VICIntEnable=16;/,允许,UART0,中断,VICVectCntl15=0 x20|6;,VICVectAddr15=(int)UART0_IRQHandler;,中断服务函数,void UART0_IRQHandler(void),int i;,switch(U0IIR&0 x0f),case 0 x04:/RxFIFO,达到,14,字节,for(i=0;i0;i-)if(TxdP=TxdL)break;/,发送字符完,else U0THR=TxdBufTxdP+;break;,case 0 x06:/,状态中断,RcvL=U0LSR;/,读状态,清除错误标志,RcvP=RcvL=TxdP=RxdL=0;break;,演示程序,int main(void),uint8 RcvP=0,RcvL=0,TxdP=0,RxdL=0;,char RcvBuf256,Txdbuf256;,int i=0;,UART0_Ini();,while(1),if(RcvL!=0)/,接收到完整数据包,for(i=16;i0;i-)if(TxdP=TxdL)break;/,发送字符完,else U0THR=TxdBufTxdP+;,U0IER=0X07;/THRE,中断使能,RcvL=0;/,结束处理,/,其它主程序处理,return(0);,练习,通过,PC,串口助手或其它串口工具发送字符串,将该字符串前面添加响应字符“,”,,字符串后添加结束字符“,#”,,然后传送回,PC,比如接收到包“,This is a test string!”,,则返回字符串“,This is a test string!#”,该练习主要锻炼中断发送接收程序设计,以及通过接收超时区分数据包间隔,课后编写,MODBUS RTU,协议的,3,号从协议功能,下次课堂测试该功能。,
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传
相似文档                                   自信AI助手自信AI助手

当前位置:首页 > 百科休闲 > 社会民生

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:4009-655-100  投诉/维权电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服