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

 找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開始

搜索
查看: 2004|回復(fù): 7
打印 上一主題 下一主題
收起左側(cè)

大佬們幫忙看一下這單片機(jī)程序唄,不知道為什么不循環(huán)

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:424726 發(fā)表于 2019-1-29 21:31 | 只看該作者 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式
超聲波只能啟動(dòng)一次,數(shù)值都不變了
請(qǐng)問各位這是什么原因呢

  1. #include<reg52.h>
  2. #include<intrins.h>
  3. sbit TRIG=P2^6;
  4. sbit ECHO=P2^7;
  5. sbit zuo0=P2^0;
  6. sbit zuo1=P2^1;
  7. sbit zuo2=P2^2;
  8. sbit zuo3=P2^3;
  9. sbit clk=P1^2;
  10. sbit cs=P1^1;
  11. sbit din=P1^0;
  12. unsigned char i=0;
  13. unsigned int dis;
  14. unsigned int t;
  15. unsigned char flag=0;
  16. unsigned int timer=0;
  17. unsigned char code LedChar[]=
  18. {
  19. 0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,
  20. 0x80,0x90,0x88,0x83,0xc6,0xa1,0x86,0x8e
  21. };
  22. unsigned char LedBuff[]=
  23. {
  24. 0xff,0xff,0xff,0xff
  25. };
  26. unsigned char code disp1[]=
  27. {
  28.   0x04,0x22,0x44,0x40,0x40,0x44,0x22,0x04,
  29. };
  30. unsigned char code disp2[]=
  31. {
  32.   0x00,0x22,0x12,0x10,0x10,0x12,0x22,0x00
  33. };
  34. void delay(unsigned int x)
  35. {
  36. unsigned char i;
  37. unsigned char j;
  38. for(i=0;i<x;i++)
  39.    for(j=0;j<112;j++);
  40.    }
  41.    void write_byte(unsigned char Data)
  42.    {
  43.     unsigned char i;
  44. cs=0;
  45. for(i=8;i>=1;i--)
  46. {
  47. clk=0;
  48. din=Data&0x80;
  49. Data=Data<<1;
  50. clk=1;
  51. }
  52. }
  53. void write(unsigned add,unsigned char dat)
  54. {
  55.   cs=0;
  56.   write_byte(add);
  57.   write_byte(dat);
  58.   cs=1;
  59.   }
  60.   void chushi()
  61.   {
  62.    write(0x09,0x00);
  63.    write(0x0a,0x03);
  64.    write(0x0b,0x07);
  65.    write(0x0c,0x01);
  66.    write(0x0f,0x00);
  67.    }
  68. void open()
  69. {
  70.    TRIG=1;
  71.    _nop_();
  72.    _nop_();
  73.    _nop_();
  74.    _nop_();
  75.    _nop_();
  76.    _nop_();
  77.    _nop_();
  78.    _nop_();
  79.    _nop_();
  80.    _nop_();
  81.    _nop_();
  82.    _nop_();
  83.    TRIG=0;
  84.    }
  85.    void jisuan()
  86.    {
  87.    TH1=0;
  88.   TL1=0;
  89.   while(!ECHO);
  90.   TR1=1;
  91.   while(ECHO);
  92.   TR1=0;
  93.    t=TH1*256+TL1;
  94.    dis=(t*1.7)/100;
  95.    if(dis>420)
  96.    {
  97.     dis=0;
  98.     flag=0;
  99.     LedBuff[0]=LedChar[15];
  100.     LedBuff[1]=LedChar[15];
  101.     LedBuff[2]=LedChar[15];
  102.     LedBuff[3]=LedChar[15];
  103.     }
  104.     else
  105.     {
  106.    LedBuff[0]=LedChar[dis%10];
  107.    LedBuff[1]=LedChar[dis/10%10];
  108.    LedBuff[2]=LedChar[dis/100%10];
  109.    LedBuff[3]=LedChar[dis/1000%10];
  110.    }
  111. }
  112. void xianshixiao()
  113. {
  114. unsigned char i;
  115. delay(50);
  116. chushi();
  117. for(i=1;i<9;i++)
  118. write(i,disp1[i-1]);
  119. delay(1000);
  120. }
  121. void xianshiku()
  122. {
  123.   unsigned char i;
  124.   delay(50);
  125.   chushi();
  126.   for(i=1;i<9;i++)
  127.   write(i,disp2[i-1]);
  128.   delay(1000);
  129.   }
  130.    void main ()
  131.    {
  132.      TMOD=0x11;
  133.   TR0=1;
  134.   EA=1;
  135.   ET0=1;
  136.   ET1=1;
  137.   while(1)
  138.   {
  139.   TH0=0XFC;
  140.   TL0=0X67;
  141.   open();
  142.   jisuan();
  143.      if(dis<=10)
  144.      {
  145.       xianshixiao();
  146.      }
  147.         else
  148.      {
  149.       xianshiku();
  150.      }
  151.    }
  152.   }
  153.    void timer1() interrupt 1
  154.    {
  155.     TH0=0XFC;
  156.     TL0=0X67;
  157.     P0=0XFF;
  158.     switch(i)
  159.     {
  160.      case 0: zuo0=1;zuo1=1;zuo2=1;zuo3=0;i++;P0=LedBuff[0];break;
  161.   case 1: zuo0=1;zuo1=1;zuo2=0;zuo3=1;i++;P0=LedBuff[1];break;
  162.   case 2: zuo0=1;zuo1=0;zuo2=1;zuo3=1;i++;P0=LedBuff[2];break;
  163.   case 3: zuo0=0;zuo1=1;zuo2=1;zuo3=1;i=0;P0=LedBuff[3];break;
  164.   }
  165.   timer++;
  166.     }
  167.    void timer0() interrupt 3
  168.    {
  169.     flag=1;
  170.     }

復(fù)制代碼

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復(fù)

使用道具 舉報(bào)

沙發(fā)
ID:138119 發(fā)表于 2019-1-30 08:30 | 只看該作者
樓主厲害,一個(gè)注釋都沒有,別人看起來會(huì)很累!~
回復(fù)

使用道具 舉報(bào)

板凳
ID:164602 發(fā)表于 2019-1-30 09:18 | 只看該作者
不知道你用的哪款超聲波傳感器,我用的HC-SR04款,這個(gè)說明書上說:
為了不影響發(fā)波與回波的干擾,需要間隔60ms以上再發(fā)波。
從你的程序中,沒有看到這樣的設(shè)置,一直不停地發(fā)波,間隔時(shí)間可能小了。
我的程序是這樣的:
void zd3() interrupt 3//T1中斷用來掃描數(shù)碼管顯示和計(jì)200MS啟動(dòng)模塊,發(fā)射超聲波
{
        TH1=0xf8;//重裝初值
        TL1=0x30;
        DigDisplay();//調(diào)用顯示
        timer++;
        if(timer>=50)
        {
                timer=0;
                TX=1;//100MS啟動(dòng)一次模塊。啟動(dòng)模塊,就是控制端發(fā)出一個(gè)10us以上的高電平脈沖
                         //此處發(fā)了15us的高電平脈沖
                _nop_();
                _nop_();
                _nop_();
                _nop_();
                _nop_();
                _nop_();
                _nop_();
                _nop_();
                _nop_();
                _nop_();
                _nop_();
                _nop_();
                _nop_();
                _nop_();
                _nop_();
                TX=0;
        }
}
把程序改一下看看。
回復(fù)

使用道具 舉報(bào)

地板
ID:243076 發(fā)表于 2019-1-30 09:29 | 只看該作者
你的中斷看哈是不是有點(diǎn)問題
回復(fù)

使用道具 舉報(bào)

5#
ID:466578 發(fā)表于 2019-1-30 10:12 | 只看該作者
行139的
TH0=0XFC;
  TL0=0X67;
嵌在while循環(huán)里面,不停的給定時(shí)器賦初值
回復(fù)

使用道具 舉報(bào)

6#
ID:276663 發(fā)表于 2019-1-30 10:47 | 只看該作者
可能是一直卡在定時(shí)器0刷新顯示了。
回復(fù)

使用道具 舉報(bào)

7#
ID:405201 發(fā)表于 2019-1-30 12:24 | 只看該作者
可能卡在定時(shí)器0里了
回復(fù)

使用道具 舉報(bào)

8#
ID:424726 發(fā)表于 2019-1-30 14:55 | 只看該作者
HC6800-ES-V2.0 發(fā)表于 2019-1-30 09:18
不知道你用的哪款超聲波傳感器,我用的HC-SR04款,這個(gè)說明書上說:
為了不影響發(fā)波與回波的干擾,需要間 ...

好的 十分感謝
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

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

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

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 国产乱码精品一区二三赶尸艳谈 | 黄网站免费在线观看 | 一区二区影院 | 视频一区在线 | 国产欧美日韩综合精品一区二区 | 91视视频在线观看入口直接观看 | 久久久久久久久久久福利观看 | 亚洲欧美在线观看 | 国产精品第2页 | 亚洲精品一区二区 | 日韩在线视频一区 | 精品久久九 | 亚洲精品在线视频 | 亚洲+变态+欧美+另类+精品 | 精久久久久 | 国产精品免费一区二区三区 | 日韩国产欧美一区 | 亚洲欧洲精品一区 | 成人在线h| 国产在线观看网站 | 亚洲中午字幕 | 亚洲国产黄| 欧美日韩一区二区三区不卡视频 | 国产精品特级毛片一区二区三区 | 日韩在线 | 亚洲成人高清 | 久久精品亚洲欧美日韩精品中文字幕 | 久久综合影院 | 日本不卡一区二区 | 一区二区在线免费观看视频 | 国产精品毛片无码 | 狠狠爱综合 | 亚洲天堂一区 | 亚洲在线久久 | 国产乱精品一区二区三区 | 给我免费的视频在线观看 | 一区二区三区在线 | av在线电影网站 | 伊人网在线综合 | 中文字幕精 | 国产二区av|