久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

標題: STC15w4k58s4單片機4串口同時收發(fā)例程 [打印本頁]

作者: CZP1234    時間: 2017-7-13 14:13
標題: STC15w4k58s4單片機4串口同時收發(fā)例程
STC15w4k58s4 芯片的4串口同時收發(fā)例程




單片機源程序如下:
  1. #include "intrins.H"
  2. #include "uart.H"
  3. #define uchar unsigned  char
  4. #define uint  unsigned   int

  5. uchar uart1buf[6]={0xa5,0x5a,0x4a,0xf8,0xff,0xff};
  6. uchar uart2buf[6]={0xa5,0x5a,0x4a,0xf8,0xff,0xff};
  7. uchar uart3buf[6]={0xa5,0x5a,0x4a,0xf8,0xff,0xff};
  8. uchar uart4buf[6]={0xa5,0x5a,0x4a,0xf8,0xff,0xff};
  9. uchar uart2_i,uart3_i,uart4_i;
  10. bit flag2=0,flag3=0,flag4=0;         //flag of reveived new packs  收到新數(shù)據(jù)包標志
  11. void delay(uint k)       
  12. {                                               
  13. uint i,j;                               
  14. for(i=0;i<k;i++)
  15. {                       
  16. for(j=0;j<121;j++)                       
  17. {;}}                                               
  18. }
  19. void main()
  20. {
  21. uchar i;
  22. uint l1,l2,l3;
  23. Uart1Init();
  24. Uart2Init();
  25. Uart3Init();
  26. Uart4Init();
  27. while(1)
  28. {
  29.   if(flag3==1||flag2==1||flag4==1)
  30.   {
  31.    flag4=0;
  32.    flag3=0;
  33.    flag2=0;
  34.    for(i=0;i<6;i++)
  35.    uart1buf[i]=uart3buf[i];
  36.    l1=256*uart2buf[2]+uart2buf[3];
  37.    l1=l1/10*7;
  38.    l2=256*uart3buf[2]+uart3buf[3];
  39.    l2=l2/10*7;
  40.    l3=256*uart4buf[2]+uart4buf[3];
  41.    if(l1<=l2&&l1<=l3)
  42.    {
  43.    uart1buf[2]=l1/256;
  44.    uart1buf[3]=l1%256;
  45.    }
  46.    if(l2<=l1&&l2<=l3)
  47.    {
  48.    uart1buf[2]=l2/256;
  49.    uart1buf[3]=l2%256;
  50.    }
  51.    if(l3<=l1&&l3<=l2)
  52.    {
  53.    uart1buf[2]=uart4buf[2];
  54.    uart1buf[3]=uart4buf[3];   
  55.    }
  56.    if(uart1buf[2]>=0xea)
  57.    {
  58.    uart1buf[2]=0xea;
  59.    uart1buf[3]=0x00;
  60.    }
  61.    for(i=0;i<6;i++)
  62.    UART1_SendData(uart1buf[i]);
  63.   }
  64. //   delay(500);
  65. }
  66. }

  67. void Uart2() interrupt 8 using 1
  68. {
  69.     if (S2CON & S2RI)
  70.     {
  71.         S2CON &= ~S2RI;         //清除S2RI位
  72.                 uart2buf[uart2_i]=S2BUF;
  73.                 uart2_i++;
  74.                 if(uart2_i==6)
  75.                 {
  76.                 uart2_i=0;
  77.                 flag2=1;
  78.                 if(uart2buf[2]==0&&uart2buf[3]==0)
  79.                 {
  80.                  uart2buf[2]==0x2a;
  81.                  uart2buf[3]==0xf8;
  82.                 }
  83.                 }
  84.     }
  85.     if (S2CON & S2TI)
  86.     {
  87.         S2CON &= ~S2TI;         //清除S2TI位
  88.     }
  89. }
  90. void Uart3() interrupt 17 using 1
  91. {
  92.     if (S3CON & S3RI)
  93.     {
  94.         S3CON &= ~S3RI;         //清除S2RI位
  95.                 uart3buf[uart3_i]=S3BUF;
  96.                 uart3_i++;
  97.                 if(uart3_i==6)
  98.                 {
  99.                 uart3_i=0;
  100.                 flag3=1;
  101.                 if(uart3buf[2]==0&&uart3buf[3]==0)
  102.                 {
  103.                  uart3buf[2]==0x2a;
  104.                  uart3buf[3]==0xf8;
  105.                 }
  106.                 }
  107.     }
  108.     if (S3CON & S3TI)
  109.     {
  110.         S3CON &= ~S3TI;         //清除S3TI位
  111.     }
  112. }
  113. void Uart4() interrupt 18 using 1
  114. {
  115.     if (S4CON & S4RI)
  116.     {
  117.         S4CON &= ~S4RI;         //清除S2RI位
  118.                 uart4buf[uart4_i]=S4BUF;
  119. ……………………

  120. …………限于本文篇幅 余下代碼請從51黑下載附件…………
復(fù)制代碼

所有資料51hei提供下載:
2017.06.23 四串口.rar (77.06 KB, 下載次數(shù): 298)



作者: HJHJH    時間: 2017-7-13 22:02
謝謝分享,好資料,51黑有你更精彩!!!
作者: hxkun    時間: 2017-8-15 10:33
謝謝分享資料!
作者: hack778    時間: 2017-9-9 19:34
好東西 謝謝
作者: waitgrape    時間: 2017-11-9 10:46
多謝分享!
作者: iceh    時間: 2018-2-8 10:14
多謝分享!
作者: wuxishun    時間: 2018-2-8 21:55
謝謝分享
作者: xhdzwzj    時間: 2018-2-13 16:18
謝謝分享,好好好
作者: qjzyx    時間: 2018-2-13 20:32
謝謝分享!
作者: ttianmei    時間: 2018-4-8 22:15
好資料,51黑有你更精彩!!!

作者: yls0221    時間: 2018-4-27 16:46
學(xué)習(xí)一下!
作者: 18861190651    時間: 2018-9-17 16:10
好東西  
作者: hcec    時間: 2018-11-17 10:46
謝謝分享,
作者: STC15W4K32S4    時間: 2018-11-30 21:34
學(xué)習(xí)了
作者: Eric530    時間: 2019-1-21 22:37
正好在看這個 ,謝謝分享
作者: Eric530    時間: 2019-1-21 22:40
很高興看到這個,謝謝分享
作者: wu‘kong    時間: 2019-3-17 15:41
剛好可以用到,謝謝樓主
作者: liuz325    時間: 2019-3-18 20:25
希望有用,看不太全
作者: jaypie    時間: 2019-4-14 21:21
謝謝分享!
作者: jaypie    時間: 2019-4-16 00:58
謝謝分享
作者: yulin3192    時間: 2019-7-8 11:56
代碼注釋太少了
作者: 雨后心空    時間: 2019-11-10 19:55
有用嗎?
作者: macag4    時間: 2019-11-12 00:44
這個程序有人測試過嗎?
作者: twetnr    時間: 2019-11-12 08:37
感謝分享!
作者: mmlyy2001    時間: 2025-7-22 08:50
正在使用STC15w4k32s4寫多串口同時通訊程序,參考一下
作者: aking991    時間: 2025-7-22 10:52
你這程序只適用于固定長度的接收幀,并不適用不定長度的接收幀處理,要想想當出現(xiàn)不固定幀長度的,又作何處理?




歡迎光臨 (http://m.zg4o1577.cn/bbs/) Powered by Discuz! X3.1
主站蜘蛛池模板: 中文在线观看免费视频 | 日韩理论在线 | 免费黄网站在线观看 | 视频一区二区在线 | 男人影院在线观看 | 亚洲激情另类 | 亚洲欧美精品一区 | 中日韩毛片 | 伊人网站 | 在线视频h | 免费欧美视频 | 亚洲欧美日韩另类 | 午夜网站在线观看 | 亚洲理论片 | 黄色录像免费看 | 一区二区三区视频在线 | 国产精品久久久久久久久久久久午夜片 | 成人短视频在线观看 | 蜜桃视频成人 | 国产精品久久久久久久久久久久久 | 青草视频在线播放 | 国产视频导航 | av小说在线观看 | 久久九九免费视频 | 日本少妇中文字幕 | 成人免费视频国产免费麻豆 | 久草福利在线观看 | 欧美日韩在线视频观看 | 亚洲黄色网址 | 狠狠做深爱婷婷综合一区 | 日韩一区二区三区视频 | 欧美在线一区二区三区 | 成人9ⅰ免费影视网站 | 国产成人+综合亚洲+天堂 | 久久久精品 | 欧美在线视频观看 | 伊人久久在线 | 久久久久久久久久久久久久 | 亚洲国产中文字幕 | 国产免费一区 | 午夜高清 |