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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 1987|回復: 2
收起左側

51單片機串口中斷方式接收數(shù)據(jù)錯誤

[復制鏈接]
ID:902815 發(fā)表于 2021-4-9 09:36 | 顯示全部樓層 |閱讀模式
我想實現(xiàn)51單片機接收串口發(fā)送過來的數(shù)據(jù)(中斷方式),數(shù)據(jù)是以字符數(shù)組的形式發(fā)送過來的,然后顯示到LCD屏上,同時再發(fā)送出去。測試的時候,顯示和發(fā)送出去的都是亂碼,大佬們誰知道怎么解決?(只接收2個字符還行,多了就不行了)
  1. #include <reg52.h>
  2. #define uchar unsigned char
  3. #define uint unsigned int
  4. uchar code table[]="The temperature:";
  5. uchar table1[]="";
  6. uchar flag,rebuf;
  7. uchar j=0;
  8. sbit wela=P2^7;
  9. sbit dula=P2^6;
  10. sbit lcden=P3^4;
  11. sbit lcdrs=P3^5;
  12. void DelayMS(uint xms)                                  //延時大約1ms
  13. {
  14.         uint x,y;
  15.         for(x=xms;x>0;x--)
  16.                 for(y=110;y>0;y--);
  17. }
  18. void write_com(uchar com)
  19. {
  20.         lcdrs=0;                  //寫命令
  21.         P0=com;              
  22.         DelayMS(5);         
  23.         lcden=1;
  24.         DelayMS(5);
  25.         lcden=0;
  26. }
  27. void write_data(uchar date)
  28. {
  29.         lcdrs=1;                 //寫數(shù)據(jù)
  30.         P0=date;
  31.         DelayMS(5);
  32.         lcden=1;
  33.         DelayMS(5);
  34.         lcden=0;
  35. }
  36. void send(uchar dat)
  37. {
  38.         SBUF=dat;
  39.         while(TI==0);
  40.         TI=0;
  41. }
  42. void uartinit()//串口初始化函數(shù)
  43. {
  44.         SCON=0x50;//串口工作方式為模式1
  45.         TMOD=0x20;//定時器T1工作方式2
  46.         PCON=0x00;//SMOD=0
  47.         TH1=0xfd;//波特率為9600
  48.         TL1=0xfd;
  49.         EA=1;
  50.         ES=1;
  51.         TR1=1;//啟動定時器
  52. }

  53. void init()                     //初始化函數(shù)
  54. {
  55.         dula=0;
  56.         wela=0;
  57.         lcden=0;
  58.         write_com(0x38);              //設置16*2顯示、5*7點陣、8位數(shù)據(jù)接口
  59.         write_com(0x0c);              //設置開顯示,不顯示光標
  60.         write_com(0x06);              //寫一個字符后,地址指針自動加一
  61.         write_com(0x01);              //顯示清零,數(shù)據(jù)指針清零
  62.         uartinit();
  63. }
  64. void main()
  65. {
  66.         uchar num=0;
  67.         uchar b=0;
  68.         init();
  69.         write_com(0x80);
  70.         for(b=0;b<16;b++)
  71.         {
  72.                 write_data(table[b]);
  73.                 DelayMS(5);
  74.         }
  75.         while(1)
  76.         {
  77.                 if(flag==1)
  78.                 {        
  79.                         flag=0;
  80.                         write_com(0x80+0x40);
  81.                         for(b=0;b<5;b++)
  82.                         {
  83.                                 write_data(table1[b]);
  84.                                 DelayMS(5);
  85.                         }
  86.                         for(b=0;b<5;b++)
  87.                         {
  88.                                 send(table1[b]);
  89.                         }
  90.                 }
  91.         }               
  92. }
  93. void ser() interrupt 4
  94. {
  95.         if(RI==1)
  96.         {
  97.                 RI=0;
  98.                 rebuf=SBUF;        
  99.                 table1[j++]=rebuf;
  100.                 if(j>4)
  101.                 {
  102.                         j=0;
  103.                         flag=1;
  104.                 }        
  105.         }
  106. }
復制代碼


回復

使用道具 舉報

ID:808223 發(fā)表于 2021-4-10 15:08 | 顯示全部樓層
看下晶振的大小對應的波特率對不對,收發(fā)機兩端波特率配置一不一樣,你代碼寫的最多可以收發(fā)四個字符
回復

使用道具 舉報

ID:902815 發(fā)表于 2021-4-10 20:31 | 顯示全部樓層
Secret丶 發(fā)表于 2021-4-10 15:08
看下晶振的大小對應的波特率對不對,收發(fā)機兩端波特率配置一不一樣,你代碼寫的最多可以收發(fā)四個字符

你好,波特率收發(fā)都是9600
回復

使用道具 舉報

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

本版積分規(guī)則

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

Powered by 單片機教程網(wǎng)

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 黄色成人亚洲 | 日韩三区 | 国产精品日产欧美久久久久 | 成人深夜福利 | 亚洲日本欧美日韩高观看 | 欧美成人一区二区 | 美女黄网站视频免费 | 黄色大片在线视频 | 久久不卡日韩美女 | 欧美激情一区二区三区 | 色一情一乱一伦一区二区三区 | 一区二区三区电影在线观看 | 国产欧美视频一区二区三区 | 99pao成人国产永久免费视频 | 国产成人福利在线观看 | 自拍偷拍亚洲视频 | 天堂av资源 | 亚洲精品一区国语对白 | 中文av字幕 | 久草日韩 | 中文亚洲视频 | 欧美性网站| 看真人视频一级毛片 | 天天操夜夜操免费视频 | 久久精品久久久久久 | 99亚洲 | 午夜久久久久久久久久一区二区 | 日日干日日操 | 视频二区在线观看 | 亚洲一区二区电影网 | 国产免费黄网 | 中文字幕 在线观看 | 国产成人精品a视频一区www | 亭亭五月激情 | 华丽的挑战在线观看 | 欧美综合一区二区三区 | 日日av| 91久久国产综合久久91精品网站 | 成人免费一区二区三区视频网站 | 国产性网| 欧美精品一区二区三区蜜桃视频 |