找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索

用Proteus動態(tài)顯示管輸出數(shù)字為什么有些顯示不出來?附單片機(jī)程序

查看數(shù): 3748 | 評論數(shù): 7 | 收藏 0
關(guān)燈 | 提示:支持鍵盤翻頁<-左 右->
    組圖打開中,請稍候......
發(fā)布時間: 2021-4-16 17:04

正文摘要:

我寫的單片機(jī)代碼是這樣的 #include<reg51.h> #define uchar unsigned char #define uint unsigned int sbit LE1=P2^7; sbit LE2=P2^6; void delay_ms(uint j) {uchar m,n; for(m=j;m>0;m--) for(n=30;n ...

回復(fù)

ID:906945 發(fā)表于 2021-4-17 11:37
mengzhixinheng 發(fā)表于 2021-4-16 22:05
其實是邏輯不嚴(yán)謹(jǐn)造成的,消影的本質(zhì)是重新初始化端口。位選數(shù)據(jù)沒有改變的時候,就打開段選自然會出錯。兩 ...

好噠好噠,我再體會體會,謝謝前輩
ID:906945 發(fā)表于 2021-4-17 11:36
wulin 發(fā)表于 2021-4-16 21:29
仿真與實物還是有區(qū)別的。在實物中不會殘缺,只是有鬼影。實踐中加消隱為佳。

好噠好噠,謝謝前輩
ID:89515 發(fā)表于 2021-4-16 22:05
其實是邏輯不嚴(yán)謹(jǐn)造成的,消影的本質(zhì)是重新初始化端口。位選數(shù)據(jù)沒有改變的時候,就打開段選自然會出錯。兩個數(shù)據(jù)有瞬間的覆蓋現(xiàn)象就會出現(xiàn)所謂的鬼影。不知道你能否明白!!
ID:213173 發(fā)表于 2021-4-16 21:29
笨學(xué)單片機(jī) 發(fā)表于 2021-4-16 20:02
不過大佬我發(fā)現(xiàn)就是不用前面的消隱,就把LE1=1放在P1=xuanma后面就可以呀,
void main()
{uchar code x ...

仿真與實物還是有區(qū)別的。在實物中不會殘缺,只是有鬼影。實踐中加消隱為佳。
ID:906945 發(fā)表于 2021-4-16 20:02
笨學(xué)單片機(jī) 發(fā)表于 2021-4-16 19:52
啊啊啊,可以了可以了,謝謝大佬謝謝大佬

不過大佬我發(fā)現(xiàn)就是不用前面的消隱,就把LE1=1放在P1=xuanma[ i]后面就可以呀,
  1. void main()
  2. {uchar code xuanma[6]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf};
  3. uchar code duanma[6]={0x3f,0x06,0x5b,0x4f,0x66,0x6d};
  4. uchar i;
  5. while(1)
  6. {for(i=0;i<6;i++)
  7. {P1=xuanma[i];LE1=1;
  8. LE1=0;
  9. P1=duanma[i];LE2=1;
  10. LE2=0;
  11. delay_ms(1);
  12. }}}
復(fù)制代碼

這是為什么呢?是不是如果我先寫P1=xuanma[ i],就先把P1的輸出給了鎖存器,這樣再用鎖存器就沒問題了嗎?
ID:906945 發(fā)表于 2021-4-16 19:52
wulin 發(fā)表于 2021-4-16 19:41
只要添加消隱語句就行了

啊啊啊,可以了可以了,謝謝大佬謝謝大佬
ID:213173 發(fā)表于 2021-4-16 19:41
只要添加消隱語句就行了
  1. void main()
  2. {
  3.         uchar code xuanma[6]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf};
  4.         uchar code duanma[6]={0x3f,0x06,0x5b,0x4f,0x66,0x6d};//顯示012345
  5.         uchar i;
  6.         while(1)
  7.         {
  8.                 P1=0x00;LE2=1;LE2=0;//段消隱
  9.                 P1=xuanma[i];LE1=1;LE1=0; //送位碼
  10.                 P1=duanma[i];LE2=1;LE2=0;//送段碼
  11.                 delay_ms(1);
  12.                 i=++i%6;
  13.         }
  14. }
復(fù)制代碼

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

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

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