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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索

單片機程序0到60計數(shù)個位逢5不顯示,十位逢1不顯示

查看數(shù): 3551 | 評論數(shù): 10 | 收藏 0
關燈 | 提示:支持鍵盤翻頁<-左 右->
    組圖打開中,請稍候......
發(fā)布時間: 2019-6-24 20:18

正文摘要:

單片機源程序如下: #include <reg52.h> #define uchar unsigned char #define uint unsigned int sbit DE=P2^1;       sbit WE=P2^2;    uint m,m0,m1,m2,gew,shiw; ucha ...

回復

ID:332444 發(fā)表于 2019-6-27 08:49
從現(xiàn)象反推出產生現(xiàn)象的原因是科學定律;這在程序調試中是最常用的分析方法,中醫(yī)也是這樣從病癥去反推產生病癥的原因從而對證治病,西醫(yī)何嘗不是從果究因去尋找各種病菌呢都一樣,從物理學上來說也是從果推因尋找現(xiàn)象背后的成因,如打雷閃電緣何產生去究其因,類推之化學界生物界等,又如破案從犯罪現(xiàn)場種種證據(jù)搜集去推導出犯罪的思想動機,總之從現(xiàn)象推導原因普遍存在于方方面面,因此是科學規(guī)律.
ID:207421 發(fā)表于 2019-6-27 01:02
忘了上圖

573.gif (1.07 MB, 下載次數(shù): 24)

如圖

如圖
ID:207421 發(fā)表于 2019-6-27 00:42
其實寫法是正確的,只是延時和消隱的問題, 主要是調好延時,仿真并非實際,仿真調得最好,實際不一定OK。

WE=1;
P1=xxxxxx;
delay(xxx);
P1=0xff;
WE=0;
delay(xxx);
ID:332444 發(fā)表于 2019-6-26 15:18
如論壇有人回復我的帖子說FOR循環(huán)不需要聲明變量,而我用WHILE需要聲明變量,這樣可笑荒謬的回復,他忘記了變量使用前需要聲明的基本原則了,試問變量不聲明FOR循環(huán)中如何使用?這就是典型的紙上談兵范.
至于鎖存具體如何工作鎖存數(shù)據(jù)脈沖上升沿下降沿等就不贅述,有興趣的自己去深究.
ID:332444 發(fā)表于 2019-6-26 13:11
紙上談兵編寫的教科書早該改了,P1=0xfe; WE=1; WE=0;我這樣寫的才是正確的,無論是從理論或仿真或實物都能正確無誤執(zhí)行,準備好數(shù)據(jù)打開鎖存關閉鎖存送入的是的的確確想要的正確的值;
而教科書WE=1; P1=0xfe; WE=0;這寫在打開鎖存瞬間寫入的是上一個循環(huán)后存留的值,再送入想要的值就造成種種魅像,看不到某些數(shù)碼顯示或出現(xiàn)魅影(鬼影)或數(shù)碼顯示黯淡等等,如有的說使用CHAR寫延時比較節(jié)約內存,殊不知使用2個CHAR與使用1個INT是一樣的,因此教科書其實在紙上談兵的人編寫充斥種種誤人子弟的謬論.
ID:570691 發(fā)表于 2019-6-25 20:17
xianfajushi 發(fā)表于 2019-6-25 10:08
在仿真中確實存在修改一下代碼即可 P1=0xfe; WE=1; WE=0;

感謝幫助,這樣修改確實解決了這個問題。請問這是什么問題?這是仿真軟件的問題嗎,我看書中的格式都是先開鎖存輸入數(shù)據(jù)再關鎖存這種順序。。。為什么在proteus里要改成先送數(shù)據(jù)再開關鎖存?
ID:213173 發(fā)表于 2019-6-25 11:11
okwtony 發(fā)表于 2019-6-25 10:08
感謝幫助,我試了修改delay,比較低的情況確實不會有閃爍的問題,但是還是會丟失個別數(shù)字。。。如果延長d ...

樓主的延時程序寫得不規(guī)范,是不是影響的因素不確定。
void delay(uint ms)
{
        uint i,j;
        for(i=ms;i>0;i--)
                for(j=110;j>ms;j--);    //通常寫法for(j=110;j>0;j--);
}
ID:332444 發(fā)表于 2019-6-25 10:08
在仿真中確實存在修改一下代碼即可 P1=0xfe; WE=1; WE=0;
ID:570691 發(fā)表于 2019-6-25 10:08
wulin 發(fā)表于 2019-6-25 05:38
沒有發(fā)現(xiàn)樓主所述現(xiàn)象,程序也沒有嚴重問題。只是顯示程序中延時delay(20)太長,有可能在實物中數(shù)碼管會閃 ...

感謝幫助,我試了修改delay,比較低的情況確實不會有閃爍的問題,但是還是會丟失個別數(shù)字。。。如果延長delay到100或者200這樣,雖然顯示會閃爍,但是1和5會顯示出來,盡管1和5閃爍比其他數(shù)字更嚴重,反而因為閃爍才能看到這兩個數(shù)字。。。真是怪事。。
ID:213173 發(fā)表于 2019-6-25 05:38
沒有發(fā)現(xiàn)樓主所述現(xiàn)象,程序也沒有嚴重問題。只是顯示程序中延時delay(20)太長,有可能在實物中數(shù)碼管會閃爍。建議延時不大于2ms。


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

Powered by 單片機教程網

快速回復 返回頂部 返回列表