找回密碼
         注冊(cè)會(huì)員
        搜索附件  

        15883819uart.rar

         

        51單片機(jī)普通I/O口,做串口用可以和真的串口一樣,設(shè)置發(fā)送和接收的波特率:
        51單片機(jī)普通I/O口,做串口用,可以和真的串口一樣,設(shè)置發(fā)送和接收的波特率,和發(fā)送接收的模式-51

        1. /****************************************************************************************
        2. *文件:UART2.C
        3. *功能:利用LPC900普通I/O口實(shí)現(xiàn)模擬串口,占用定時(shí)器1
        4. *日期:05/07/18
        5. *****************************************************************************************/
        6. #include "Reg935.h"
        7. #include "uart2.h"
        8. #define uchar unsigned char
        9. #define BRH  0xfd  //0xfe 0x95//波特率為9600,使用內(nèi)部RC振蕩
        10. #define BRL  0x15 //0xfd 0x15 //波特率為4800,使用內(nèi)部RC振蕩
        11. //////////////////////////////////////////////////////////////////////////////////////////
        12. uchar num;
        13. uchar uart2s;           //ie. SBUF2
        14. unsigned char uart2f=0; //0:disable 1:read 2:send 3: read completed 4:send completed
        15. //****************************************************************************************
        16. void timer1_isr(void) interrupt 3
        17. {
        18.   TH1=BRH;
        19.   TL1=BRL;
        20.   if(uart2f==2) //每個(gè)IF大概運(yùn)行32周期,從而可以計(jì)算出BRH和BRL
        21.    {
        22.     if(num>1)
        23.       {
        24.        if(uart2s&(0x01<<(9-num)))
        25.          {uart2txd=1;}
        26.        else
        27.          {uart2txd=0;}
        28.        num--;
        29.       }
        30.     else if(num==1)
        31.          {
        32.       uart2txd=1;
        33.       //uart2f=4;
        34.        num--;
        35.       // num=9;
        36.       }
        37.     else {TR1=0;uart2f=4;}
        38.    }
        39.   if(uart2f==1)
        40.     {
        41.      if(num>1)
        42.       {
        43.        if(uart2rxd)
        44.          {uart2s=uart2s|(0x01<<(9-num));}
        45.        else
        46.          {uart2s=uart2s&~(0x01<<(9-num));}
        47.        num--;
        48.       }
        49.      // else if(num==1){if(uart2rxd)num--;
        50.      //                 }
        51.       else
        52.       {
        53.        uart2f=3;
        54.        TR1=0;
        55.        }
        56.    }
        57. }
        58. //---------------------------------------------------------------------------------------
        59. //uart2send: 向模擬串口發(fā)送一個(gè)字符
        60. //入口參數(shù): s 被發(fā)送字符
        61. //出口參數(shù): 無(wú)
        62. //---------------------------------------------------------------------------------------
        63. void uart2send(uchar s)
        64. {
        65.   TH1=BRH;
        66.   TL1=BRL;
        67.   num=9;
        68.   uart2s=s;
        69.   uart2f=2;
        70.   uart2txd=0;
        71.   TR1=1;
        72.   while(uart2f!=4);
        73. }
        74. //---------------------------------------------------------------------------------------
        75. //uart2read: 向模擬串口接收一個(gè)字符
        76. //入口參數(shù) 無(wú)
        77. //出口參數(shù) s 被發(fā)送字符
        78. //---------------------------------------------------------------------------------------
        79. unsigned char uart2read(void)
        80. {
        81.   while(uart2rxd);
        82.   num=9;
        83.   uart2f=1;
        84.   TH1=BRH-1;
        85.   TL1=BRL;//-0x15;
        86.   TR1=1;
        87.   while(uart2f!=3);
        88.   while(!uart2rxd);
        89.   return(uart2s);
        90. }
        91. //---------------------------------------------------------------------------------------
        復(fù)制代碼

        DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD
        不錯(cuò),不錯(cuò),先支持一下標(biāo)記,以后可能用得到{:e154:}

        QQ|手機(jī)版|MCU資訊論壇 ( 京ICP備18035221號(hào)-2 )|網(wǎng)站地圖

        GMT+8, 2025-3-18 13:02 , Processed in 0.040376 second(s), 8 queries , Redis On.

        Powered by Discuz! X3.5

        © 2001-2024 Discuz! Team.

        返回頂部
        无码日韩人妻精品久久蜜桃| 久久青青草原国产精品免费| 91亚洲国产成人久久精品网址| 9re热国产这里只有精品| 精品福利一区二区三区| 人妻无码久久精品| 扒开粉嫩的小缝喷白浆下| 99久久99这里只有免费的精品| 一本久久a久久精品综合夜夜| 日韩欧美亚洲国产精品字幕久久久 | 97在线精品视频| 国产精品九九久久免费视频 | 久久国产精品-国产精品| 久久精品国产99久久丝袜| 亚洲中文字幕久久精品无码喷水| 国产精品成人不卡在线观看| 精品国产毛片一区二区无码| 亚洲AV无码成人网站久久精品大 | 就去吻亚洲精品国产欧美| 国产高清在线精品一区| 欧美精品福利视频一区二区三区久久久精品 | 欧美一区二区精品久久| 亚洲情侣偷拍精品| 99久久免费国产精品热| 看99视频日韩精品| 东京热TOKYO综合久久精品| 免费人欧美日韩在线精品| 成人精品视频一区二区三区| 精品日韩在线视频一区二区三区| 日韩av无码久久精品免费| 精品偷自拍另类在线观看丰满白嫩大屁股ass | 国产午夜精品一本在线观看| 亚洲精品无码久久久影院相关影片| 亚洲精品在线观看视频| 岛国电影一区二区三区| 国产精品毛片一区二区| 久久精品国产久精国产思思| 久久久精品视频免费观看| 国产精品久久久久久福利69堂| 亚洲国产精品尤物YW在线观看 | 人妻偷人精品成人AV|