武汉理工学《数字电子技术》课程设计说明书
六 元件清单
元件名称 89c52 Lcd1602 按键 电容 电阻 晶振 变阻 Led Max232 USB 串口 晶振
数目及规格 1 1 7 30PF x 2,0.1UF x 4,10UF x 1, 10K x 1, 12M x 1 10K x 1 x 1 1 1 1 12MHZ 16
武汉理工学《数字电子技术》课程设计说明书
七 参考书目
1:《数字电子技术》 清华大学出版社
2:《单片机快速入门》 北京航空航天大学出版社 3::《十天学会单片机和c语言编程》 电子工业出版社 4:《51系列单片机开发宝典》 电子工业出版社 5:《c语言程序设计》 清华大学出版社
6:MCS_51单片机原理与应用(c语言版)
17
机械工业出版社
武汉理工学《数字电子技术》课程设计说明书
八 附录
源程序
#include
/********************************** 在此声明同义字
unsigned int: UInt16; unsigned char: UInt8;
**********************************/
#ifndef _file_h_ #define _file_h_
typedef unsigned char UInt8; typedef unsigned int UInt16; #endif
static UInt8 REMIND_GEN[12] = \static UInt8 REMIND_VIP[12] = \static UInt8 COD[9] = \static UInt8 WINDOW[7] = \static UInt8 Vip_Wait = 0; static UInt8 Gen_Wait = 0; static UInt8 i,Sec;
static UInt8 STOP[12] = \;
/***************************************** 定义键盘的端口
*****************************************/ sbit Gen_Key = P3^2;
//设置功能普通用户抽号键
18
武汉理工学《数字电子技术》课程设计说明书
sbit Vip_Key = P3^3; sbit Res_Key = P2^7;
//设置功能vip用户抽号键 //设置功能复位键键
sbit Gen1_Sys_Key = P2^5; //设置系统端按键,用户处理业务完毕后按一次 sbit Gen2_Sys_Key = P2^6; sbit Vip_Sys_Key = P2^4; static UInt8 Flag_Gen = 0; static UInt8 Flag_Vip = 0;
/*********************************** lcd1602的端口位定义
***********************************/ sbit rs = P1^0; sbit rw = P1^1; sbit en = P1^2;
/**********枚举类型来说明窗口*********** 其中WINDOW_1,2,为普通,3为vip窗口;
***************************************/
enum WINDOW_NUMBER {
WINDOW_1 = 1, WINDOW_2 = 2,
19
武汉理工学《数字电子技术》课程设计说明书
WINDOW_3 = 3, };
void Lcd_init(); void Key_Scan(); int main() { }
Lcd_init(); while(1)
{ }
Key_Scan();
/******************************************
延迟函数
函数功能:实现步骤上的延迟 输入参数:z 返回参数:无
******************************************/ void Delayms(UInt16 z) {
20