久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

標題: 單片機電子時鐘 請教大佬哪里出錯了? [打印本頁]

作者: Qfunwell    時間: 2018-11-20 18:35
標題: 單片機電子時鐘 請教大佬哪里出錯了?
本人初學者,課設要做一個電子時鐘,仿真的時候什么都不顯示,程序和電路圖都在下面。

318dc97f02b67e43.jpg (37.27 KB, 下載次數: 26)

318dc97f02b67e43.jpg

-4a575c0a754341a8.jpg (43.16 KB, 下載次數: 22)

-4a575c0a754341a8.jpg

1ae49a71347bf844.jpg (27.87 KB, 下載次數: 16)

1ae49a71347bf844.jpg

6417c0be567b13b6.png (46.36 KB, 下載次數: 24)

6417c0be567b13b6.png

作者: HC6800-ES-V2.0    時間: 2018-11-21 09:11
讀你的程序好費眼睛的。
直接發程序出來,還可以在我的電腦上編譯,我的板子上試驗找問題。
作者: wubingbing    時間: 2018-11-21 09:19
這樣不能編輯還是把源碼發出來比較好
作者: zl2168    時間: 2018-11-21 10:56
本帖最后由 zl2168 于 2018-11-21 22:58 編輯

給你介紹一個參考案例,自己去琢磨吧!
實例94  模擬電子鐘(由80C51定時器產生秒時基)

實例94 模擬電子鐘(由80C51定時器產生秒時基).rar (43.05 KB, 下載次數: 7)
Proteus仿真一下,確認有效。
以上摘自張志良編著《80C51單片機仿真設計實例教程——基于Keil CProteus》清華大學出版社ISBN 978-7-302-41682-1內有常用的單片機應用100案例,用于仿真實驗操作,電路與程序真實可靠可信可行。書中電路和程序設計有詳細說明,程序語句條條有注解。

作者: Qfunwell    時間: 2018-11-21 19:07
HC6800-ES-V2.0 發表于 2018-11-21 09:11
讀你的程序好費眼睛的。
直接發程序出來,還可以在我的電腦上編譯,我的板子上試驗找問題。

#include<reg51.h>
#define char unsigned char
char code dis_7[12] ={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0xb2,0xf8,0x80,0x90,0xff,0xbf};
char code scan_con[8] = {0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f};
char data dis[8] = {0x00,0x00,0x0b,0x00,0x00,0x0b,0x00,0x00};
char data timedata[3] = {0x00,0x00,0x00};
char data ms50=0x00, con=0x00, con1=0x00, con2=0x00;
sbit key0 = P1^0;
sbit key1 = P1^1;
sbit key2 = P1^2;
delaylms(int t)
{
int i,j;
for(i=0;i<t;i++)
for(j=0;j<120;j++)
;
}
keyscan()
{
EA=0;
if(key0 == 0)
{
delaylms(10);
while(key0 == 0);
con++;TR0=0;ET0=0;
if(con >= 3)
{con=0;TR0=0;ET0=0;}
}
if(con != 0)
{
if(key1 == 0)
{
delaylms(10);
while(key1 == 0);
timedata[con]++;
if(con == 2) con1=24; else con1=60;
if(timedata[con] >= con1)
{timedata[con] = 0;}
}
}
if(con != 0)
{
if(key2 == 0)
{
delaylms(10);
while(key2 == 0);
timedata[con]--;
if(con == 2) con2=23; else con2=59;
if(timedata[con] <= 0)
{timedata[con] = con2;}
}
}
EA=1;
}
scan()
{
char k;
dis[0]=timedata[0]%10; dis[1]=timedata[0]/10;
dis[3]=timedata[1]%10; dis[4]=timedata[1]/10;
dis[6]=timedata[2]%10; dis[7]=timedata[2]/10;
for (k=0;k<8;k++)
{
P0=dis_7[dis[k]]; P2=scan_con[k]; delaylms(1); P2=0xff;
}
}
main()
{
TH0=0x3c; TL0=0xb0;
TMOD=0x01; ET0=1; TR0=1; EA=1;
while(1)
{
scan();
keyscan();
}
}
void time_intt0(void) interrupt 1
{
ET0=0; TR0=0; TH0=0x3c; TL0=0xb0; TR0=1;
ms50++;
if(ms50 == 20)
{
ms50=0x00; timedata[0]++;
if(timedata[0] == 60)
{
timedata[0]=0; timedata[1]++;
if(timedata[1] == 60)
{
timedata[1]=0; timedata[2]++;
if(timedata[2] == 24)
{timedata[2] = 0;
}
}
}
}
ET0 = 1;
}

作者: Qfunwell    時間: 2018-11-21 19:08
wubingbing 發表于 2018-11-21 09:19
這樣不能編輯還是把源碼發出來比較好

#include<reg51.h>
#define char unsigned char
char code dis_7[12] ={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0xb2,0xf8,0x80,0x90,0xff,0xbf};
char code scan_con[8] = {0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f};
char data dis[8] = {0x00,0x00,0x0b,0x00,0x00,0x0b,0x00,0x00};
char data timedata[3] = {0x00,0x00,0x00};
char data ms50=0x00, con=0x00, con1=0x00, con2=0x00;
sbit key0 = P1^0;
sbit key1 = P1^1;
sbit key2 = P1^2;
delaylms(int t)
{
int i,j;
for(i=0;i<t;i++)
for(j=0;j<120;j++)
;
}
keyscan()
{
EA=0;
if(key0 == 0)
{
delaylms(10);
while(key0 == 0);
con++;TR0=0;ET0=0;
if(con >= 3)
{con=0;TR0=0;ET0=0;}
}
if(con != 0)
{
if(key1 == 0)
{
delaylms(10);
while(key1 == 0);
timedata[con]++;
if(con == 2) con1=24; else con1=60;
if(timedata[con] >= con1)
{timedata[con] = 0;}
}
}
if(con != 0)
{
if(key2 == 0)
{
delaylms(10);
while(key2 == 0);
timedata[con]--;
if(con == 2) con2=23; else con2=59;
if(timedata[con] <= 0)
{timedata[con] = con2;}
}
}
EA=1;
}
scan()
{
char k;
dis[0]=timedata[0]%10; dis[1]=timedata[0]/10;
dis[3]=timedata[1]%10; dis[4]=timedata[1]/10;
dis[6]=timedata[2]%10; dis[7]=timedata[2]/10;
for (k=0;k<8;k++)
{
P0=dis_7[dis[k]]; P2=scan_con[k]; delaylms(1); P2=0xff;
}
}
main()
{
TH0=0x3c; TL0=0xb0;
TMOD=0x01; ET0=1; TR0=1; EA=1;
while(1)
{
scan();
keyscan();
}
}
void time_intt0(void) interrupt 1
{
ET0=0; TR0=0; TH0=0x3c; TL0=0xb0; TR0=1;
ms50++;
if(ms50 == 20)
{
ms50=0x00; timedata[0]++;
if(timedata[0] == 60)
{
timedata[0]=0; timedata[1]++;
if(timedata[1] == 60)
{
timedata[1]=0; timedata[2]++;
if(timedata[2] == 24)
{timedata[2] = 0;
}
}
}
}
ET0 = 1;
}





歡迎光臨 (http://www.zg4o1577.cn/bbs/) Powered by Discuz! X3.1
主站蜘蛛池模板: 黄色免费在线网址 | 欧美网址在线观看 | 日日夜夜精品免费视频 | 天天干狠狠干 | 亚洲第一女人av | 国产2区 | 99热最新网址 | 国产精品www | 国产精品中文 | 国产精品特级片 | 国产高清精品在线 | 一区二区三区四区在线视频 | 福利一区视频 | 97av视频在线观看 | 欧美日韩综合视频 | 91精品欧美久久久久久久 | 最近最新中文字幕 | 自拍偷拍精品 | 色偷偷噜噜噜亚洲男人 | 91久久久精品国产一区二区蜜臀 | 久久久久免费 | 国产精品视频 | 欧美午夜精品久久久久免费视 | 午夜视频导航 | 日韩中文字幕在线播放 | 在线免费观看黄色网址 | 久夜精品 | 一区免费观看 | 精品一区二区在线视频 | 日韩在线免费播放 | 久久99这里只有精品 | 日本三级做a全过程在线观看 | 日日日操 | 国产欧美日韩在线播放 | 天堂一区二区三区四区 | 欧美精品久久久久久久久老牛影院 | 91精品国产综合久久久亚洲 | 中文字幕av在线播放 | 天天成人综合网 | 久久国产亚洲 | 久久久久久久一区 |