欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

 找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開始

搜索
查看: 4469|回復(fù): 4
收起左側(cè)

關(guān)于51單片機(jī)串口中斷的問(wèn)題 RI TI寄存器設(shè)置

[復(fù)制鏈接]
ID:798835 發(fā)表于 2020-7-7 09:19 | 顯示全部樓層 |閱讀模式
各位大佬好,我是新人
最近學(xué)51單片機(jī)有一個(gè)問(wèn)題一直困惑著我,就是關(guān)于串口中斷函數(shù)何時(shí)進(jìn)入的問(wèn)題,如下面代碼
  1. void Usart() interrupt 4
  2. {
  3.         u8 receiveData;

  4.         receiveData=SBUF;
  5.         RI = 0;
  6.         SBUF=receiveData;
  7.         while(!TI);
  8.         TI=0;
  9. }
復(fù)制代碼
上面的串口中斷函數(shù)應(yīng)該是在RI或TI置一的時(shí)候進(jìn)入,上面的中斷函數(shù)初次進(jìn)入是RI=1,但是運(yùn)行到SBUF=receiveData的時(shí)候,此時(shí)TI應(yīng)該置0,等待TI置1,那假如在這個(gè)程序中,TI在中斷程序中變成1,那中斷程序是直接運(yùn)行到末尾還是重新從頭運(yùn)行,畢竟TI=1觸發(fā)了中斷,應(yīng)該重頭再次運(yùn)行。


回復(fù)

使用道具 舉報(bào)

ID:739545 發(fā)表于 2020-7-7 16:03 | 顯示全部樓層
當(dāng)TI=0的時(shí)候一直在while(!Ti中循環(huán)),當(dāng)TI接受結(jié)束或者置1的時(shí)候,直接向下運(yùn)行,把TI重新復(fù)位TI=1,在中斷中運(yùn)行的時(shí)候不會(huì)二次觸發(fā)中斷,除非有其他優(yōu)先級(jí)更高的中斷進(jìn)行觸發(fā)。
回復(fù)

使用道具 舉報(bào)

ID:213173 發(fā)表于 2020-7-7 19:28 | 顯示全部樓層
//收到上位機(jī)一個(gè)字節(jié),MCU硬件自動(dòng)置RI=1,產(chǎn)生中斷請(qǐng)求。
void Usart() interrupt 4 //CPU響應(yīng)中斷請(qǐng)求進(jìn)入中斷
{
        u8 receiveData;       
        receiveData=SBUF;//讀取SBUF寄存器收到的數(shù)據(jù)
        RI = 0;                     //軟件清RI=0
        SBUF=receiveData;//向上位機(jī)發(fā)送收到的數(shù)據(jù)
        while(!TI);      //等待發(fā)送完成        硬件置TI=1
        TI=0;                          //軟件清TI=0
}//收、發(fā)SBUF寄存器是相同地址的兩個(gè)物理寄存器
回復(fù)

使用道具 舉報(bào)

無(wú)效樓層,該帖已經(jīng)被刪除
ID:797834 發(fā)表于 2020-7-7 21:58 | 顯示全部樓層
void Usart() interrupt 4
{
        u8 receiveData;

        receiveData=SBUF;
        RI = 0;
        SBUF=receiveData;
        while(!TI);
        TI=0;
}

哥,你是電子194還是電子192的,大佬!期末指導(dǎo)指導(dǎo)小弟!哥!!!
回復(fù)

使用道具 舉報(bào)

ID:795361 發(fā)表于 2020-7-8 11:45 來(lái)自觸屏版 | 顯示全部樓層
這個(gè)肯定從進(jìn)入中斷開始程序執(zhí)行,這個(gè)是接受到數(shù)據(jù)之后再發(fā)送接收到的數(shù)據(jù)程序
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表