久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 2010|回復: 8
打印 上一主題 下一主題
收起左側

請教單片機串口通訊問題,最后置標志位語句不是每次都能執行

[復制鏈接]
跳轉到指定樓層
樓主
ID:565803 發表于 2019-6-18 16:03 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式

用C8051F410, 需要從串口接收兩個字節,收到后置標志位,程序如下

vvoid comm0_rx(void) interrupt 4   

{

        m=0;

  while(m<2)

   {

          if(RI0)                  

         {

            RI0=0;                  

            recdata[m]=SBUF0;

           m++;

         }

     }

        

              m=0;

       while(m<2)               

           {

                  SBUF0=recdata[m];

                    while(!TI0);           

                    TI0=0;               

                   m++;

           }

            flag0=1;        

            flag1=1;        

           ES0=0;                 

}

     程序運行后,接收及發送都沒問題,但就是最后置標志位語句不是每次都能執行,偶爾接收一次就能執行,大多數要接收好幾次才能置位(次數不定)。開始時接收和發送是在一起,后來分開,甚至置位語句放在接收與發送之間也沒用。哪位大俠遇到過這種問題?

   

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復

使用道具 舉報

沙發
ID:94031 發表于 2019-6-19 08:14 | 只看該作者
不能把中斷處理程序搞得這么復雜,會影響串口接收的,中斷里設標志,復雜處理中斷外執行。
回復

使用道具 舉報

板凳
ID:10947 發表于 2019-6-19 10:14 | 只看該作者
因為你有好幾個判斷,滿足了判斷條件才會執行到最后,間隔時間相對來說很長了
回復

使用道具 舉報

地板
ID:565803 發表于 2019-6-19 10:26 | 只看該作者
xuyaqi 發表于 2019-6-19 08:14
不能把中斷處理程序搞得這么復雜,會影響串口接收的,中斷里設標志,復雜處理中斷外執行。

已經盡力精簡了,收到數據后置標志位,然后禁止串口通信,主程序執行完相應的任務后再重開串口
回復

使用道具 舉報

5#
ID:565803 發表于 2019-6-19 10:29 | 只看該作者
xuyaqi 發表于 2019-6-19 08:14
不能把中斷處理程序搞得這么復雜,會影響串口接收的,中斷里設標志,復雜處理中斷外執行。

不管中斷程序效率如何,總不能漏掉語句吧,這才是我不理解的地方
回復

使用道具 舉報

6#
ID:94031 發表于 2019-6-19 11:07 | 只看該作者
liuzanshui 發表于 2019-6-19 10:26
已經盡力精簡了,收到數據后置標志位,然后禁止串口通信,主程序執行完相應的任務后再重開串口

“收到數據后置標志位,然后禁止串口通信”怎么能禁止串口通信,對方發送你不是漏掉了嘛,你應該在接收中斷里照章全收,在中斷外處理這樣才不會漏數據。
回復

使用道具 舉報

7#
ID:565803 發表于 2019-6-19 13:20 | 只看該作者
xuyaqi 發表于 2019-6-19 11:07
“收到數據后置標志位,然后禁止串口通信”怎么能禁止串口通信,對方發送你不是漏掉了嘛,你應該在接收中 ...

開始是將ES0=0語句放在中斷外,現在放在中斷的結尾,結果都一樣。我是先接收和發送完數據,退出中斷前禁止串口
回復

使用道具 舉報

8#
ID:123289 發表于 2019-6-19 15:50 | 只看該作者
你能照著沙發的意義去做,腦子就夠用了。
你自己把你現在的程序畫成流程圖看看,走得通走不通?
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 一区二区欧美在线 | 亚洲综合久久网 | 国产乱码精品一区二区三区五月婷 | 欧美日韩一区二区在线观看 | 成人在线免费观看视频 | av中文字幕在线 | 美美女高清毛片视频免费观看 | 日韩在线视频精品 | 国产精品久久欧美久久一区 | 中国美女一级黄色片 | 午夜视频一区二区三区 | 午夜亚洲 | 国产 欧美 日韩 一区 | 天堂久久av| 国产小视频精品 | 国产日韩精品视频 | av黄色在线 | 免费看的黄网站 | 久久久做 | 成人精品鲁一区一区二区 | 视频一区二区在线观看 | 亚洲一区二区中文字幕 | 亚洲精品成人在线 | 成人蜜桃av | 97中文视频 | 精品国产一区二区三区性色av | 久久精品国产99国产精品亚洲 | 久久久精 | 国产在线www | 伊人网在线播放 | 亚洲综合视频 | 激情欧美日韩一区二区 | 一级黄色裸片 | 成人一级片在线观看 | 日韩在线视频一区 | 国产成人免费视频网站视频社区 | 国产精品一区二区三区在线 | 三级成人片 | 日韩一区二区三区精品 | 天天拍天天操 | 亚洲日本中文 |