
基于单片机的4x4光立方课程设计资料(DOC 12页).doc
13页JIUJIANG UNIVERSITY单片机课程设计报告题 目 光立方 院 系 电子工程学院 专 业 自动化 姓 名 宋建军 学 号 22 班级学号 A1032 组 员 吴小康、文坛 指导教师 丁文斌 目 录一 、摘要 3二、 设计目的与要求 4 2.1设计目的 42.2设计要求 4三、硬件方案设计 43.1单片机资源分配情况 53.2复位电路 53.3时钟电路 53.4系统的工作原理图 63.5焊接实物图 10四、 软件设计 114.1系统框图 114.2程序流程图 114.3程序 13五、心得体会 17六、参考文献 17摘要当今社会,随着电子行业的不断发展,单片机凭借着其极高的性能价格比,受到人们的重视和关注,应用广泛,发展迅猛。
单片机体积小,质量小,抗干扰能力强,对环境要就不高,价格低廉,灵活性好,已广泛的应用在工业自动化、通信、自动检测、信息家电、电力电子航空航天等各个方面成为现代生产和生活中不可缺少的一部分对于大三的我们来说,学习单片机也好久了,对单片机有了大体的了解,此次单片机课程设计,我们采用的是STC89C52RC系列的单片机,利用此单片机来控制一个“光立方”光立方顾名思义就是一个立方体,我们采用的是8*8*8的模式,将LED灯分成八层,利用程序来编写各种不同的效果来控制LED的亮灭,最终使得整个立方体展现不同的造型和图案,使其变得美轮美奂,绚丽多彩ABSTRACTIn today's society, with the continuous development of electronic industry, single-chip microcomputer with its extremely high cost performance, is people's attention and concern, wide application, is developing rapidly.SCM small size, small quality, strong anti-jamming capability, the environment is not high, low price, good flexibility, has been widely used in industrial automation, communications, automatic detection, information home appliances, power electronics, aerospace and other aspects.Become an indispensable part of modern production and life.For those of us in our junior year, learn microcontroller for a long time, also have the general knowledge of MCU, the MCU course design, we adopt is STC89C52RC series microcontroller, using the single chip microcomputer to control a "light cube".Light cube as the name suggests is a cube, we adopt the 8 * 8 * 8 patterns, leds can be divided into eight steps, using the program to write a variety of different effect to control the LED light, LED the whole cube show different modelling and design, make its become beautiful, colorful.二、 设计目的与要求2.1设计目的 ⑴.进一步掌握单片机的原理及其功能。
学会利用单片机做一些课外电子设计与制作⑵.熟悉LED点亮条件及其工作原理⑶.熟悉光立方显示的原理及其相关的线路连接⑷.通过此次的电路焊接和调试提高自己的动手及其分析问题的能力2.2设计要求 ⑴.利用单片机控制4*4*4的LED光立方显示一些3D的图形,通过编程编写一些程序控制单片机输出一些高低电平从而控制某个和某些LED等亮和暗,由此来通过灯光显示一些3D图形设计内容包括了时钟电路、复位电路、三极管驱动电路、LED光立方电路等几部分的设计根据内容画出相应的电路图,再编写出相应的程序 ⑵.编写完程序后,进行实物的焊接,将程序烧写到单片机上,最后进行调试2.3小组分工情况 吴小康主要负责硬件部分,主要工作是焊接电路宋建军主要负责软件部分,主要工作是编写程序,画电路图文坛主要负责报告的撰写,一起完成了本次课程设计的任务三、 硬件方案设计 3.1单片机资源分配情况将4*4*4的LED光立方分层4层,分别由单片机的P2.0,P2.1,P2.2,P2.3,四个口来控制每一层,且给低电平有效,再有P0口和P1的总共16个口来控制16列,给高电平有效,P0和P1口加上位排阻,再给每一列加三极管放大,三极管的基极接单片机的P0和P1口,集电极接5V电源,发射极接每一列。
这样就可以通过控制每个口的输出信号来控制每个的亮灭3. 2复位电路 通过某种方式,是单片机内部各类寄存器的值变为出事状态的操作称为复位单片机的复位是通过外部电路来实现的,复位引脚RET通过一个施密特触发器与复位电路相连接,施密特触发器用作噪声抑制,伟哥机器周期的S5P2时刻,复位电路采样一次施密特输出电平,获得内部复位操作所需要的信号单片机的时钟电路正常工作后,CPU在RET/VPD引脚上连续采集到两个机器周期的高电平后就可以完成复位操作了,但实际应用时,复位电平的脉冲宽度一般大于1ms复位电路通常采用上电复位、手动按键复位和看门狗复位三种方式,本次采用的是上电复位方式3.3时钟电路 单片机的各个功能部件的运行都是是时钟控制信号为基准,一拍一拍的工作因此时钟频率直接影响单片机的速度,时钟电路的质量也直接影响单片机系统的可靠性和稳定性常用的时钟电路设计为内部时钟方式,单片机内部有一个由反向放大器构成的震荡电路,芯片上的XTAL1和XTAL2分别为震荡电路的输入和输出端只要在这两个引脚上接一个石英晶体振荡器和两个微调电容就构成内部方式的振荡器电路,有振荡器产生自激振荡,便构成一个完整的震荡信号发生器。
一般选用石英晶体振荡器此电路在加电大约延迟10ms后振荡器起振,在XTAL2引脚产生幅度为3V左右的正弦波时钟信号,其振荡频率主要由石英晶振的频率确定电路中两个电容C1、C2的作用有两个:一是帮助振荡器起振;二是对振荡器的频率进行微调本系统的C1、C2的值为33pf单片机在工作时,有内部振荡器产生或由外直接输入的送至内部控制逻辑单元的时钟信号的周期称为时钟周期其大小是时钟信号频率的倒数,f表示图2中的时钟频率为12MHz,即f=12MHz,则时钟周期为1/12us3.4系统的工作原理图 光立方一、二层:光立方三、四层:单片机口点连接: 三极管放大电路:总原理图:四、 软件设计3.1系统方框图时钟电路STC89C52RC芯片复位电路三极管驱动点路LED光立方电路3.2程序流程图开始取层和列的数据调用显示子程序Disp调用延时子程序Delay元器件清单:名称数量大LED灯70个AT89S521片按键1901316个102排阻2个1K电阻16个20pF瓷片电容2个12MHz晶振1个10uF电容1个330电阻1个4.7K电阻1个六. 心得体会此次为期半个多月的课程设计,让我感受颇深最终看到了绚丽多姿,变化多端的LED光立方的图案。
在这半个多月的学习中,在很大程度上培养了自己的独立思考及其动手能力学会了自己独立的发现问题、分析问题老师还为我们提供了网络,遇到不明白的问题,首先是通过上网查阅相关资料、翻阅书籍找出问题的答案而且还有老师在实验室指导我们的设计,在查阅资料仍找不到但答案的还可以请教老师尽管此次设计过程中遇到些问题,但最终还是一步一个脚印过来了本次我主要的是负责程序的编写在刚开始烧写程序进去调试时,发现LED灯P0口和P2口控制的两组灯点亮的有点延时,不能够同步显示图案的效果检查程序后发现,原来是在送完P0口数据后,就立马加了个延时,再送P2口数据,再延时,这样导致P0口与P2口之间的显示效果在视觉上慢了半拍,达不到预期图案要显示的效果,最后将中间的那个延时程序调到送完P2口数据之后再给其进行延时,通过调试发现能够正常显示另外在编写各种图案显示代码的时候,让我深刻的体会到,要想编好相应的代码,光立方的三维空间的想象能力还是比较重要,54个灯到底是要求哪个灯给高电平哪个灯给低电平,还要根据显示要求组合好以防出现乱码显示情况在汇编程序中,刚开始想用移位指令来实现代码的传送,发现在一些简单的图案还可以(如扫描极有规律的显示),但在复杂一点的立体图就无法使用了,最后还是将其全部统一改写成调用数组的形式送代码,这样既简单又不容易出错。
此次设计在丁老师的指导下完成的,老师扎实的专业知识,让我觉得自己还有好多的知识需要去学习在这大学的时间,要好好的提升自己的相关技能七.参考文献1.张毅刚.《新编MCS-51单片机应用设计》.哈尔滨工业大学出版社 20032.朱兆优、陈坚等.《单片机原理及应用》.电子工业出版社20103.秦曾煌.《电工学》高等教育出版社.20094.欧阳斌林.《单片机原理及应用》.中国水利水电出版社 20065.潭浩强.《C程序设计》.北京航空航天出版社6.付晓光.《单片机原理与实用技术》.清华大学出版社7.邹寿彬.《电子技术基础》.清华大学出版社8.许熙文.《电路基础》.高等教育出版社12。
