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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

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

Proteus仿真的51單片機雙機通信

[復制鏈接]
跳轉到指定樓層
樓主
ID:1145117 發表于 2026-3-13 18:24 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
基于51單片機的串口通信

  1. #include <REGX52.H>
  2. #include "Delay.h"
  3. #include "UART.h"
  4. #include "math.h"
  5. #include "string.h"
  6. #include "stdio.h"
  7. #include "LCD1602.h"
  8. sbit BUZZER=P1^7;

  9. sbit LED=P1^0;

  10. sbit IR=P2^1;

  11. unsigned char rx_buffer[10];   
  12. unsigned char rx_index = 0;     
  13. unsigned int ad_value = 0;     
  14. bit new_data_flag = 0;
  15. char tx_buf[20];        
  16. void main()
  17. {
  18.         UART_Init();       
  19.   BUZZER=0;       
  20.         LED=1;
  21.         LCD_Init();
  22.         while(1)
  23.         {
  24.                        
  25.                                 if(new_data_flag)
  26.         {
  27.             new_data_flag = 0;               

  28.             
  29.             if(ad_value > 30)
  30.             {       
  31.                                                         LED = 0;
  32.                                                         BUZZER=1;       
  33.                                                         UartSendStr(tx_buf);
  34.                                                         UartSendStr("Waring!\r\n");
  35.                                                 }                       
  36.             else
  37.                                                         {
  38.                 LED = 1;
  39.                 BUZZER=0;        }               
  40.             sprintf(tx_buf, "SC_value=%u%%\r\n", ad_value);
  41.                                                
  42.             
  43.         }
  44.                                         LCD_ShowString(1,1,tx_buf);
  45.         }
  46. }

  47. void UART_Routine() interrupt 4
  48. {
  49.     if(RI == 1)
  50.     {
  51.         unsigned char ch = SBUF;
  52.         RI = 0;

  53.         if(ch == '\n')                     // ????
  54.         {
  55.             rx_buffer[rx_index] = '\0';    // ????????
  56.             // ???? "ad:XXX"
  57.             if(sscanf(rx_buffer, "SC:%u", &ad_value) == 1)
  58.             {
  59.                 new_data_flag = 1;          // ???????
  60.             }
  61.             rx_index = 0;                    // ?????
  62.         }
  63.         else if(ch == '\r')
  64.         {
  65.             // ?????
  66.         }
  67.         else
  68.         {
  69.             if(rx_index < sizeof(rx_buffer) - 1)
  70.                 rx_buffer[rx_index++] = ch;  // ?????
  71.             else
  72.                 rx_index = 0;                 // ?????
  73.         }
  74.     }
  75. }
復制代碼


雙機煙霧.zip

296.29 KB, 下載次數: 0, 下載積分: 黑幣 -5

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

使用道具 舉報

無效樓層,該帖已經被刪除
您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表