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

專注電子技術學習與研究
當前位置:單片機教程網 >> MCU設計實例 >> 瀏覽文章

80c51單片機串口通訊實驗總結

作者:佚名   來源:本站原創   點擊數:  更新時間:2010年07月17日   【字體:

  SCON是一個特殊功能寄存器,用以設定串行口的工作方式、接收/發送控制以及設置狀態標志,在我的學習過程中,選用了方式1來實現串口通信(SM0=0 SM1=1)這種方式波特率可變而且為發送8為數據的工作方式。


REN為接收控制位,軟件置1后,允許接收;

TI為發送中斷位,RI為接收中斷位,均由軟件置1方可繼續工作;

由于物理地址上存在兩個SBUF寄存器……但軟件地址上只存在一個,所以串行口的收發均由SBUF控制。設所要發送的字符為“a”,“a”的ACSII碼為0x98H,則發送所用的命令行為SBUF=“a”;,計算機接收端就會收到98H;相反接收時方式則為b=SBUF;(b為無符號char型變量).在實際操作時由于單片機發送有延時所以發送多位數據時,以及接受多位數據時,不能直接羅列這些命令行,應加入檢測TI RI并軟件置0的命令。

以發送為例:

          SBUF=“b”;
          while(TI!=1);
          TI=0;
          SBUF=“a”;
          while(TI!=1);
          TI=0;
SBUF=“c”;
          while(TI!=1);
          TI=0;
SBUF=“k”;
          while(TI!=1);
          TI=0;

即可發送“back”至串口。

在使用串口通信的同時,波特率的同步有單片機定時器實現,由于反復使用波特率,8位自動重裝的定時器工作方式2最為合適

 

         TMOD=0x20;
         TH1=0xfe;
         TL1=oxfe;
          TR1=1;

即可產生晶振為11.0592mhz的9600波特率……

控制串行口接收的方式有兩種~中斷法和查詢法

查詢發采用while語句每當有數據傳送時,通過RI判斷

中斷法采用EA=1;ES=1;的串行口中斷 中斷子程序中對RI置0。

 

關閉窗口

相關文章