找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 3705|回復(fù): 4
收起左側(cè)

單片機(jī)定時器做的秒表器為什么有些數(shù)字顯示不全?

[復(fù)制鏈接]
ID:906945 發(fā)表于 2021-4-28 16:03 | 顯示全部樓層 |閱讀模式
剛學(xué)定時器自己寫了這樣的程序,從0秒到9999秒的顯示
2021-04-28.png 2021-04-28 (1).png 2021-04-28 (3).png
單片機(jī)源程序如下:
#include<reg51.h>
#define uchar unsigned char#define uint unsigned int
uchar code duanma[10]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};
uchar code xuanma[4]={0x08,0x04,0x02,0x01};
uint m=0;
void delayms(uint j)
{uchar i;
for(;j>0;j--)
{i=250;
while(--i);
i=249;
while(--i);
} }
void display()
{P0=0xff;
P2=xuanma[0];
P0=duanma[m%10];
delayms(2);
P2=xuanma[1];
P0=duanma[(m/10)%10];
delayms(2);
P2=xuanma[2];
P0=duanma[(m/100)%10];
delayms(2);
P2=xuanma[3];
P0=duanma[m/100/10];
delayms(2);}
void time0() interrupt 1 using 1
{uchar j;
j++;
if(j==20)
{
  m++;j=0;}
  TH0=(65535-50000)/256;
  TL0=(65535-50000)%256;
}
void main()
{EA=1;ET0=1;
TMOD=0X01;
TH0=(65535-50000)/256;
TL0=(65535-50000)%256;
TR0=1;
while(1)
{display();}}

為什么用Proteus仿真會出現(xiàn)這種情況?求大佬不吝賜教

回復(fù)

使用道具 舉報

ID:824490 發(fā)表于 2021-4-28 16:30 | 顯示全部樓層
顯示不全查IO、查碼表。
回復(fù)

使用道具 舉報

ID:906945 發(fā)表于 2021-4-28 16:41 | 顯示全部樓層
名字不是重點 發(fā)表于 2021-4-28 16:30
顯示不全查IO、查碼表。

啊啊問題已經(jīng)解決,連線出了問題,謝謝謝謝
回復(fù)

使用道具 舉報

ID:213173 發(fā)表于 2021-4-28 16:42 | 顯示全部樓層
排阻接錯地方了,改接到P0口即可。
回復(fù)

使用道具 舉報

ID:684049 發(fā)表于 2021-4-28 17:31 | 顯示全部樓層
上拉電路接錯了吧
回復(fù)

使用道具 舉報

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

本版積分規(guī)則

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

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

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