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

標題: 請問如何優化這段keil C51單片機花樣流水燈代碼?中間的兩盞燈不亮 [打印本頁]

作者: asd2580    時間: 2021-9-6 16:33
標題: 請問如何優化這段keil C51單片機花樣流水燈代碼?中間的兩盞燈不亮
這是一段花樣流水燈的代碼,想要燈從兩邊往中間亮,一直循環,但現在最中間的兩盞燈不亮,請問如何解決?
單片機源程序如下:
#include <reg52.h>
void DelayMs(unsigned int n);
/*------------------*/
void main (void)
{
unsigned char temp =0x7E;
unsigned int temph , templ;

while(1)
{ P1=temp;
DelayMs(2000);
{ temph=temp & 0xf0,templ=temp & 0x0f;

temph=(temph >> 1)|0x80,
templ=(templ << 1)|0x01;

temp=temph|templ;}

if(temp==0xff)
temp=0x7E; }
}
/*---------------------*/
void DelayMs(unsigned int n)
{
unsigned int i,j;
for(i=0;i<n;i++)
{ for(j=110;j>0;j--); }

}

1.jpg (354.3 KB, 下載次數: 45)

1.jpg

2.jpg (494.48 KB, 下載次數: 35)

2.jpg

作者: 鄭漢松    時間: 2021-9-6 17:44
#include <reg52.h>
void DelayMs(unsigned int n);
/*------------------*/
void main (void)
{
unsigned char temp =0x7E;
unsigned int temph , templ;

while(1)
{ P1=temp;
DelayMs(2000);
if(temp==0xff)
temp=0x7E;
{ temph=temp & 0xf0,templ=temp & 0x0f;

temph=(temph >> 1)|0x80,
templ=(templ << 1)|0x01;

temp=temph|templ;}

}
}
/*---------------------*/
void DelayMs(unsigned int n)
{
unsigned int i,j;
for(i=0;i<n;i++)
{ for(j=110;j>0;j--); }

}

作者: ZMRGHY    時間: 2021-9-6 18:02
  1. #include <reg52.h>
  2. void DelayMs(unsigned int n);
  3. /*------------------*/
  4. void main (void)
  5. {
  6. unsigned char temp =0x7E;
  7. unsigned int temph , templ;

  8. while(1)
  9. { P1=temp;
  10. DelayMs(2000);
  11. { temph=temp & 0xf0,templ=temp & 0x0f;

  12. temph=(temph >> 1)|0x80,
  13. temph &= 0xf0;
  14. templ=(templ << 1)|0x01;
  15. templ &= 0x0f;
  16. temp=temph|templ;}

  17. if(temp==0xff)
  18. temp=0x7E; }
  19. }
  20. /*---------------------*/
  21. void DelayMs(unsigned int n)
  22. {
  23. unsigned int i,j;
  24. for(i=0;i<n;i++)
  25. { for(j=110;j>0;j--); }

  26. }
復制代碼

作者: ZMRGHY    時間: 2021-9-6 18:11
  1. #include <reg52.h>
  2. void DelayMs(unsigned int n);
  3. /*------------------*/
  4. void main (void)
  5. {
  6. unsigned char temp =0x7E;
  7. unsigned int temph , templ;

  8. while(1)
  9. { P1=temp;
  10. DelayMs(2000);
  11. { temph=temp & 0xf0,templ=temp & 0x0f;

  12. temph=(temph >> 1)|0x80,
  13. temph &= 0xf0;
  14. templ=(templ << 1)|0x01;
  15. templ &= 0x0f;
  16. temp=temph|templ;}

  17. if(temp==0xff)
  18. temp=0x7E; }
  19. }
  20. /*---------------------*/
  21. void DelayMs(unsigned int n)
  22. {
  23. unsigned int i,j;
  24. for(i=0;i<n;i++)
  25. { for(j=110;j>0;j--); }

  26. }
復制代碼

作者: ZMRGHY    時間: 2021-9-6 18:22





沒什么問題呀
作者: ZMRGHY    時間: 2021-9-6 18:31
  1. #include <reg52.h>
  2. void DelayMs(unsigned int n);
  3. /*------------------*/
  4. void main (void)
  5. {
  6. unsigned char temp =0x7E;
  7. unsigned int temph , templ;

  8. while(1)
  9. { P1=temp;
  10. DelayMs(2000);
  11. {

  12. temph=((temp >> 1)|0x80) & 0xf0,
  13. templ=((temp << 1)|0x01) & 0x0f;

  14. temp=temph|templ;}

  15. if(temp==0xff)
  16. temp=0x7E; }
  17. }
  18. /*---------------------*/
  19. void DelayMs(unsigned int n)
  20. {
  21. unsigned int i,j;
  22. for(i=0;i<n;i++)
  23. { for(j=110;j>0;j--); }

  24. }
復制代碼



簡化后的。。。。溫故知新,,,溫習一下位移運算。。。。
作者: ZMRGHY    時間: 2021-9-6 19:24
小意思,用不再寫一個從中間向倆端的流水燈呀
作者: asd2580    時間: 2021-9-8 13:00
ZMRGHY 發表于 2021-9-6 19:24
小意思,用不再寫一個從中間向倆端的流水燈呀

厲害了大師,不用了,我自己想想把它搞定




歡迎光臨 (http://www.zg4o1577.cn/bbs/) Powered by Discuz! X3.1
主站蜘蛛池模板: 九九九视频 | 国产亚洲欧美另类一区二区三区 | 91在线视频播放 | 丁香婷婷久久久综合精品国产 | 久久成人精品视频 | 国产精品视频一区二区三区不卡 | 国产成人免费在线观看 | 成人影院网站ww555久久精品 | 亚洲婷婷一区 | 久久国产精品-国产精品 | 国产1区在线| 精品亚洲一区二区 | 国产精品久久久久久久久免费高清 | 一区二区三区成人 | 亚洲国产精品一区二区第一页 | 日韩精品视频在线播放 | 欧美一区视频 | 91看片网 | 久久国产精品视频 | av免费在线观看网站 | 国产在线小视频 | 美女黄18岁以下禁止观看 | 欧美性久久 | 日韩毛片视频 | 欧美5区 | 亚洲精品乱码久久久久v最新版 | 国产精品我不卡 | 亚洲人在线播放 | 99国产视频 | 亚洲一二三区av | 亚洲自拍偷拍欧美 | 亚洲欧洲在线观看视频 | 午夜免费观看网站 | av大片| 中文字幕不卡视频在线观看 | 亚洲男人天堂网 | 亚洲综合中文字幕在线观看 | 一区二区国产精品 | 国产在线小视频 | 亚洲精品2| 欧美一级欧美三级在线观看 |