找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 2676|回復(fù): 6
打印 上一主題 下一主題
收起左側(cè)

大佬幫我看看這個單片機(jī)數(shù)碼管顯示程序哪里出錯了

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:249856 發(fā)表于 2017-11-15 21:02 | 只看該作者 |只看大圖 回帖獎勵 |倒序?yàn)g覽 |閱讀模式
#include"reg51.h"
#include"stdio.h"
unsigned char Pos;
unsigned char number;
unsigned char i;
unsigned char NUM[10]={0xc0,0xf9,0xa4,0xb0,
0x99,0x92,0x82,0xf8,0x80,0x90};
void Timer0_init  ();
void xio() ;
void display_num(unsigned char num,unsigned char Pos) ;



void main()
{
   Timer0_init ();
   while(1);
           
}

void Timer0_init  ()        
{
EA=1;
ET0=1;
TMOD=0x02;
TH0=0xfe;
TL0=0x0c;
TR0=1;
Pos=0x01;
}

void xio() interrupt 1
{
for(i=1;i<=8;i++)         
  {
   display_num(i,Pos);
   Pos=Pos<<1;
   display_num(i,0);
  }
}
                                
void display_num(unsigned char num,unsigned char Pos)
{
  if(number!=0)
   P0=NUM[num];
   P2=Pos;


}
數(shù)碼管顯示程序


搜狗截圖20171115205914.png (108.35 KB, 下載次數(shù): 26)

搜狗截圖20171115205914.png
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復(fù)

使用道具 舉報(bào)

來自 5#
ID:249876 發(fā)表于 2017-11-15 22:02 | 只看該作者
首先你的仿真圖可以再優(yōu)化一些,布線橫平豎直比較美觀;可以先檢查一下你的八位數(shù)碼管是共陰的還是共陽,數(shù)碼管一定要和代碼結(jié)合上,你的顯示函數(shù)里面的if語句里的條件是有問題的吧!你檢查一下。

評分

參與人數(shù) 1黑幣 +20 收起 理由
admin + 20 回帖助人的獎勵!

查看全部評分

回復(fù)

使用道具 舉報(bào)

來自 6#
ID:248450 發(fā)表于 2017-11-15 22:03 | 只看該作者
void display_num(unsigned char num,unsigned char Pos)
{
  if(number!=0)
   P0=NUM[num];
   P2=Pos;


}
首先,你這個number雖然定義了,但是你并沒有給它賦值。
其次,你要知道你那個中斷函數(shù),當(dāng)每次觸發(fā)中斷時(我也就沒去算你定了多長時間了),這個for循環(huán)就執(zhí)行個8次,也就是會,唰的一下,顯示,移位,顯示。。。很快就結(jié)束了。然后,8次之后呢,你又沒有給Pos重新賦值(定時器初始化只會執(zhí)行一次的)。所以無論有沒有顯示,這個過程很快就結(jié)束了,你可能什么都觀察不到。

以上,我并沒有試驗(yàn),只是看了一下你的代碼,若有不對之處,還望見諒。

評分

參與人數(shù) 1黑幣 +50 收起 理由
admin + 50 回帖助人的獎勵!

查看全部評分

回復(fù)

使用道具 舉報(bào)

沙發(fā)
ID:249856 發(fā)表于 2017-11-15 21:04 | 只看該作者
求大佬幫忙看看,幫忙改改
回復(fù)

使用道具 舉報(bào)

板凳
ID:249864 發(fā)表于 2017-11-15 21:20 | 只看該作者
看不懂
回復(fù)

使用道具 舉報(bào)

地板
ID:248394 發(fā)表于 2017-11-15 21:44 | 只看該作者
有啥報(bào)錯提示不
回復(fù)

使用道具 舉報(bào)

7#
ID:126608 發(fā)表于 2017-11-16 17:06 | 只看該作者
你用了共陽的段碼,就必須用pnp三極管,你卻用了npn三極管。
回復(fù)

使用道具 舉報(bào)

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

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

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

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