仿真版本:Proteus8.6及以上版本
程序編譯:Keil5 C51
編程語言:C語言
設(shè)計(jì)編號(hào):【K03】
1.? 簡介
? 本文提出了一種基于51單片機(jī)的秒表計(jì)時(shí)器。該設(shè)計(jì)在硬件方面主要采用AT89C51單片機(jī)作為主控核心,8位數(shù)碼管液晶顯示屏顯示計(jì)時(shí)信息,同時(shí)還具有啟停、復(fù)位等功能。
2.? 主要功能
a.通過8位數(shù)碼管顯示計(jì)時(shí)器信息,計(jì)時(shí)范圍:0到60分60秒。
b.通過獨(dú)立按鍵設(shè)置啟停、復(fù)位。
3.? 源程序(Keil5)
本設(shè)計(jì)采用keil5 C51軟件(內(nèi)附安裝包)實(shí)現(xiàn)程序設(shè)計(jì)。如需用keil4打開程序,可自行通過.c和.h文件新建工程即可。
#include<reg52.h>
typedef unsigned char u8;
typedef unsigned int u16;
#define duan P0
#define wei P2
/*******端口定義*******/
sbit deng=P1^0;
sbit seg_sel=P1^4;
sbit bit_sel=P1^5;
sbit start=P3^0;
sbit reset=P3^1;
/*******變量定義*******/
u16 tem_ms;
u8 temp_buf[5][3];
u8 arr_pt;
u8 run_flag;//為1開始計(jì)數(shù)
u8 n_ten_ms,n_sec,n_min;
u8 code seg_table[]={0xc0,0xf9,0xa4,0xB0,0x99,0x92,0x82,0xf8,0x80,0x90,0x88,0x83,0xc6,0xa1,0x86,0x8e,0xbf}; //段選
u8 code bit_table[]={0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80 //位選 0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71,0xbf}
};
void delay(u16 num)
{
u16 x,y;
for(x=num;x>0;x--)
for(y=110;y>0;y--);
}
void display_led(u8 which_bit,u8 which_number)
{
bit_sel=1;
wei=bit_table[which_bit];
bit_sel=0;
seg_sel=1;
duan=seg_table[which_number];
seg_sel=0;
}
void display(u8 which_bit,u8 which_number)
{
u8 x,y;
x=which_number/10;//分離十位
y=which_number%10;//分離個(gè)位
display_led(5,16);
delay(2);
display_led(2,16);
delay(2);
if(which_bit==1)
{
display_led(6,y);
delay(2);
display_led(7,x);
delay(2);
}
if(which_bit==2)
{
display_led(4,y);
delay(2);
display_led(3,x);
delay(2);
}
if(which_bit==3)
{
display_led(1,y);
delay(2);
display_led(0,x);
delay(2);
}
}
void reflash(void)
{
display(1,n_ten_ms);
display(2,n_sec);
display(3,n_min);
}
4.? 仿真proteus8.6
? 本設(shè)計(jì)采用proteus8.6軟件(內(nèi)附安裝包)實(shí)現(xiàn)仿真設(shè)計(jì),如下圖所示。proteus軟件一般存在高低版本兼容問題,該仿真是通過proteus8.6導(dǎo)出的,所以請盡量使用proteus8.6打開文件,低于proteus8.6的版本不能夠正常使用,高于proteus8.6的版本除了proteus8.8/8.9理論上可以正常使用。
計(jì)時(shí)界面:
5.? 設(shè)計(jì)報(bào)告
設(shè)計(jì)報(bào)告主要包括硬件電路、軟件設(shè)計(jì)、仿真調(diào)試等等,僅供參考。
6.? 資料清單
設(shè)計(jì)資料主要包括C程序+仿真+設(shè)計(jì)報(bào)告+使用說明+元件清單+操作視頻等。
7.? 資料獲取鏈接
百度網(wǎng)盤下載鏈接:【K03】百度網(wǎng)盤下載鏈接
更多單片機(jī)仿真設(shè)計(jì)合集:單片機(jī)仿真設(shè)計(jì)合集