当前位置:首页 > 课程设计报告 - 自动打铃系统
电子信息工程专业单片机系统课程设计报告
参考文献
〔1〕严仲兴,王熔熔:《单片机原理与应用》,中国计划出版社,2001 .7 〔2〕江力:《单片机原理与应用技术》,清华大学出版社,2006.5 〔3〕徐爱钧,彭秀华:《单片机高级语言C51windows环境编程与应用》,北京电子工业出版社,2001.7 〔4〕求是科技:《单片机典型模块设计实例导航》,北京人民邮电出版社,2004.5 〔5〕康华光:《电子技术基础:模拟部分》,北京高等教育出版社,1999.6 〔6〕江太辉:《MCS-51系列单片机原理与应用》.广州:华南理工大学出版社,2004.6
(7)刘海宽 单片机实验与实践教程 东南大学出版社 2009年1月出版 (8)杨易德 模拟电路 重庆大学出版社 2006年10月出版
(9)廖先芸 电子技术实践与训练 高等教育出版社 2005年6月出版 (10)郭勇 EDA技术基础 机械工业出版社 2009年1月出版
13
电子信息工程专业单片机系统课程设计报告
附录1 系统硬件电路图
14
电子信息工程专业单片机系统课程设计报告
附录2 程序清单
#include
#define uint unsigned int #define uchar unsigned char
uchar TimeData[]={0,0,0};//时钟数据 uchar sec;//秒 uchar i;
uchar counter=0; //时钟变量 uchar RayFlag1=0;//秒闪标志1 sbit RayFlag=P3^3;//秒闪
sbit RayFlag2=P3^2;//秒闪标志2 sbit AlarmSingal=P3^7;//闹铃信号
uchar code BellData[]={ 0,0,0,0,0,0,0,0,0,1 };//上下午标志
uchar code BellDataH[]={ 6,7,8,8,9,9,10,10,11,10 };//时
uchar code BellDataL[]={ 0,30,20,30,20,40,30,40,30,30 };//分
uchar BCD_to_Text(uchar Data); uchar GetClockBit(uchar ShowBit); void Delay(uint count);
void D_Scan(uchar *ShowAddress,uchar FlagBit); uchar GetKey(); void TimeSet();
//----------------------主程序----------------------------------------------- void main() {
uchar NowKey;
uchar BeforKey=0xff; uchar KeyCount=0; uchar i=0;
AlarmSingal=0; RayFlag=1;
15
电子信息工程专业单片机系统课程设计报告
RayFlag2=1;
TMOD=0x10;//设置T1 EA=1; ET1=1; TH1=0x3c; TL1=0xb0; TR1=1; while(1) {
D_Scan(TimeData,0);//动态扫描 //按键控制
if(KeyCount==2) {
KeyCount=0;
NowKey=GetKey(); if(NowKey!=BeforKey) {
switch (NowKey) {
case 1:
TimeSet(); break; case 2:
AlarmSingal=0; break; default:
break; } }
BeforKey=NowKey; }
else KeyCount++; } }
//---------------------DS1302-------------------------------
#ifndef _DS1302_H_ #define _DS1302_H_
#define Time_12_Hour 0x00 //24时制控制 #define Time_Start 0x00 //开始走时 #define Time_Stop 0x80 //停止走时
16
共分享92篇相关文档