導航:首頁 > 操作系統 > 秒錶單片機

秒錶單片機

發布時間:2022-01-13 08:46:32

『壹』 51單片機做的秒錶

if(c==0)
{TR1=1;c++;}
else if(c==2)
{TR1=0;c++;}
else if(c==3)

怎麼直接判斷c==2 了?

如下修改?
if(c==0)
{TR1=1;c++;}
else if(c==1)
{TR1=0;c++;}
else if(c==2)

『貳』 單片機秒錶設計!!

題目:秒錶(9999秒)
(1)採用定時器...,利用開發板上的按鈕,...
--------
樓主應該給出你的開發板上的顯示電路和按鍵電路。

『叄』 51單片機完成簡易秒錶的設計

硬體電路簡單,我說下軟體部分
用一個定時器定時中斷做鍵盤掃描,數碼管用動態掃描的方法,數碼管顯示和按鍵處理都放在主程序中進行

『肆』 單片機秒錶

用定時器加數碼管做就可以了吧

『伍』 單片機 秒錶

下面是我寫的時鍾程序,你看看,再修改修改就可以了,希望對你有所幫助!
#include<reg52.h>
#define uchar unsigned char
#define uint unsigned int
sbit key1=P3^4;
sbit key2=P3^5;
sbit key3=P3^6;
sbit key4=P3^7;
sbit la=P2^6;
sbit wela=P2^7;
uchar code table[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};
uchar num,num1,num2,num3,bq,bb,qian,,shi,ge;

void delayms(uint xms)
{
uint i,j;
for(i=xms;i>0;i--)
for(j=110;j>0;j--);
}

void display() //顯示六個數碼管,每兩個分別表示時,分,秒。
{

bq=num3/10;
bb=num3%10;
qian=num2/10;
=num2%10;
shi=num1/10;
ge=num1%10;
la=1;
P0=table[bq];
la=0;
P0=0xff;
wela=1;
P0=0xfe;
wela=0;
delayms(1);

la=1;
P0=table[bb];
la=0;
P0=0xff;
wela=1;
P0=0xfd;
wela=0;
delayms(1);

la=1;
P0=0x80;
la=0;
P0=0xff;
wela=1;
P0=0xfd;
wela=0;
delayms(1);

la=1;
P0=table[qian];
la=0;
P0=0xff;
wela=1;
P0=0xfb;
wela=0;
delayms(1);

la=1;
P0=table[];
la=0;
P0=0xff;
wela=1;
P0=0xf7;
wela=0;
delayms(1);

la=1;
P0=0x80;
la=0;
P0=0xff;
wela=1;
P0=0xf7;
wela=0;
delayms(1);

la=1;
P0=table[shi];
la=0;
P0=0xff;
wela=1;
P0=0xef;
wela=0;
delayms(1);

la=1;
P0=table[ge];
la=0;
P0=0xff;
wela=1;
P0=0xdf;
wela=0;
delayms(1);
}

void keyscan() //四個獨立建盤控制調時
{
if(key1==0)
{
delayms(10);
num3++;
if(num3==24)
num3=0;
while(!key1) ;

}
if(key2==0)
{
delayms(10);
num2++;
if(num2==60)
num2=0;
while(!key2);
}
if(key3==0)
{
delayms(10);
if(num2==0)
num2=60;
num2--;
while(!key3);
}
if(key4==0)
{
delayms(10);
num1=0;num2=0;num3=0;
while(!key4);
}
}
void main()
{
TMOD=0X01;
EA=1;
ET0=1;
TR0=1;
TH0=(65536-45872)/256;
TL0=(65536-45872)%256;
while(1)
{ keyscan();
display();
}
}

void T0_time() interrupt 1
{
TH0=(65536-45872)/256;
TL0=(65536-45872)%256;
num++;
if(num==20)
{
num=0;
num1++;
if(num1==60)
{
num1=0;
num2++;
if(num2==60)
{
num2=0;
num3++;
if(num3==24)
num3=0;

}

}

}
}

『陸』 設計一個秒錶(十秒或者三十秒)單片機編程

這是一個秒錶,有按鍵實現 啟動、暫停核清零功能。
#include <reg51.H>
sbit P3_5 =P3^5;
unsigned char code dispcode[]={0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,
0x80,0x90,0x88,0x83,0xC6,0xA1,0x86,0x8E,0x00};
unsigned char second;
unsigned char keycnt;
unsigned int tcnt;

void main(void)
{
unsigned char i,j;

TMOD=0x02;
ET0=1;
EA=1;
second=0;
P1=dispcode[second/10];
P2=dispcode[second%10];
while(1)
{
if(P3_5==0)
{
for(i=20;i>0;i--)
for(j=248;j>0;j--);
if(P3_5==0)
{
keycnt++;
switch(keycnt)
{
case 1:
TH0=0x06;
TL0=0x06;
TR0=1;
break;
case 2:
TR0=0;
break;
case 3:
keycnt=0;
second=0;
P1=dispcode[second/10];
P2=dispcode[second%10];
break;
}
while(P3_5==0);
}
}
}
}

void t0(void) interrupt 1 using 0
{
tcnt++;
if(tcnt==4000)
{
tcnt=0;
second++;
if(second==100)
{
second=0;
}
P1=dispcode[second/10];
P2=dispcode[second%10];
}
}

『柒』 單片機秒錶

……
if (Key2 == 0) {
TR0 = 0;
while(Key2 == 0) Display();//不間斷顯示
}
TR0 = 1;
……

『捌』 用51單片機做秒錶設計

遇到懶學生了,這個不就是一個定時器加顯示嗎,有什麼難的,自己翻翻微機原理書就可以做 了,也就四五十行匯編語言就行了,用C就更加簡單,具體的方法:用定時器定時0.2ms,定時到了就給固定的一個變數加1,然後判斷這個變數是不是到了500,到了就清零然後把秒的變數加1,就是1s了,(分和時也是如此,秒為60,秒清零,分加1);主程序就只管顯示和按鍵,按鍵隨便用中斷還是查詢,我建議你查詢,因為程序簡單,顯示程序就是查個表,自己把數碼顯示的斷碼表編好就可以了,把秒的數值查表對應顯示,完了就查詢按鍵,按鍵累加,值為0是沒按,1是按1次,2是按2次,3是按3次,同時清零,很簡單的

『玖』 單片機 簡易秒錶

#include<REG51.H>
#define uchar unsigned char
#define uint unsigned int
sbit k1=P2^0;
sbit k2=P2^1;
uchar a=0;//計中斷次數
uchar second=0,minute=0;
void delayms(uint i) //1ms延時程序
{
uint j;
for(;i>0;i--)
{
for(j=0;j<125;j++)
{;}
}
}
主程序:
void main(void)
{
TMOD=0X01;
TH0=(65536-50000)/256;//定時50ms
TL0=(65536-50000)%256;
ET0=1; EA=1;
TR0=1;
while(1)
{
if(K1==0)
{
delayms(10);
if(K1==0) { TR0=!TR0;while(K1==0);}//暫停/啟動
}
if(K2==0)
{
delayms(10);
if(K2==0) { a=0;second=0;minute=0;}//清0
}
display();//顯示函數,與硬體有關
}
}
中斷程序
void timer0 ()inretrupt 1
{
TH0=(65536-50000)/256;
TL0=(65536-50000)%256;
a++;
if(a==20)
{
a=0;
second++;
if(second==60){second=0;minute++;}
}
}

『拾』 單片機(秒錶製作)

這樣的程序和這樣的電路在模擬上面絕對沒問題,但我保證你這么照著焊接個實物出來絕對跑不起來,你再設計下晶振電路。89S51裡面沒有晶振,你不外接它就跑不起來我建議你在加個復位電路。像你用這個數碼管的話共陰的我覺得最好不要用三極體放大(第一,成本變高,我買過,一個三極體2毛左右如果你買的不多還更貴。第二,電路連接變復雜了,容易出錯),所以推薦你在段選端接上拉電阻(1K左右即可),整好8個引腳接你的八個段選口,去掉為選端的三級管然後直接與單片機相連(還有的你位選端最好不要接P3口,你看你P2口不是還留有好多嗎,接到那裡,P3主要用第二功能)還有一個就看你個人興趣了,就是電源設計,很簡單的,加一個三端穩壓管,這樣然你的工作電壓穩定在5V。哦,最後還有你的按鈕設計,幹嘛接P0口,P3口現成的外中斷就可以用啊,而且效果要更好程序就不看了,反正我匯編很爛,搞不好你對的我還說成錯的,呵呵

閱讀全文

與秒錶單片機相關的資料

熱點內容
vue預編譯部分頁面 瀏覽:876
linux批量解壓gz 瀏覽:578
論文中的演算法描述 瀏覽:812
增量背離量指標源碼 瀏覽:512
安卓手機為什麼切屏 瀏覽:278
加密市場介紹 瀏覽:606
手機解壓神器小游戲 瀏覽:531
android彈出列表 瀏覽:311
androidwear軟體 瀏覽:988
單片機輸入版 瀏覽:496
哪裡找橫屏圖片素材app 瀏覽:850
linuxifcfgeth0沒有 瀏覽:1000
光遇光遇伺服器已滿怎麼解決 瀏覽:747
macpythonmodule 瀏覽:805
exo在哪裡下載app 瀏覽:785
it程序員在國企的感受 瀏覽:500
快手app哪裡看物流 瀏覽:214
梁的加密區在梁的什麼位置 瀏覽:639
蘿卜源碼編譯 瀏覽:983
安卓手機連不上蘋果熱點是為什麼 瀏覽:438