欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136
標題:
單片機計數器 寫一個循環程序,求思路
[打印本頁]
作者:
20010410
時間:
2021-6-16 12:04
標題:
單片機計數器 寫一個循環程序,求思路
計數器模擬。
要求: (1)計數器有3個控制按鈕1號、2號、3號,1個計數按鈕A。
(2)按完1號按鈕,再按A鈕,計數暑進入加計數狀態,最大計到(5+組號) 2, 時間間隔為0.5s。
按完2號按鈕后,再按A按鈕,計數器進入減計數狀態,從(5+組號) 2開始減計數,時間、間隔為0.5s.
按完3號按鈕后,再按A按鈕,計數器保持顯示“Pp”字樣。
另外 :要求按下任意一個按鈕時,都會從頭計數
問一下各位大神怎么寫循環程序?
#include <reg51.h>
#define uchar unsigned char
#define uint unsigned int
sbit P10=P1^0;
sbit P11=P1^1;
sbit P12=P1^2;
sbit P13=P1^3;
uchar segcode[]={0x3F,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};
uchar bitcode[]={0x01,0x02};
uchar keycode1,keycode2;
unsigned char Num[2];
void delayms(uint m)
{
unsigned int n;
while(m--)
{
for(n=0;n<113;n++);
}
}
void numobuf(int i)
{
Num[1]=i/10;
Num[0]=i%10;
}
void display(void)
{
unsigned int i;
for(i=0;i<2;i++)
{
P2=bitcode[i];
P0=segcode[Num[i]];
delayms(1);
}
}
void display2(void)
{
unsigned int i;
for(i=0;i<2;i++)
{
P2=bitcode[i];
P0=0x73;
delayms(1);
}
}
uchar keyscan1(void)
{
keycode1=0;
if(P10==0)
{
delayms(10);
if(P10==0)
{
while(P10==0);
keycode1=1;
}
}
if(P11==0)
{
delayms(10);
if(P11==0)
{
while(P11==0);
keycode1=2;
}
}
if(P12==0)
{
delayms(10);
if(P12==0)
{
while(P12==0);
keycode1=3;
}
}
return keycode1;
}
uchar keyscan2(void)
{
keycode2=0;
if(P13==0)
{
delayms(10);
if(P13==0)
{
while(P13==0);
keycode2=1;
}
}
return keycode2;
}
main()
{
int a=0;
int i=0;
int j=0;
while(1)
{
P0=segcode[0];
keycode1=0;
keycode2=0;
a=keyscan1();
if(a==1)
{
while(keyscan2()==0);
for(i=0;i<36;i++)
{
for(j=0;j<25;j++)
{
numobuf(i);
display();
delayms(10);
}
}
}
if(a==2)
{
while(keyscan2()==0);
for(i=36;i>0;i--)
{
for(j=0;j<25;j++)
{
numobuf(i);
display();
delayms(10);
}
}
}
if(a==3)
{
while(keyscan2()==0);
while(1)
{
display2();
delayms(1);
}
}
}
}
復制代碼
7072FAB6-A754-4038-A710-8ED1A3A946C2.jpeg
(1.16 MB, 下載次數: 51)
下載附件
2021-6-16 12:02 上傳
作者:
xunzhaod
時間:
2021-6-17 16:05
給你一個思路,定義三個標志位,分別對應計數1,2,3.比如按下按鍵1,再按下按鍵a,flag1 =1;
在主循環判斷
if(flag1==1)
{
數據清零;
開始計數
}
if(flag2==1)
{
數據清零;
開始計數
}
歡迎光臨 (http://m.raoushi.com/bbs/)
Powered by Discuz! X3.1