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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 1849|回復: 5
收起左側

PC機與51單片機的通信程序 顯示出來的是亂碼

[復制鏈接]
ID:781656 發表于 2021-5-6 16:17 | 顯示全部樓層 |閱讀模式
這個是pc機和單片機的通信,程序沒問題,但顯示出來的是亂碼,使用VSPD虛擬串口軟件調試。望各位大俠幫忙指導!
51hei截圖_20210506160734.jpg 51hei截圖_20210506160813.jpg
  1. #include<reg52.h>
  2. #include<intrins.h>
  3. #include<stdio.h>
  4. #define uchar unsigned char
  5. #define uint unsigned int
  6. #define FREQ 11059200       //振蕩器頻率11.0592Mhz
  7. uchar code SEG_CODE[]=  //共陰數碼管數字段碼表,最后為“-”的段碼
  8. {0X3F,0X06,0X5B,0X4F,0X66,0X6D,0X7D,0X07,0X7F,0X6F,0X40};
  9. uchar R[]={10,10,10,10}; //保存接收到的四位數字(初始時為4個“-”)
  10. //延時程序
  11. void delay_ms(uint x)
  12. {
  13. uchar t;
  14. while(x--)
  15. {
  16.   for(t=0;t<120;t++);
  17. }
  18. }
  19. //初始化串口(使用time1定時器)
  20. void init_usart_ut1()
  21. {
  22. SCON=0X50;    //串口方式1
  23. TMOD=0X20;    //t1工作于方式2(8位自動重裝)
  24. PCON=0X80;        //波特率不倍增
  25. TH1=TL1=-FREQ/384/9600;      //波特率配置(TH1=TL1=0XFD)
  26. //或:TH1=TL1=256-FREQ/384/9600;
  27. TR1=1;            //啟動定時器1
  28. }
  29. //串口初始化(使用t2定時器)(當T2CON寄存器的RCLK,TCLK二者之一置位
  30. //t2即工作于波特率發生器模式,TH2-TL2溢出時,RCAP2H-RCAP2L重裝TH2-TL2)
  31. void init_usart_ut2()
  32. {
  33. RCAP2H=0XFF;         //波特率配置(RCAP2H=0XFF)
  34. RCAP2L=-FREQ/32/9600;    //波特率配置(RCAP2L=0XDC)
  35. //或:RCAP2L=256-FREQ/32/9600;
  36. SCON=0X50;       //串口方式1
  37. T2CON=0X30;      //收/發時鐘位:RCLK,TCLK同時置位
  38. PCON=0X00;       //波特率不倍增
  39. TR2=1;           //啟動定時器t2
  40. }
  41. //主程序
  42. main()
  43. {
  44. uchar i;
  45. init_usart_ut2();   //串口初始化(使用timer2定時器)
  46. //或:init_usart_ut1();  //串口初始化(使用timer1定時器)
  47. EX0=1; IT0=1;               //允許外部中斷0,下降沿觸發
  48. ES=1;            //允許串口中斷
  49. EA=1;            //開中斷
  50. while(1)
  51. {
  52.   for(i=0;i<4;i++)  //循環先掃描顯示4個數字字符
  53.   {
  54.    P0=0X00;            //先暫時關閉段碼
  55.    P2=~(1<<i);         //發送位碼
  56.    P0=SEG_CODE[R[i]];   //發送段碼
  57.    delay_ms(4);   //位間短暫延時
  58.   }
  59. }
  60. }
  61. //串口接收中斷
  62. void receive_4_digit() interrupt 4
  63. {
  64. static uchar i=0;         //接收緩沖索引(靜態變量)
  65. uchar c;      //當前接收的字符
  66. if(RI)       //接收中斷標志位判斷
  67. {
  68.   RI=0;      //軟件清零中斷標志位
  69.   c=SBUF;               //從SBUF寄存器讀取字符
  70.   if(c=='#')     //接收時遇到‘#’則將接收索引清零
  71.   {
  72.    i=0;     
  73.   }
  74.   else
  75.   {
  76.    if(c>='0'&&c<='9')  //遇到數字0-9時從當前位置循環存放
  77.    {
  78.     R[i++]=c-'0';  //存入R數組當前位置,索引遞增
  79.     if(i==4)   //索引范圍限于0-3
  80.     {
  81.      i=0;
  82.     }
  83.    }
  84.   }
  85. }
  86. }
  87. //INT0中斷發送字符串
  88. void EX_INT0() interrupt 0
  89. {
  90. uchar *s="這是由8051單片機發送的字符串!!!\r\n";
  91. uchar i=0;
  92. while(s[i]!='\0')
  93. {
  94.   SBUF=s[i++];         //發送1字節,索引遞增
  95.   while(TI==0)   //等待發送完畢
  96.   {
  97.    TI=0;            //軟件清零中斷標志位TI
  98.   }
  99. }
  100. }
復制代碼

回復

使用道具 舉報

ID:781656 發表于 2021-5-6 16:23 | 顯示全部樓層

全運行狀態下,都是亂碼,
51hei截圖_20210506162107.png
回復

使用道具 舉報

ID:390416 發表于 2021-5-6 20:02 | 顯示全部樓層
串口1打印程序 可以打印3個十六位的變量 波特率9600 http://www.zg4o1577.cn/bbs/dpj-201660-1.html
回復

使用道具 舉報

ID:401564 發表于 2021-5-6 21:35 | 顯示全部樓層
STC官方下載器有串口助手,下載程序到單片機上運行就可以
有的串口通訊軟件是會亂碼,STC下載的是相對比較好用的
回復

使用道具 舉報

ID:889094 發表于 2021-5-6 22:18 | 顯示全部樓層
看了兩個串口初始化函數,串口2的初始化函數中怎么和1中的一樣都是SCON=0X50
雖然我不知道樓主用的什么芯片,但兩個串口設置模式1肯定不是一個寄存器,因為我的芯片兩個串口各有設置的寄存器。我的是串口1用SCON串口2用S2CON
回復

使用道具 舉報

ID:781656 發表于 2021-5-7 15:01 | 顯示全部樓層
用的是89c52芯片,現在的問題是,串口調試發出的信號,單片機數碼管不顯示
回復

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 羞羞网站免费观看 | 国产高清毛片 | 日韩精品1区2区3区 爱爱综合网 | 草草精品| 午夜www | 日本午夜免费福利视频 | 国产在线精品一区二区三区 | 日韩久久久久久 | 日韩在线精品视频 | 91视视频在线观看入口直接观看 | 国产三级大片 | 国产在线观 | 日韩中文一区二区三区 | 99久久精品免费看国产高清 | 色爱综合网 | 久久亚洲一区二区 | 久久一二 | 三级视频久久 | 日韩一区精品 | 国产精品成人一区二区三区 | 精品中文字幕一区二区三区 | 欧美精品一区在线 | 欧美v免费 | 观看av| 一区二区三区四区国产 | 中文字幕在线观看av | 最新日韩在线视频 | 国产精品久久久久aaaa九色 | 一区二区三区回区在观看免费视频 | 日韩欧美大片在线观看 | 国产美女视频黄 | 久久久成人精品 | 国内精品久久久久久影视8 最新黄色在线观看 | 亚洲精品乱码8久久久久久日本 | 羞羞的视频免费观看 | 在线看亚洲 | 97人人草| 国产成人久久av免费高清密臂 | 天堂一区二区三区 | 欧美视频在线观看 | 日韩午夜网站 |