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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 3157|回復: 8
收起左側

單片機串口通信程序錯誤

[復制鏈接]
ID:661003 發表于 2019-12-19 20:41 來自觸屏版 | 顯示全部樓層 |閱讀模式
3黑幣
我用上位機發送數字對應的燈亮
哪里錯了,燈不亮?求改錯
#include <reg52.h>
#define uchar unsigned char
#define uint unsigned int
uchar dat,num;
uint a,i;
void main()
{
        TMOD=0x20;
        TH1=0xfd;
        TH1=0xfd;
        TR1=1;
        REN=1;
        SM0=0;
        SM1=1;
        EA=1;
        ES=1;
        while(1)
        {
          if(num==1)
          {
              switch(dat)
                  {case1:P0=0xfe;break;
                   case2:P0=0xfd;break;
                   case3:P0=0xfb;break;
               case4:P0=0xf7;break;
                   case5:P0=0xef;break;
               case6:P0=0xdf;break;
               case7:P0=0xbf;break;
               case8:P0=0x7f;break;
                   case0:P0=0xff;break;
                    }
                        ES=1;
                        num=0;
                }
        }
}

  void ser() interrupt 4
{
     RI=0;
         dat=SBUF;
         ES=0;
         num=1;
}

18c73e0374bfbbf3.jpg
回復

使用道具 舉報

ID:235200 發表于 2019-12-19 23:11 | 顯示全部樓層
程序看起來沒錯,關鍵是你上位機發送時是以何種代碼發送,未打開HEX開關時,發送1,接收則是31,要找開HEX開發,發送01才收到1
回復

使用道具 舉報

ID:668822 發表于 2019-12-19 23:44 | 顯示全部樓層
不懂幫頂一下!
回復

使用道具 舉報

ID:609989 發表于 2019-12-20 13:59 | 顯示全部樓層
給你調好了,問題出在case 語句上,我給你的P0改成P2了,你自己改回來。
#include <reg51.h>
#include <intrins.h>
#define uchar unsigned char
#define uint unsigned int
uchar dat,num;
uint a,i;

void main()
{
        TMOD=0x20;
        TH1=0xfd;
        TH1=0xfd;
        TR1=1;
        REN=1;
        SM0=0;
        SM1=1;
        EA=1;
        ES=1;
        while(1)
        {
          if(num==1)
          {
              switch(dat)
                  {
                                        case 1:P2=0xfe;break;
                    case 2:P2=0xfd;break;
                    case 3:P2=0xfb;break;
                                        case 4:P2=0xf7;break;
                    case 5:P2=0xef;break;
                                        case 6:P2=0xdf;break;
                    case 7:P2=0xbf;break;
                    case 8:P2=0x7f;break;
                    case 0:P2=0xff;break;
                                          
                    }
                        ES=1;
                        num=0;
                }
        }
}

  void ser() interrupt 4
{
                        RI=0;
         dat=SBUF;
         ES=0;
         num=1;
}
回復

使用道具 舉報

ID:235200 發表于 2019-12-20 14:54 | 顯示全部樓層
baiyun1234 發表于 2019-12-20 13:59
給你調好了,問題出在case 語句上,我給你的P0改成P2了,你自己改回來。
#include
#include

除了P0改為P2,還改了什么?看不出來
回復

使用道具 舉報

ID:609989 發表于 2019-12-20 15:53 | 顯示全部樓層
csmyldl 發表于 2019-12-20 14:54
除了P0改為P2,還改了什么?看不出來

原版:case1:,我改成了:case 1:他的case中間的空格沒有,語句寫法還需鞏固下。
回復

使用道具 舉報

ID:661003 發表于 2019-12-20 22:16 來自觸屏版 | 顯示全部樓層
baiyun1234 發表于 2019-12-20 13:59
給你調好了,問題出在case 語句上,我給你的P0改成P2了,你自己改回來。
#include
#include

大神,這個程序只可以控制單個LED燈亮,能不能改成花樣流水
回復

使用道具 舉報

ID:532541 發表于 2019-12-21 08:05 | 顯示全部樓層
圖上沒看到晶振的頻率多少,這個好波特率有關,11.0592,或22.1184Mhz 9600 或 19200波特率發數據
回復

使用道具 舉報

ID:609989 發表于 2019-12-21 18:08 | 顯示全部樓層
電子1912 發表于 2019-12-20 22:16
大神,這個程序只可以控制單個LED燈亮,能不能改成花樣流水

如下:給你調好了,P0改成P2了,自己改回來。
#include <reg51.h>
#include <intrins.h>
#define uchar unsigned char
#define uint unsigned int
uchar dat,num,t;

void delayms(uint time)
{
        uint x,y;
        for(x=0;x<time;x++)
          for(y=0;y<112;y++);
}
void main()
{
        TMOD=0x20;
        TH1=0xfd;
        TH1=0xfd;
        TR1=1;
        REN=1;
        SM0=0;
        SM1=1;
        EA=1;
        ES=1;
        while(1)
        {
          if(num==1)
          {
                          delayms(500);
              switch(dat)
                  {
                                       
                    case 1:P2=0xfe;break;
                    case 2:P2=0xfd;break;
                    case 3:P2=0xfb;break;
                    case 4:P2=0xf7;break;
                    case 5:P2=0xef;break;
                    case 6:P2=0xdf;break;
                    case 7:P2=0xbf;break;
                    case 8:P2=0x7f;break;
                    case 0:P2=0xff;break;
                                        case 9:
                                        {
                               
                                                delayms(500);       
                                                P2=0xfe;
                                                delayms(500);       
                                                P2=0xfd;
                                                delayms(500);       
                                                P2=0xfb;
                                                delayms(500);       
                                                P2=0xf7;
                                                delayms(500);       
                                                P2=0xef;
                                                delayms(500);       
                                                P2=0xdf;
                                                delayms(500);       
                                                P2=0xbf;
                                                delayms(500);       
                                                P2=0x7f;
                                                delayms(500);       
                                                P2=0xff;
                                        }break;
                                }
                  
                        ES=1;
                        num=0;
                }
        }
}

  void ser() interrupt 4
{
          RI=0;
         dat=SBUF;
         ES=0;
         num=1;
}
回復

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 影音先锋成人资源 | 在线观看电影av | 成人精品免费视频 | 亚洲在线| 日韩一级电影免费观看 | 久久精品69 | a黄视频 | 丝袜毛片| 亚洲三区视频 | 欧美成视频在线观看 | 久久大陆 | 亚洲精品久久久一区二区三区 | 亚洲综合久久网 | 国产精品.xx视频.xxtv | 久久精品99国产精品日本 | 日韩国产精品一区二区三区 | 可以在线看的黄色网址 | 欧美激情在线精品一区二区三区 | 亚洲一区中文 | 久久久91 | 国产一区二区三区四区 | 欧美二区乱c黑人 | av手机免费在线观看 | 久久99精品久久 | 蜜臀久久 | 啪一啪在线视频 | 精品久久久久一区二区国产 | 日韩av在线免费 | 毛片电影| 欧美综合国产精品久久丁香 | 成人一区二区三区在线观看 | 国产精品久久亚洲 | 99精品免费在线观看 | 99精品视频一区二区三区 | 国产精品无码专区在线观看 | 91精品麻豆日日躁夜夜躁 | 91精品国产乱码久久久久久久久 | 成人亚洲片 | 在线播放中文字幕 | 亚洲精品一区二区三区蜜桃久 | 日日天天 |