新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > PTR2000無線收發C語言程序

        PTR2000無線收發C語言程序

        作者: 時間:2016-11-27 來源:網絡 收藏

        //單片機端發送數據函數
        voidSend(void)
        {
        ucharxdataj =0;
        ucharxdatalen =0;
        ucharxdataCheckSum=0;
        t_buf[0]=0x24;//起始位
        t_buf[1]=0x07;//7個數據字節
        len=t_buf[1];
        CheckSum=CheckSum+len;
        for (j=0;j++;j{
        t_buf[j+2]=Data[j];
        CheckSum=CheckSum+t_buf[j+2];
        }
        t_buf[9]=CheckSum;//校驗和字節
        t_buf[10]=0x2A;//停止位
        for (j=0;j++;j<11)
        {
        TI=0;
        SBUF=t_buf[j];
        while(TI==0);
        TI=0;
        }
        }
        //通知PC機端發送結束函數
        voidSendOver(void)
        {
        TI=0;
        SBUF=0x24;
        while(TI==0);
        TI=0;
        SBUF=0x01;
        while(TI==0);
        TI=0;
        SBUF=SEND_OVER;//通知PC機端“發送結束”
        while(TI==0);
        TI=0;
        SBUF=0x99;//校驗字節
        while(TI==0);
        TI=0;
        SBUF=0x2A;
        while(TI==0);
        TI=0;
        }
        voidmain(void)
        {
        ClearT_buf();
        ClearR_buf();
        TXEN=0;//初始為接收狀態
        PWR=1;//正常工作模式
        CS=0;//選擇通道0
        EA=0;
        //11.0592MHz,9600波特率,工作方式1,8數據位,1停止位,無奇偶校驗
        TMOD=0x21;
        SCON=0x50;//串行口工作方式1,REN=1
        PCON=0x00;//SMOD=0
        TL1=0xfd;
        TH1=0xfd;
        TR1=1;//定時器1開始計時
        PT0=1;//定時器0高優先級
        TH0=-5000/256;//5ms
        TL0=-5000%6;
        IE=0x90;//EA=1,ES=1
        while(1)
        {
        if (Flag_RSend)//“請求發送”指令
        {
        TXEN=1;//改變為發射狀態
        Delay();//延時5ms
        GetData();//采集數據
        Send();//發送
        Flag_RSend=0;
        SendOver();//通知PC機發送結束
        TXEN=0;//重設為接收狀態
        }
        elseif (Flag_ReSend)// “請求重發”指令
        {
        TXEN=1;//改變為發射狀態
        Delay();//延時5ms
        Send();//重發
        Flag_ReSend=0;
        SendOver();//通知PC機發送結束
        TXEN=0;// 設為接收狀態
        }
        }
        }

        本文引用地址:http://www.104case.com/article/201611/322549.htm

        下面是原理圖:


        上一頁 1 2 下一頁

        評論


        技術專區

        關閉
        主站蜘蛛池模板: 江孜县| 芷江| 涟源市| 英德市| 攀枝花市| 磐石市| 苍梧县| 荔波县| 东辽县| 保定市| 方山县| 五原县| 永嘉县| 阜阳市| 屯门区| 兰州市| 东兴市| 泗阳县| 天津市| 苍溪县| 凤台县| 中卫市| 连云港市| 西乌| 鹤壁市| 潞西市| 铁岭县| 炎陵县| 正定县| 蚌埠市| 岳池县| 祁连县| 杭锦旗| 淮安市| 巩义市| 开平市| 新蔡县| 岑巩县| 腾冲县| 雅安市| 綦江县|