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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索

單片機電子時鐘 請教大佬哪里出錯了?

查看數: 1873 | 評論數: 5 | 收藏 0
關燈 | 提示:支持鍵盤翻頁<-左 右->
    組圖打開中,請稍候......
發布時間: 2018-11-20 18:35

正文摘要:

本人初學者,課設要做一個電子時鐘,仿真的時候什么都不顯示,程序和電路圖都在下面。

回復

ID:429961 發表于 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;
}
ID:429961 發表于 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;
}
ID:111634 發表于 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案例,用于仿真實驗操作,電路與程序真實可靠可信可行。書中電路和程序設計有詳細說明,程序語句條條有注解。
ID:430308 發表于 2018-11-21 09:19
這樣不能編輯還是把源碼發出來比較好
ID:164602 發表于 2018-11-21 09:11
讀你的程序好費眼睛的。
直接發程序出來,還可以在我的電腦上編譯,我的板子上試驗找問題。

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 亚洲精品一区二区三区蜜桃久 | 成人乱人乱一区二区三区软件 | 女同久久| 91香蕉视频在线观看 | 国产第一页在线播放 | 毛片高清| 国产7777| 久久一二区 | 亚洲交性| 亚洲先锋影音 | 免费h在线 | 91精品久久久 | 97中文视频| 精品国产免费一区二区三区演员表 | 91电影在线播放 | 国内精品久久久久久 | 午夜激情在线 | 日本精品一区二区在线观看 | 一区二区三区不卡视频 | 成年人黄色一级毛片 | 久久久久免费 | 免费国产黄网站在线观看视频 | 久久高清国产视频 | 久久国产精品一区二区三区 | caoporn免费在线视频 | 欧美性一级 | 日本在线精品视频 | 国产第一页在线播放 | 欧美激情 一区 | 天天躁日日躁性色aⅴ电影 免费在线观看成年人视频 国产欧美精品 | 久久久免费 | 久久久www成人免费精品 | 孕妇一级毛片 | 懂色av色香蕉一区二区蜜桃 | 国产一二区免费视频 | 午夜电影网 | 日本在线视频一区二区 | 91素人| 综合色播 | 夜夜操av| 伊人精品久久久久77777 |