導航:首頁 > 操作系統 > 單片機數碼管讀數很快

單片機數碼管讀數很快

發布時間:2022-12-11 16:46:22

單片機;為何LED1不閃爍,為何數碼管變化速度比一秒快(已經將晶振設為11.0592)

void time2() interrupt 3
{
TH0=(65536-45872)/256;--改成 TH1
TL0=(65536-45872)%256;--改成 TL1
……

再試。

② 單片機八個數碼管動態顯示0~8,為什麼刷新太快顯示不了

顯示了,你看不見
每一位字要點亮4~10ms,人眼才能看見

③ 單片機交通燈課程設計數碼管時間走太快了,不知道是不是代碼問題(附代碼)

單片機交通燈數碼管時間走太快了,就是代碼問題。這代碼寫的太神奇了。看程序,T0定時是50ms,那應該是中斷20次才是1秒,那個9是怎麼算的來的?這個結果就是秒計時快了。



這樣計秒非常不準確。

④ 這是一個單片機數碼管從0往上加的程序,它的頻率有點快,1秒跳2個數字,幫忙看下怎麼改一秒跳一個數

你好
把延時時間加長,就能變慢
delay7ms();
多復制幾次

⑤ 單片機為何led1不亮為何數碼管顯示速度比一秒快((晶振11.0592已經設置)

你這個定時中斷函數timer2(),有問題,interrupt 3應該是定時器1,而不是定時器0,所以TH0、TL0應該是TH1/TL1。你先改一下試試

⑥ 51單片機問題,自己弄的一個電子鍾,出現數字變化很快(秒變的很快),什麼原因,求解釋

試試下列修改:
void timer0() interrupt 1
{
TH0 = (65536 - 250) / 256;
TL0 = (65536 - 250) % 256;
tcnt++;
mstcnt++;
if(tcnt == 8) { //2毫秒定時,2毫秒刷新一次數碼管.
tcnt = 0;
P0 = anxuan[weitable[jishu]];
P2 = xunhuan[jishu];
jishu++;
if(jishu == 6) jishu = 0;
}
if(mstcnt == 40000) { //1s時.
mstcnt = 0;
second++; //秒加1
if(second == 60) {
second = 0; //秒清零.
minite++; //分加1
if(minite == 60) {
minite = 0;
hour++;
if(hour == 24) hour = 0;
}
}
weitable[0] = second % 10;
weitable[1] = second / 10;
weitable[2] = minite % 10;
weitable[3] = minite / 10;
weitable[4] = hour % 10;
weitable[5] = hour / 10;
}
}
//===============
你關鍵性的錯誤在於下一條:
if(mstcnt==40000);//1s時
注意到了嗎?末尾,多了一個分號。

⑦ 51單片機做的秒錶顯示在數碼管上比實際快

頻率是 11.0592MHz?

定時時間,不宜採用 1ms、0.5ms。

按照這樣的時間,求出的初始值,會有小數。

取整後,必然會有誤差。
----
(計數1000 時,...計數2000)

你按照計數 900、1200、1800 來設定初始值,再試試看。

⑧ 單片機數碼管上的數字以200ms的速度從300減到253時停止,led以1s10次的速度閃爍

#include <reg52.h>
#define uint unsigned int
#define uchar unsigned char
uchar code table[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0x88,0x83,0xc6,0xa1,0x86,0x8e};//共陽級數碼管碼表0-f
uchar led=0x00;
uchar cnt=0,dis[3],scan;
uint dat=300;
void t0isr() interrupt 1
{
TH0=(65536-50000)/256;
TL0=(65536-50000)%256;
cnt++;
cnt%=4;
if(cnt==0)dat--;
if(dat<=253)
{
dat=253;
P1=led;
led=~led;
}
}
void t1isr() interrupt 3
{
TH1=(65536-5000)/256;
TL1=(65536-5000)%256;
P2=1<<scan;
P0=table[dis[scan]];
scan++;
scan%=3;
}
void main()
{
TMOD=0x11;
TH0=(65536-50000)/256;
TL0=(65536-50000)%256;
ET0=1;
TH1=(65536-5000)/256;
TL1=(65536-5000)%256;
ET1=1;
TR0=1;
TR1=1;
EA=1;
while(1)
{
dis[0]=dat/100;
dis[1]=dat%100/10;
dis[2]=dat%10;
}
}

閱讀全文

與單片機數碼管讀數很快相關的資料

熱點內容
dvd光碟存儲漢子演算法 瀏覽:755
蘋果郵件無法連接伺服器地址 瀏覽:958
phpffmpeg轉碼 瀏覽:669
長沙好玩的解壓項目 瀏覽:140
專屬學情分析報告是什麼app 瀏覽:562
php工程部署 瀏覽:831
android全屏透明 瀏覽:730
阿里雲伺服器已開通怎麼辦 瀏覽:801
光遇為什麼登錄時伺服器已滿 瀏覽:300
PDF分析 瀏覽:482
h3c光纖全工半全工設置命令 瀏覽:140
公司法pdf下載 瀏覽:381
linuxmarkdown 瀏覽:350
華為手機怎麼多選文件夾 瀏覽:681
如何取消命令方塊指令 瀏覽:347
風翼app為什麼進不去了 瀏覽:776
im4java壓縮圖片 瀏覽:360
數據查詢網站源碼 瀏覽:148
伊克塞爾文檔怎麼進行加密 瀏覽:888
app轉賬是什麼 瀏覽:162