欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 2045|回復(fù): 8
收起左側(cè)

單片機(jī)現(xiàn)在可以將p2流水燈左移顯示出來,再次按S2鍵無反應(yīng)

[復(fù)制鏈接]
ID:969579 發(fā)表于 2021-10-3 00:05 來自觸屏版 | 顯示全部樓層 |閱讀模式
單片機(jī)現(xiàn)在可以將p2流水燈左移顯示出來,再次按S2鍵無反應(yīng),求大神指點(diǎn)迷津,找了一天的漏洞沒找出來
mmexport1633190406266.png
mmexport1633190404396.png
回復(fù)

使用道具 舉報(bào)

ID:624769 發(fā)表于 2021-10-3 01:43 | 顯示全部樓層
你的通篇代碼,沒有S2………………

按你的代碼看, S1按下后,會(huì)開始左移,并始終在左移代碼中循環(huán),不出來。所以也不會(huì)再次判斷按鍵。
因?yàn)槟阌昧?while(1)  ,  他代表的意義是 死循環(huán)。當(dāng)代碼走到while(1), 就死在這個(gè)括號里了。
回復(fù)

使用道具 舉報(bào)

ID:969579 發(fā)表于 2021-10-3 10:37 | 顯示全部樓層

RE: 單片機(jī)現(xiàn)在可以將p2流水燈左移顯示出來,再次按S1鍵無反應(yīng)

188610329 發(fā)表于 2021-10-3 01:43
你的通篇代碼,沒有S2………………

按你的代碼看, S1按下后,會(huì)開始左移,并始終在左移代碼中循環(huán),不 ...

您好  首先很感謝您的回帖,聽了您的建議后將左移和右移的while(1)去掉,單片機(jī)的效果還是沒法判斷s1鍵再次按下,不過我有些頭緒了,謝謝
回復(fù)

使用道具 舉報(bào)

ID:332444 發(fā)表于 2021-10-3 12:40 | 顯示全部樓層
  1. 這么簡單功能用的著怎么多代碼?就是用一個(gè)按鍵按下左移再次按下改變方向這個(gè)功能?
  2. #include "REG52.h"
  3. sbit k=P1^0;
  4. main()
  5. {
  6.         char a=0,xd=0;
  7.         int ys=47474;
  8.         while(1)
  9.         {
  10.                 if(k==0&&++xd==0)
  11.                 {
  12.                         if(a==0)a=1;
  13.                         else a=0;
  14.                         while(k==0);
  15.                 }
  16.                 if(a)P2=a?P2<<1:P2>>1;
  17.                 while(--ys);
  18.                 ys=47474;
  19.         }
  20. }
  21. 試看這個(gè)直接寫未測試
復(fù)制代碼
回復(fù)

使用道具 舉報(bào)

ID:332444 發(fā)表于 2021-10-3 12:43 | 顯示全部樓層
忘記初始化了,添加一句代碼P2=0;在無限循環(huán)外。
回復(fù)

使用道具 舉報(bào)

ID:332444 發(fā)表于 2021-10-3 12:45 | 顯示全部樓層
還更正一點(diǎn)把if(a)刪除了
回復(fù)

使用道具 舉報(bào)

ID:332444 發(fā)表于 2021-10-3 12:47 | 顯示全部樓層
如果沒看到效果修改這句P2=a?P2<<1:P2>>1;為P2=a?P2>>1:P2<<1;
回復(fù)

使用道具 舉報(bào)

ID:624769 發(fā)表于 2021-10-3 20:03 | 顯示全部樓層
010329 發(fā)表于 2021-10-3 10:37
您好  首先很感謝您的回帖,聽了您的建議后將左移和右移的while(1)去掉,單片機(jī)的效果還是沒法判斷s1鍵 ...

你光是去掉了那兩個(gè)While(1) ,  但是你整個(gè)程序 沒有while(1), 是只會(huì)跑一遍,然后就結(jié)束的,所以,也不會(huì)反復(fù)判斷按鍵的。
回復(fù)

使用道具 舉報(bào)

ID:637144 發(fā)表于 2021-10-4 15:53 來自觸屏版 | 顯示全部樓層
兩個(gè)死循環(huán),有用都是假的
回復(fù)

使用道具 舉報(bào)

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

本版積分規(guī)則

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

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

快速回復(fù) 返回頂部 返回列表