单片机课程设计

发布 2022-10-04 22:06:28 阅读 5632

--液晶屏的显示。

---数字钟。

班级:091141b

学号:091141238

姓名:张艳秋。

一、设计目的。

1、通过单片机课程设计,熟练掌握c语言的编程方法,将理论联系到实践中去,使我们更深的了解单片机的结构,提高我们的动脑和动手的能力。

2、通过数字钟的系统设计,掌握中断函数的使用方法,定时器和中断器的应用和简单程序的编写,最终提高我们的逻辑思维及抽象思维。

二、设计任务和要求。

任务:1,液晶屏的显示,显示姓名和学号!

2,设计数字钟,显示时、分、秒,自己拓展功能(整点报时,设置显示灯,矩阵键盘控制设置)

*液晶屏的显示**

一、设计原理分析。

1,单片机端口功能。

xtal1,xtal2-外接晶振端口;

rst-复位端;

ale-地址锁存控制信号,用于系统扩展;

psen-外部程序存储器读选通信号;

ea-访问程序存储控制信号。当其为低电平时,对rom的读操作限定在外部存储器;

p0、p1、p2和p3为8位双向并行i/o口,但p3有些引脚有特殊功能。

2,液晶显示器的各引脚功能。

液晶显示器以其微功耗、体积小、显示内容丰富、超薄轻巧的诸多优点,在袖珍式仪表和低功耗应用系统中得到越来越广泛的应用。

hs162-4液晶模块是一种用5x7点阵图形来显示字符的液晶显示器,根据显示的容量可以分为1行16个字、2行16个字等。

hs162-4采用标准的16脚接口,其中vss为地电源,vdd接5v正电源。

rs为寄存器选择,高电平时选择数据寄存器、低电平时选择指令寄存器。

rw为读写信号线,高电平时进行读操作,低电平时进行写操作。当rs和rw共同为低电平时可以写入指令或者显示地址,当rs为低电平rw为高电平时可以读忙信号,当rs为高电平rw为低电平时可以写入数据。

e端为使能端,当e端由高电平跳变成低电平时,液晶模块执行命令。

d0~d7为8位双向数据线。

二、应用软件。

keil u vision2软件是一个集成开发环境,包括编译器、汇编器、实时操作系统、项目管理器和调试器等。

伟福w软件编译器;

protues单片机电路**软件;

3、硬件资源及分配。

主要用到的硬件:p0口、p2口、lcd液晶屏等。

硬件分配:1、p0口:做为输出口,与液晶屏相连接,显示姓名和学号。

2、p2口:控制数据的读写,显示到液晶屏。

四、程序流程图。

定义各个函数。

主程序。初始化lcd

显示字符。五、设计中的困难。

1、一开始液晶屏的指令**看不懂,定义端口和写指令都是看老师的程序,对照液晶屏指令**表一个一个看懂的。

2、延时函数的定义有两种,_nop_()是空操作函数,不太会用。

3、测试lcd忙碌状态的函数在单片机上总是实行不了,就删掉了。删掉之后就可以在单片机里运行了!这个不理解!!

4、根据液晶屏的指令表,设计了一些命令,但执行起来不是我想要的结果。指令表还要加深理解!

*数字钟**

一、设计原理。

液晶屏及单片机的原理在第一个实验已经介绍过了,由单片机控制液晶屏的显示,在单片机里加入程序使液晶屏按照预定的方案显示。首先是简单的字符串显示,然后进一步设计数字钟。

数字钟实际上是一个对标准频率(1hz)进行计数的计数电路。由于计数的起始时间不可能与标准时间(如北京时间)一致,故需要在电路上加一个校时电路,同时标准的1hz时间信号必须做到准确稳定。通常使用石英晶体振荡器电路构成数字钟。

图1所示为数字钟的一般构成框图。

⑴晶体振荡器电路:晶体振荡器电路给数字钟提供一个频率稳定准确的32768hz的方波信号,可保证数字钟的走时准确及稳定。不管是指针式的电子钟还是数字显示的电子钟都使用了晶体振荡器电路。

分频器电路:分频器电路将32768hz的高频方波信号经32768()次分频后得到1hz的方波信号供秒计数器进行计数。分频器实际上也就是计数器。

时间计数器电路:时间计数电路由秒个位和秒十位计数器、分个位和分十位计数器及时个位和时十位计数器电路构成,其中秒个位和秒十位计数器、分个位和分十位计数器为60进制计数器,而根据设计要求,时个位和时十位计数器为24进制计数器。

译码驱动电路:译码驱动电路将计数器输出的8421bcd码转换为数码管需要的逻辑状态,并且为保证数码管正常工作提供足够的工作电流。

整点报时电路:一般时钟都应具备整点报时电路功能,即在时间出现整点前数秒内,数字钟会自动报时,以示提醒。其作用方式是发出连续的或有节奏的音频声波,较复杂的也可以是实时语音提示。

二、应用软件。

keil u vision2软件是一个集成开发环境,包括编译器、汇编器、实时操作系统、项目管理器和调试器等。

伟福w软件编译器;

protues单片机电路**软件;

三、硬件资源及其分配。

主要用到的硬件:p0口、p2口、p3口、lcd液晶屏、led发光二级管、蜂鸣器、矩阵键盘等。

硬件分配:1、p0口:做为输出口,与液晶屏相连接,输出日期、时间、星期。

2、p2口:起控制作用,控制液晶屏的读写状态,及蜂鸣器的报时和设置灯显示。

3、p3口:作为输入口,与矩阵键盘连接,用来设置时间、日期、星期。

4、蜂鸣器用来整点报时。

5、二极管用来显示设置状态。

四、程序流程图(下一页)

五、设计中的困难及解决。

1、不知道单片机机箱的电路连接图,一直很迷惑我们设计的图和实际的不一样的话怎么办,后来根据老师给的实验指导书,按照上面得引脚来接。但是接蜂鸣器及二极管的在**上执行们问题,但**到单片机上就不行了!这个一直不明白!

2、和第一个一样,测试单片机忙碌函数在单片机上不能用。

3、蜂鸣器的发声的条件不太清楚,最后实验证明,只要通电就会响。于是设计了一个整点报时函数,但时间的控制上并不太合理,没有太大的效果。

4、矩阵键盘,我查了好多资料来了解矩阵键盘的原理和功能,把它用在数字钟的设置上有点浪费,我们只需要四个键就可以,每一列的功能都是一样的。

5、想在单片机上加一段**,但是加入**后内存不足所以也没有加上。

6、想提高的地方就是再加一个闹钟程序,在网上荡的那些程序好长,还是好好学习单片机以后自己编程序来实现。

三、设计心得体会。

刚开始做这个课程设计的时候,真的是无从下手,单片机的知识也只学到它的结构了,于是我打了好几天的酱油。后来老师给了一个程序让我们自己看,自己学,通过看程序知道了怎么定义引脚,怎么写命令,怎么读命令,学会了应用proteus**电路,还有使用keil编程及**到单片机实行的过程。

能够看懂程序了,我也开始在网上查资料来了解我不懂得东西,在设计报时程序的时候意外的把单片机的作业给做出来了,当时特别兴奋!任何事情成果总是那么令人喜悦,但过程也总是痛苦的!为了那个让我们兴奋的结果,我们付出了汗水,无论是什么样的结果,即使我们什么都没有做出来,即使只是一点小小的进步,我做到了,也从中学到了东西!

这才是最重要的!付出的一切都不是徒劳。

通过单片机课程设计,我不仅加深了对单片机理论的理解,真正体会到理论应用于实际的困难,一切也只有在实际中才是真实的,单纯的理论是没有用的!就像昨天我们的招新活动,桌子、展板、宣传单、时间、地点都安排好了,就等大一新生报名,可是等来等去,一整天才有十几个人报,一切的流程都没有问题!我不不禁要问自己,到底**出了问题?

到现在我还没能解决!一切只停留在理论上是没有任何意义的!所以我要多在实践中发现问题解决问题!

我还学会了如何去培养我们的创新精神,从而不断地战胜自己,超越自己。创新,是要我们学会将理论很好地联系实际,并不断地去开动自己的大脑,从为人类造福的意愿出发,做自己力所能及的,别人却没想到的事。使之不断地战胜别人,超越前人。

同时,更重要的是,我在这一设计过程中,学会了坚持不懈,不轻易言弃。设计过程,也好比是我们人类成长的历程,常有一些不如意,也许这就是在对我们提出了挑战,勇敢过,也战胜了,胜利的钟声也就一定会为我们而敲响。

单片机课程设计

可变程序控制器是集微机技术 自动化技术 通讯技术于一体的通用工业控制装置。它可靠性强 性能 比高 使用方便,已在工业控制的各个领域里得到了极为广泛的应用,成为实现工业自动化的一种强有力的工具 1 plc的定义有许多种。国际电工委员会 iec 对plc的定义是 可编程控制器是一种数字运算操作的电子系统...

单片机课程设计

目录。内容提要2 关键词2引言3 一 硬件电路设计3 一 电路板原理3 二 电路元器件3 二 软件设计3 一 秒钟设计方案3 二 时钟设计方案4 结语7单片机时钟设计。内容摘要 一 在实验板上用动态扫描显示00 59秒钟,具体要求如下 一 6m晶振 二 l9 l10显示00 59十进制数并循环,间隔...

单片机课程设计

1 选题背景。1.1 家庭智能防盗报警系统设计的背景及目的。随着经济的发展,人们对防盗 防劫 防火保安设备的需求量大大增加。针对偷盗 抢劫 火灾 煤气泄漏等事故进行检测和报警的系统,其需求也越来越高。家居智能是以家为平台,兼备建筑 自动化,智能化于一体的高效 舒适 安全 便利的家居环境。自动化的家居...