亚洲春色中文字幕久久久-三上亚,一吻二脱三床四吻胸,国产真实伦对白视频全集,在线毛片观看,精品成品入口黄网,国产毛aⅴ片久久久,亚洲AV色香蕉一区二区三区老师,萧皇后A级艳片,色情日本视频更新,99久久亚洲精品日本无码

標題: 51單片機串口查詢法與中斷法 [打印本頁]

作者: 51黑bing    時間: 2016-3-23 00:21
標題: 51單片機串口查詢法與中斷法
假設要發送一組數據   Send[10]
一般采用查詢發送(循環發送)方式:
  1. unsigned char Send[10];                  //發送量
  2. unsigned char i;                               //循環量
  3. for(i=0;i<10;i++)
  4. {
  5.        SBUF= Send[i];                      //發送
  6.        while(TI==0);                         //等待發送完成
  7.        TI=0;                                      //清標志
  8. }

  9. 采用中斷發送方式:
  10. unsigned char Send[10];                 //發送量
  11. unsigned char num;                         //發送數據量
  12. unsigned char *p;                           //發送用指針

  13. //發送時:
  14. num=10;                                        //定義發送數據量
  15. p=&Send ;                                    //取首地址
  16. SBUF=*p;                                    //發送第一個數據,啟動發送中斷
  17. //中斷代碼:
  18. void ComInt() interrupt 4
  19. {
  20.        if(RI)  RI=0;                          //接收中斷略;
  21.      
  22.        if(TI)                                     //發送中斷處理
  23.        {
  24.               TI=0;                             //清標志
  25.               num--;                            //計數減1
  26.               p++;                               //指針加1
  27.               if(num >0) SBUF=*p;     //數據繼續發送至全部發完
  28.        }
  29. }
復制代碼


中斷發送優點:省去循環等待時間,以上面例子為例,9600bps時查詢發送約占用單片機10ms多,而中斷發送只占單片機幾十微秒(單片機速度越快,占用時間越少)。

中斷發送缺點:代碼稍復雜,發送過程不易控制。






歡迎光臨 (http://www.denmoz.com/bbs/) Powered by Discuz! X3.1