单片机与GSM连接程序代码中串口中断子程序什么意思,麻烦详细解答下

单片机与GSM连接程序代码中串口中断子程序什么意思,麻烦详细解答下,第1张

将接收到铅岩的数据存储在数组aa[]中,每进入一次中断,接收一个字节数据。

j是数组下标,在主程序中需要接收数据前清零毕激枝。给你手敏个示例程序吧

if(Usart1_DataCnt >= 8) //接收到8个字节数据

{

Usart1_RXDataTimeCnt = 0

Usart1_DataCnt = 0

SMS_MobileAsked()

}

Usart1_DataCnt表示接收数据计数,相当于你的j。这段程序位于主程序循环体中。

流程是:(主程序中)发送拿棚数据―等待中断―发送成功产生中断―进入中断滚或清除TL,再次发送消备则―中断返回―等待中断―发送成功产生中断―进入中断清除TL,再次发送。。。。循环而已。

当出现以下任一情况,中断响应受阻,也就是不会进入中断程序

1)同级或高级的中断服务正在进行;

2)当前轿腔渣的机器周期还不是当前指令的最后一个周期,指令执行完之前,不会响应任何中断请求;

3)正在执行RETI或对IE、IP进行读写 *** 作,至少要执圆键行一条其它指令才会响应;

在每个机器周期的s5p2期间,cpu对中断源依次采样,若遇到上述情况,会把中断请求锁存在各自的中断标志位中,等下一个机器周期再按顺序查询。也就是同级中断不会被打断,在这里TI已经被清零,这个中断退出后不会再响应了

还有点小问题,中断程序一开始应该执行一个if(RI)条件判断,要不然可能会读入垃闭悄圾数据


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12432974.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-25
下一篇 2023-05-25

发表评论

登录后才能评论

评论列表(0条)

保存