共4条
1/1 1 跳转至页
关于串口通信中断发送程序的问题?
当主程序中设置中断标志,即IFG2|=UTXIFG1.程序进入发送中断程序,如下:
interrupt[UART1TX_VECTOR] void UART1_TX_ISR(void)
{
if(nTX1_Len!=0)
{ //表示缓冲区里的数据没有发送完
nTX1_Flag=0;
TXBUF1=UART1_TX_BUF[nSend_TX1];
nSend_TX1+=1;
if(nSend_TX1>=nTX1_Len)
{
nSend_TX1=0;
nTX1_Len=0;
nTX1_Flag=1;
}
}
}
问题1:这个发送中断是发送一个字符,还是多个字符?(按我的理解是发送一个字符后就跳出中断,但从整个程序的要求来看,是发送多个字符)
问题2:如果是发送多个字符的话,它却没有查询等待的部分,没法保证发送完一个字符后才接着发送下一个字符?
谢谢!
关键词: 关于 串口 通信 中断 发送 程序 问题
2楼
"nSend_TX1>=nTX1_Len",nTX1_Len有多长,这次中断里面就发送多少字节,只有都发送完了,它才会跳出中断
3楼
"nSend_TX1>=nTX1_Len",nTX1_Len有多长,这次中断里面就发送多少字节,只有都发送完了,它才会跳出中断
共4条
1/1 1 跳转至页
回复
有奖活动 | |
---|---|
【有奖活动】分享技术经验,兑换京东卡 | |
话不多说,快进群! | |
请大声喊出:我要开发板! | |
【有奖活动】EEPW网站征稿正在进行时,欢迎踊跃投稿啦 | |
奖!发布技术笔记,技术评测贴换取您心仪的礼品 | |
打赏了!打赏了!打赏了! |
打赏帖 | |
---|---|
vscode+cmake搭建雅特力AT32L021开发环境被打赏30分 | |
【换取逻辑分析仪】自制底板并驱动ArduinoNanoRP2040ConnectLCD扩展板被打赏47分 | |
【分享评测,赢取加热台】RISC-V GCC 内嵌汇编使用被打赏38分 | |
【换取逻辑分析仪】-基于ADI单片机MAX78000的简易MP3音乐播放器被打赏48分 | |
我想要一部加热台+树莓派PICO驱动AHT10被打赏38分 | |
【换取逻辑分析仪】-硬件SPI驱动OLED屏幕被打赏36分 | |
换逻辑分析仪+上下拉与多路选择器被打赏29分 | |
Let'sdo第3期任务合集被打赏50分 | |
换逻辑分析仪+Verilog三态门被打赏27分 | |
换逻辑分析仪+Verilog多输出门被打赏24分 |