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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

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

為什么我用單片機串口發一個數組的內容出去,順序是亂的?

[復制鏈接]
跳轉到指定樓層
樓主
ID:735654 發表于 2021-1-15 19:55 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
  1. /*uart.c*/
  2. #define uc unsigned char
  3. #define ui unsigned int
  4. #define ul unsigned long
  5. #define iuc idata unsigned char
  6. #define iui idata unsigned int
  7. #define iul idata unsigned long
  8. #define bt bit
  9. #define swch switch
  10. #define cs case
  11. #define whl while
  12. #define rtn return
  13. #define brk break
  14. #define itrpt interrupt

  15. uart_init(bt xos)
  16. {
  17. if(xos==1)
  18.   {
  19.   P_SW2|=0x80; /*啟動內部擴展區寄存器訪問功能*/
  20.   XOSCCR|=0xc0; /*啟動外部晶振*/
  21.   while(!(XOSCCR & 1)); /*待晶振頻率穩定*/
  22.   CLKDIV=0x00; /*晶振不分頻*/
  23.   CKSEL=0x01; /*選用外部晶振*/
  24.   }
  25. SCON=0x50;   /*設定串口工作方式*/
  26. TMOD|=0x21;  /*設置T0T1寄存器*/
  27. AUXR=0xfc;  /*配置輔助寄存器*/
  28. TL1=TH1=0xdc; /*設置波特率為9.6kbit/s*/
  29. TR1=1;
  30. REN=1; /*允許接收串口數據*/
  31. EA=1;  /*打開總中斷*/
  32. ES=1; /*打開串口中斷*/
  33. P3M1=0x01; /*00000001*/
  34. P3M0=0x02; /*00000010,將串口接收口設為高阻輸入模式,發送口設置為強推挽模式*/
  35. }

  36. uart_txd(uc buf[])
  37. {
  38. iui i;
  39. iui j=sizeof(buf);
  40. TI=RI=0;
  41. for(i=0;i<j;i++)
  42.   {
  43.   SBUF=buf[i];
  44.   while(TI==0)
  45.     {
  46.     ;
  47.     }
  48.   TI=0;
  49.   }
  50. }

  51. /*—————————————兩個文件的分割線—————————————*/
  52. /*main.c*/

  53. #include <STC8x.H>
  54. #include <UART.H>

  55. iui txdbuf[13]={'H','E','L','L','O',' ','W','O','R','L','D','!','\0'};

  56. main()
  57. {
  58. uart_init(0);
  59. while(1)
  60.   {
  61.   uart_txd(txdbuf);
  62.   }
  63. }
復制代碼
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復

使用道具 舉報

沙發
ID:390416 發表于 2021-1-15 21:02 | 只看該作者
分享給你這個貼子,STC單片機串口發送 不需要while死等。http://www.zg4o1577.cn/bbs/dpj-200927-1.html
使用STC15W4K核心板調試串口1,晶振30M,波特率9600。需要發送的時候,Uart1_Flag=1即可發送一包數據。這樣的代碼CPU效率更高。
回復

使用道具 舉報

板凳
ID:752974 發表于 2021-1-16 12:59 | 只看該作者
樓主說的亂不是發送的數據亂還是接收到的數據亂。在通信中通信的兩方的通信參數必須設定一致,按著定好的協議收發數據,不然就易出問題。

評分

參與人數 1黑幣 +20 收起 理由
admin + 20 回帖助人的獎勵!

查看全部評分

回復

使用道具 舉報

地板
ID:878235 發表于 2021-1-16 23:25 | 只看該作者
接收的時候,要想辦法判斷開始,接收的過程有可能丟失數據,所以要有校驗碼

評分

參與人數 1黑幣 +20 收起 理由
admin + 20 回帖助人的獎勵!

查看全部評分

回復

使用道具 舉報

5#
ID:878235 發表于 2021-1-16 23:25 | 只看該作者
接收的時候,要知道從哪里開始,到哪里結束,校驗碼也是要有的,因為有可能丟失數據

評分

參與人數 1黑幣 +20 收起 理由
admin + 20 回帖助人的獎勵!

查看全部評分

回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 欧美专区在线 | 久久里面有精品 | 一区精品国产欧美在线 | 九一在线| 中文在线一区二区 | 欧美日韩亚 | 午夜成人在线视频 | www亚洲精品 | 午夜av免费 | 亚洲国产精品久久久 | 国产精品久久国产精品 | 久草免费在线 | 国产午夜精品一区二区三区嫩草 | 毛片韩国 | 精品国产精品三级精品av网址 | 欧美一级片a | 欧美精产国品一二三区 | 毛片高清 | 欧美国产视频 | 色综合久久久 | 在线看一区二区 | 日韩手机视频 | 国产成人99久久亚洲综合精品 | 在线视频h | 久久久久久黄 | 免费观看毛片 | 干出白浆视频 | 国产在线小视频 | 亚洲一区久久久 | 少妇一级淫片aaaaaaaaa | 青青草国产在线观看 | 国产高清自拍视频在线观看 | 久久久久久亚洲精品 | 国产一级电影网 | 亚洲综合在线一区二区 | 国产伊人精品 | 日韩和的一区二区 | 妞干网av| 521av网站 | 精品亚洲一区二区 | 国产伦精品一区二区三区精品视频 |