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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

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

新人學單片機,各路大神這個程序哪里錯了。只亮一個LED,不能流水點亮。

  [復制鏈接]
跳轉到指定樓層
樓主
ID:91490 發表于 2015-10-2 10:31 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
#include"reg51.h"
#include"intrins.h"

#define LED P2

void Delay10ms (unsigned int );

void main (void)
{
unsigned char n;
  LED=0x01 ;
  while(1);
  {       
    for(n=0;n<7;n++);
    {
         LED=(LED>>1);
         Delay10ms(100);
    }}}

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

使用道具 舉報

沙發
ID:91493 發表于 2015-10-2 11:03 | 只看該作者
運行出錯?
回復

使用道具 舉報

板凳
ID:91490 發表于 2015-10-2 11:09 | 只看該作者

只亮一個LED,不能流水點亮。
回復

使用道具 舉報

地板
ID:88716 發表于 2015-10-2 13:27 | 只看該作者
延遲函數 只有聲明了,卻沒有定義。看你的目的應該是流水燈效果,而你的程序實現的效果8個小燈全亮。
回復

使用道具 舉報

5#
ID:91490 發表于 2015-10-2 14:47 | 只看該作者
hzb123 發表于 2015-10-2 13:27
延遲函數 只有聲明了,卻沒有定義。看你的目的應該是流水燈效果,而你的程序實現的效果8個小燈全亮。

要怎么定義?
回復

使用道具 舉報

6#
ID:88716 發表于 2015-10-2 16:05 | 只看該作者

沒有定義延遲函數,不影響編譯,可能會出現警告   
比如
void Delayms(unsigned char x)
{
        unsigned char y,z;
        for(y=x;y>0;y--)
        for(z=120;z>0;z--);
}
//主時鐘12M 差不多1MS毫秒延遲
回復

使用道具 舉報

7#
ID:79544 發表于 2015-10-2 16:35 | 只看該作者
#include<reg52.h>
//#include"intrins.h"這句可以不用,因為你沒用到包含_nop_();和左右移動函數
#define uchar unsigned char#define uint unsigned int//宏定義方便書寫
#define LED P2

void Delay10ms (uint  z)//延時大約1ms
{   uint  x,y;
  fonr(x=z;x>0;x--)
  for(y=120;y>0;y--);
}
void main (void)
{
   uchar n;
  LED=0x01 ;//根據你的實驗板IO口是輸出高電平亮還是輸出低電平亮
//LED=0xfe;//IO口輸出低電平亮第一個
  while(1);
  {        
    for(n=0;n<7;n++);//循環執行7次
    {
         LED=(LED>>1);//括號可以去掉
        LED=LED<<1;//左移
         Delay10ms(500);//可以加大延時看看
    }
}
}

回復

使用道具 舉報

8#
ID:91490 發表于 2015-10-2 16:58 | 只看該作者
本帖最后由 二九九 于 2015-10-3 14:27 編輯
hzb123 發表于 2015-10-2 16:05
沒有定義延遲函數,不影響編譯,可能會出現警告   
比如
void Delayms(unsigned char x)

謝謝,通了。看看這個能精簡嗎?
  1. #include"reg51.h"
  2. void Delay10ms(unsigned int c);
  3. unsigned char LED;
  4. void main ()
  5. {    unsigned char i;
  6.      LED = 0xFF ;
  7.      while(1)
  8. {      
  9.       for (i = 0 ; i < 7 ; i++)
  10. {
  11.       P0 = LED ;
  12.       Delay10ms(5);
  13.       LED= LED >> 1;
  14.       LED = LED | 0x01;
  15.       }   
  16.       for (i = 0 ; i < 6 ; i++)
  17. {
  18.       P0 = LED ;
  19.       Delay10ms(5);
  20.       LED= LED << 1;
  21.       LED = LED | 0x01;
  22.       }
  23.       for (i = 0 ; i < 6 ; i++)
  24. {
  25.       P0 = LED ;
  26.       Delay10ms(5);
  27.       LED= LED >> 1;
  28.       LED = LED | 0x01;
  29.       }
  30.       for (i = 0 ; i < 5 ; i++)
  31. {
  32.       P0 = LED ;
  33.       Delay10ms(5);
  34.       LED= LED << 1;
  35.       LED = LED | 0x01;
  36.       }
  37.       for (i = 0 ; i < 5 ; i++)
  38. {
  39.       P0 = LED ;
  40.       Delay10ms(10);
  41.       LED= LED >> 1;
  42.       LED = LED | 0x01;
  43.       }
  44.       for (i = 0 ; i < 4 ; i++)
  45. {
  46.       P0 = LED ;
  47.       Delay10ms(5);
  48.       LED= LED << 1;
  49.       LED = LED | 0x01;
  50.       }
  51.       for (i = 0 ; i < 4 ; i++)
  52. {
  53.       P0 = LED ;
  54.       Delay10ms(5);
  55.       LED= LED >> 1;
  56.       LED = LED | 0x01;
  57.       }
  58.       for (i = 0 ; i < 3 ; i++)
  59. {
  60.       P0 = LED ;
  61.       Delay10ms(5);
  62.       LED= LED << 1;
  63.       LED = LED | 0x01;
  64.       }
  65.       for (i = 0 ; i < 3 ; i++)
  66. {
  67.       P0 = LED ;
  68.       Delay10ms(10);
  69.       LED= LED >> 1;
  70.       LED = LED | 0x01;
  71.       }
  72.       for (i = 0 ; i < 2 ; i++)
  73. {
  74.       P0 = LED ;
  75.       Delay10ms(5);
  76.       LED= LED << 1;
  77.       LED = LED | 0x01;
  78.       }
  79.       for (i = 0 ; i < 2 ; i++)
  80. {
  81.       P0 = LED ;
  82.       Delay10ms(5);
  83.       LED= LED >> 1;
  84.       LED = LED | 0x01;
  85.       }
  86.       for (i = 0 ; i < 1 ; i++)
  87. {
  88.       P0 = LED ;
  89.       Delay10ms(5);
  90.       LED= LED << 1;
  91.       LED = LED | 0x01;
  92.       }
  93.       for (i = 0 ; i < 1 ; i++)

  94. {
  95.       P0 = LED ;
  96.       Delay10ms(5);
  97.       LED= LED >> 1;
  98.       LED = LED | 0x00;
  99.       }
  100.       for (i = 0 ; i < 7 ; i++)
  101. {     P0 = LED ;
  102.       Delay10ms(5);
  103.       LED= LED << 1;
  104.       LED = LED | 0x01;
  105.       }
  106.       for (i = 0 ; i < 7 ; i++)
  107. {
  108.       P0 = LED ;
  109.       Delay10ms(5);
  110.       LED= LED << 1;
  111.       LED = LED | 0x80;
  112.       }
  113.       for (i = 0 ; i < 6 ; i++)
  114. {
  115.       P0 = LED ;
  116.       Delay10ms(5);
  117.       LED= LED >> 1;
  118.       LED = LED | 0x80;
  119.       }
  120.       for (i = 0 ; i < 6 ; i++)
  121. {
  122.       P0 = LED ;
  123.       Delay10ms(5);
  124.       LED= LED << 1;
  125.       LED = LED | 0x80;
  126.       }
  127.       for (i = 0 ; i < 5 ; i++)
  128. {
  129.       P0 = LED ;
  130.       Delay10ms(5);
  131.       LED= LED >> 1;
  132.       LED = LED | 0x80;
  133.       }
  134.       for (i = 0 ; i < 5 ; i++)
  135. {
  136.       P0 = LED ;
  137.       Delay10ms(5);
  138.       LED= LED << 1;
  139.       LED = LED | 0x80;
  140.       }
  141.       for (i = 0 ; i < 4 ; i++)
  142. {
  143.       P0 = LED ;
  144.       Delay10ms(5);
  145.       LED= LED >> 1;
  146.       LED = LED | 0x80;
  147.       }
  148.       for (i = 0 ; i < 4 ; i++)
  149. {
  150.       P0 = LED ;
  151.       Delay10ms(5);
  152.       LED= LED << 1;
  153.       LED = LED | 0x80;
  154.       }
  155.       for (i = 0 ; i < 3 ; i++)
  156. {
  157.       P0 = LED ;
  158.       Delay10ms(5);
  159.       LED= LED >> 1;
  160.       LED = LED | 0x80;
  161.       }
  162.       for (i = 0 ; i < 3 ; i++)
  163. {
  164.       P0 = LED ;
  165.       Delay10ms(5);
  166.       LED= LED << 1;
  167.       LED = LED | 0x80;
  168.       }
  169.       for (i = 0 ; i < 2 ; i++)
  170. {
  171.       P0 = LED ;
  172.       Delay10ms(5);
  173.       LED= LED >> 1;
  174.       LED = LED | 0x80;
  175.       }
  176.       for (i = 0 ; i < 2 ; i++)
  177. {
  178.       P0 = LED ;
  179.       Delay10ms(5);
  180.       LED= LED << 1;
  181.       LED = LED | 0x80;
  182.       }
  183.       for (i = 0 ; i < 1 ; i++)
  184. {
  185.       P0 = LED ;
  186.       Delay10ms(5);
  187.       LED= LED >> 1;
  188.       LED = LED | 0x80;
  189.       }
  190.       for (i = 0 ; i < 1 ; i++)
  191. {
  192.       P0 = LED ;
  193.       Delay10ms(5);
  194.       LED= LED << 1;
  195.       LED = LED | 0x80;
  196.       }
  197.       for (i = 0 ; i < 7 ; i++)
  198. {
  199.       P0 = LED ;
  200.       Delay10ms(5);
  201.       LED= LED >> 1;
  202.       LED = LED | 0x80;
  203.       }
  204.       }
  205.       }
  206.       
  207.    
  208. void Delay10ms(unsigned int c)
  209. {
  210.     unsigned char a, b;

  211.      for (;c>0;c--)
  212. {
  213.         for (b=38;b>0;b--)
  214. {
  215.             for (a=130;a>0;a--);
  216.         }
  217.         }      
  218.         }
復制代碼


回復

使用道具 舉報

9#
ID:91490 發表于 2015-10-2 17:00 | 只看該作者
本帖最后由 二九九 于 2015-10-3 14:30 編輯
騰飛的龍 發表于 2015-10-2 16:35
#include
//#include"intrins.h"這句可以不用,因為你沒用到包含_nop_();和左右移動函數
#define uchar u ...

謝謝,調通了。這個還能精簡嗎?

  1. #include"reg51.h"
  2. void Delay10ms(unsigned int c);
  3. unsigned char LED;
  4. void main ()
  5. {    unsigned char i;
  6.      LED = 0xFF ;
  7.      while(1)
  8. {      
  9.       for (i = 0 ; i < 7 ; i++)
  10. {
  11.       P0 = LED ;
  12.       Delay10ms(5);
  13.       LED= LED >> 1;
  14.       LED = LED | 0x01;
  15.       }   
  16.       for (i = 0 ; i < 6 ; i++)
  17. {
  18.       P0 = LED ;
  19.       Delay10ms(5);
  20.       LED= LED << 1;
  21.       LED = LED | 0x01;
  22.       }
  23.       for (i = 0 ; i < 6 ; i++)
  24. {
  25.       P0 = LED ;
  26.       Delay10ms(5);
  27.       LED= LED >> 1;
  28.       LED = LED | 0x01;
  29.       }
  30.       for (i = 0 ; i < 5 ; i++)
  31. {
  32.       P0 = LED ;
  33.       Delay10ms(5);
  34.       LED= LED << 1;
  35.       LED = LED | 0x01;
  36.       }
  37.       for (i = 0 ; i < 5 ; i++)
  38. {
  39.       P0 = LED ;
  40.       Delay10ms(10);
  41.       LED= LED >> 1;
  42.       LED = LED | 0x01;
  43.       }
  44.       for (i = 0 ; i < 4 ; i++)
  45. {
  46.       P0 = LED ;
  47.       Delay10ms(5);
  48.       LED= LED << 1;
  49.       LED = LED | 0x01;
  50.       }
  51.       for (i = 0 ; i < 4 ; i++)
  52. {
  53.       P0 = LED ;
  54.       Delay10ms(5);
  55.       LED= LED >> 1;
  56.       LED = LED | 0x01;
  57.       }
  58.       for (i = 0 ; i < 3 ; i++)
  59. {
  60.       P0 = LED ;
  61.       Delay10ms(5);
  62.       LED= LED << 1;
  63.       LED = LED | 0x01;
  64.       }
  65.       for (i = 0 ; i < 3 ; i++)
  66. {
  67.       P0 = LED ;
  68.       Delay10ms(10);
  69.       LED= LED >> 1;
  70.       LED = LED | 0x01;
  71.       }
  72.       for (i = 0 ; i < 2 ; i++)
  73. {
  74.       P0 = LED ;
  75.       Delay10ms(5);
  76.       LED= LED << 1;
  77.       LED = LED | 0x01;
  78.       }
  79.       for (i = 0 ; i < 2 ; i++)
  80. {
  81.       P0 = LED ;
  82.       Delay10ms(5);
  83.       LED= LED >> 1;
  84.       LED = LED | 0x01;
  85.       }
  86.       for (i = 0 ; i < 1 ; i++)
  87. {
  88.       P0 = LED ;
  89.       Delay10ms(5);
  90.       LED= LED << 1;
  91.       LED = LED | 0x01;
  92.       }
  93.       for (i = 0 ; i < 1 ; i++)

  94. {
  95.       P0 = LED ;
  96.       Delay10ms(5);
  97.       LED= LED >> 1;
  98.       LED = LED | 0x00;
  99.       }
  100.       for (i = 0 ; i < 7 ; i++)
  101. {     P0 = LED ;
  102.       Delay10ms(5);
  103.       LED= LED << 1;
  104.       LED = LED | 0x01;
  105.       }
  106.       for (i = 0 ; i < 7 ; i++)
  107. {
  108.       P0 = LED ;
  109.       Delay10ms(5);
  110.       LED= LED << 1;
  111.       LED = LED | 0x80;
  112.       }
  113.       for (i = 0 ; i < 6 ; i++)
  114. {
  115.       P0 = LED ;
  116.       Delay10ms(5);
  117.       LED= LED >> 1;
  118.       LED = LED | 0x80;
  119.       }
  120.       for (i = 0 ; i < 6 ; i++)
  121. {
  122.       P0 = LED ;
  123.       Delay10ms(5);
  124.       LED= LED << 1;
  125.       LED = LED | 0x80;
  126.       }
  127.       for (i = 0 ; i < 5 ; i++)
  128. {
  129.       P0 = LED ;
  130.       Delay10ms(5);
  131.       LED= LED >> 1;
  132.       LED = LED | 0x80;
  133.       }
  134.       for (i = 0 ; i < 5 ; i++)
  135. {
  136.       P0 = LED ;
  137.       Delay10ms(5);
  138.       LED= LED << 1;
  139.       LED = LED | 0x80;
  140.       }
  141.       for (i = 0 ; i < 4 ; i++)
  142. {
  143.       P0 = LED ;
  144.       Delay10ms(5);
  145.       LED= LED >> 1;
  146.       LED = LED | 0x80;
  147.       }
  148.       for (i = 0 ; i < 4 ; i++)
  149. {
  150.       P0 = LED ;
  151.       Delay10ms(5);
  152.       LED= LED << 1;
  153.       LED = LED | 0x80;
  154.       }
  155.       for (i = 0 ; i < 3 ; i++)
  156. {
  157.       P0 = LED ;
  158.       Delay10ms(5);
  159.       LED= LED >> 1;
  160.       LED = LED | 0x80;
  161.       }
  162.       for (i = 0 ; i < 3 ; i++)
  163. {
  164.       P0 = LED ;
  165.       Delay10ms(5);
  166.       LED= LED << 1;
  167.       LED = LED | 0x80;
  168.       }
  169.       for (i = 0 ; i < 2 ; i++)
  170. {
  171.       P0 = LED ;
  172.       Delay10ms(5);
  173.       LED= LED >> 1;
  174.       LED = LED | 0x80;
  175.       }
  176.       for (i = 0 ; i < 2 ; i++)
  177. {
  178.       P0 = LED ;
  179.       Delay10ms(5);
  180.       LED= LED << 1;
  181.       LED = LED | 0x80;
  182.       }
  183.       for (i = 0 ; i < 1 ; i++)
  184. {
  185.       P0 = LED ;
  186.       Delay10ms(5);
  187.       LED= LED >> 1;
  188.       LED = LED | 0x80;
  189.       }
  190.       for (i = 0 ; i < 1 ; i++)
  191. {
  192.       P0 = LED ;
  193.       Delay10ms(5);
  194.       LED= LED << 1;
  195.       LED = LED | 0x80;
  196.       }
  197.       for (i = 0 ; i < 7 ; i++)
  198. {
  199.       P0 = LED ;
  200.       Delay10ms(5);
  201.       LED= LED >> 1;
  202.       LED = LED | 0x80;
  203.       }
  204.       }
  205.       }
  206.       
  207.    
  208. void Delay10ms(unsigned int c)
  209. {
  210.     unsigned char a, b;

  211.      for (;c>0;c--)
  212. {
  213.         for (b=38;b>0;b--)
  214. {
  215.             for (a=130;a>0;a--);
  216.         }
  217.         }      
  218.         }
復制代碼


回復

使用道具 舉報

10#
ID:79544 發表于 2015-10-2 19:01 | 只看該作者
做花樣流水燈可以上網找找很多的。多學多練
回復

使用道具 舉報

11#
ID:91490 發表于 2015-10-2 19:31 | 只看該作者
騰飛的龍 發表于 2015-10-2 19:01
做花樣流水燈可以上網找找很多的。多學多練

多多指教,這是我第一個實驗。
回復

使用道具 舉報

12#
ID:91530 發表于 2015-10-2 20:35 | 只看該作者
for語句后面有個分號怎么執行下面的程序
回復

使用道具 舉報

13#
ID:91555 發表于 2015-10-3 11:20 | 只看該作者
caisanjiang 發表于 2015-10-2 20:35
for語句后面有個分號怎么執行下面的程序

我就說嘛,怎么沒人注意到這么明顯的錯誤,一眼就看到了
回復

使用道具 舉報

14#
ID:84299 發表于 2015-10-6 12:14 | 只看該作者
延時函數在哪?
回復

使用道具 舉報

15#
ID:55127 發表于 2015-10-7 09:39 | 只看該作者
這個沒得延時的函數
回復

使用道具 舉報

16#
ID:72462 發表于 2015-10-7 10:58 | 只看該作者
你賦值是0x01,也就是0000 0001,然后你右移干什么?右移肯定只亮一個燈,然后再熄滅。你改成左移試試
回復

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 性一交一乱一伦视频免费观看 | 久久精品日产第一区二区三区 | 97在线观视频免费观看 | 国产美女在线免费观看 | 91精品国产综合久久久密闭 | 免费在线看黄 | 色婷婷一区二区三区四区 | 久久精品欧美一区二区三区不卡 | 91国内精精品久久久久久婷婷 | 伊人狠狠 | 国产精品久久久久久吹潮日韩动画 | 99这里只有精品 | 中国一级大黄大片 | 一区二区在线 | 精品久久久久久久久久久院品网 | 在线观看av网站 | 福利视频1000 | 久久大| 成人免费观看视频 | 日韩中文字幕在线视频 | 久久精品国产亚洲一区二区三区 | 亚洲一区不卡 | 亚洲视频一区在线观看 | 久久精品久久综合 | 91成人影院| 欧美日韩中文国产一区发布 | 亚洲一二三区在线观看 | 国产成人精品一区二区 | 日本a视频 | 国产综合精品 | 99re视频这里只有精品 | 国产精品久久一区 | 韩国成人在线视频 | 国产精品国产三级国产aⅴ无密码 | 精品香蕉一区二区三区 | 欧美激情一区二区三区 | 国产精品视频一二三区 | a精品视频 | 亚洲一区三区在线观看 | 国产丝袜一区二区三区免费视频 | 国产精品一区在线播放 |