摇摇棒论文(汇)

合集下载

摇摇棒毕业论文

摇摇棒毕业论文

摇摇棒毕业论文摇摇棒毕业论文摇摇棒,这个看似简单的玩具,却蕴含着深刻的教育意义。

在我的毕业论文中,我选择了摇摇棒作为研究对象,探讨其对儿童认知和智力发展的影响。

通过对摇摇棒的分析和实验研究,我希望能够揭示这个小小玩具的教育价值,为儿童教育提供新的思路和方法。

首先,我对摇摇棒的历史和起源进行了深入研究。

摇摇棒最早起源于古代中国,被视为一种儿童玩具。

它由一根竹子制成,两端系上了一些小小的铃铛,当摇动时会发出清脆的声音。

这种简单的设计,却能够引起儿童的注意和兴趣,激发他们的好奇心和探索欲望。

随着时间的推移,摇摇棒逐渐传入了世界各地,成为了一种普遍存在的儿童玩具。

接着,我对摇摇棒的教育意义进行了探讨。

摇摇棒不仅仅是一种儿童玩具,更是一种促进儿童认知和智力发展的工具。

通过摇动摇摇棒,儿童可以感受到运动的节奏和规律,培养他们的音乐感和节奏感。

同时,摇摇棒的声音也能够激发儿童的听觉感知,帮助他们发展语言和沟通能力。

此外,摇摇棒还能够锻炼儿童的手眼协调能力和精细动作技能,培养他们的动手能力和创造力。

总之,摇摇棒在儿童教育中起到了重要的作用,对他们的认知和智力发展有着积极的影响。

为了验证我的研究假设,我进行了一系列的实验。

首先,我选择了一群幼儿作为实验对象,将他们分为两组,一组进行摇摇棒的训练,另一组作为对照组。

在一段时间后,我对两组幼儿进行了认知和智力测试。

结果显示,接受了摇摇棒训练的幼儿在认知和智力方面表现出了明显的优势。

他们的注意力更加集中,记忆力更强,思维更灵活。

这一结果进一步证明了摇摇棒对儿童认知和智力发展的积极影响。

除了实验研究,我还进行了一系列的案例分析。

我选择了几个摇摇棒的使用者进行深入访谈,了解他们在使用摇摇棒时的体验和收获。

其中,一个小女孩告诉我,摇摇棒让她感到快乐和放松,同时也提高了她的注意力和记忆力。

另一个小男孩则表示,摇摇棒让他更加自信和有成就感,因为他可以通过摇动摇摇棒发出美妙的音乐。

摇摇棒课程设计报告

摇摇棒课程设计报告

微型计算机课程设计报告课设:LED摇摇棒姓名:宋璐迪学号:08060113209专业班级:电气132班指导教师:李振凯完成时间:2016年6月13日目录目录 (1)一、绪论 (2)二、设计方案 (3)三、预备知识 (3)3.1元件简介 (3)3.1.1、STC89C52 (3)3.1.2、晶振 (3)3.1.3、水银开关 (4)3.2其他 (4)四、硬件原理介绍 (5)4.1原理总述 (5)4.2硬件详解 (5)4.2.1 电源电路: (5)4.2.2 时钟电路: (6)4.2.3 复位电路: (6)4.2.4 水银开关与按键切换电路: (7)4.2.5 LED显示电路: (7)五、程序功能解析 (8)5.1程序流程图 (8)5.2程序解析 (8)5.2.1主函数 (9)5.2.2中断函数 (9)5.2.3显示子程序 (9)5.2.4延时子程序 (10)六、原料清单 (11)七、设计心得体会 (12)八、参考文献 (13)九、附录 (14)一、绪论本次设计主体是LED摇摇棒。

LED摇摇棒是利用人眼的视觉暂留特性,通过摇晃过程中LED的有规律变换,给人呈现出不同画面。

这是其理论要求。

而为了实现这样的要去,在LED的控制上我们采用单片机的程序控制,辅助以水银开关的抖动触发,以实现摇摇棒在摇晃中的有规律显示。

在拓展功能上以按键次数的累积对画面进行切换。

之所以选择这样一个课题,源于以下几点:一、富有趣味性的工作原理。

二、软硬件的高度结合有利于对学业成果的检测,且在实际操作中能显著提升我们对电子设备的认知。

三、该物件的经验积累足够丰富,对初学者而言有更多的借鉴资源。

二、设计方案在本次设计中,以单片机I/O口的高低电平的输出实现对LED的控制;以外部中断的形式触发图形显示程序的运行,因该外部中断的要求并不是很高,所以选用水银开关实现该功能;第三部分也就是如何实现图形的切换,我们以对某一I/O口的输入计数方式已选择不同程序段的运行实现图形的切换。

摇摇棒生产实习报告

摇摇棒生产实习报告

摇摇棒生产实习报告系别:专业:班级:号:姓名:指导教师:实习题目:实习地点:教务处印制20XX 年 9 月 4日生产实习报告指导教师填阅摇摇棒的设计制作及调试1.前言人眼在观察景物时,光信号传入大脑神经,需经过一段短暂的时间,光的作用结束后,视觉形象并不立即消失,这种残留的视觉称“后像”,视觉的这一现象则被称为“视觉暂留”。

摇摇棒就是基于人的视觉暂留原理的,通过分时刷新16个发光二极管来显示输出文字或图案等信息的显示装置。

本次设计要求制作完成一个LED灯显示的摇摇棒,16个LED灯一字纵向排列,通过摇动时形成的亮灯扇形区域来显示预先设定的汉字或图案,且可以用按键对所显示内容进行切换。

本次摇摇棒的设计作为生产实习的一部分,综合了模拟电子技术基础和数字电子技术等学科的知识,温固并进一步学习了protel软件的用法,初步了解以单片机为核心的电子系统体系,对将要学习的单片机技术有了初步的认识。

1.非常重要的实践教学环节2.培养理论知识与生产实际相结合的能力3.了解单片技术4.锻炼实际动手能力,掌握电子线路焊接、装配的基本技能5.了解并掌握本专业软硬件设计的一些基本问题3.实习时间,及进程安排8月22日~ 8月23日:理论学习及讲座阶段上午讲座下午及课外时间进行资料收集、查找及学习8月24日:发放元器件,进行焊接准备8月25日~8月26日:硬件焊接及组装,及硬件调试8月27日~9月2日:参考硬件电路绘制原理图及PCB 绘制,参照例程学习软件程序设计9月2日~9月9日:总结报告及验收、答辩4.实验地点西安工业大学电子实验室5.实习单位、部门、地点实习单位西安工业大学北方信息工程学院实习部门电子信息系实习地点电子实验室6.1 关键技术介绍本次所设计系统主要由中央控制部分、驱动部分、显示部分、电源部分以及按键和开关等组成,原理框图如下图所示6.1.1 视觉暂留原理人眼在观察景物时,光信号传入大脑神经,需经过一段短暂的时间,光的作用结束后,视觉形象并不立即消失,这种残留的视觉称“后像”,视觉的这一现象则被称为“视觉暂留”。

基于单片机的神奇摇摇棒毕业设计

基于单片机的神奇摇摇棒毕业设计

毕业设计基于单片机的神奇摇摇棒毕业设计(论文)原创性声明和使用授权说明原创性声明本人郑重承诺:所呈交的毕业设计(论文),是我个人在指导教师的指导下进行的研究工作及取得的成果。

尽我所知,除文中特别加以标注和致谢的地方外,不包含其他人或组织已经发表或公布过的研究成果,也不包含我为获得及其它教育机构的学位或学历而使用过的材料。

对本研究提供过帮助和做出过贡献的个人或集体,均已在文中作了明确的说明并表示了谢意。

作者签名:日期:指导教师签名:日期:使用授权说明本人完全了解大学关于收集、保存、使用毕业设计(论文)的规定,即:按照学校要求提交毕业设计(论文)的印刷本和电子版本;学校有权保存毕业设计(论文)的印刷本和电子版,并提供目录检索与阅览服务;学校可以采用影印、缩印、数字化或其它复制手段保存论文;在不以赢利为目的前提下,学校可以公布论文的部分或全部内容。

作者签名:日期:学位论文原创性声明本人郑重声明:所呈交的论文是本人在导师的指导下独立进行研究所取得的研究成果。

除了文中特别加以标注引用的内容外,本论文不包含任何其他个人或集体已经发表或撰写的成果作品。

对本文的研究做出重要贡献的个人和集体,均已在文中以明确方式标明。

本人完全意识到本声明的法律后果由本人承担。

作者签名:日期:年月日学位论文版权使用授权书本学位论文作者完全了解学校有关保留、使用学位论文的规定,同意学校保留并向国家有关部门或机构送交论文的复印件和电子版,允许论文被查阅和借阅。

本人授权大学可以将本学位论文的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存和汇编本学位论文。

涉密论文按学校规定处理。

作者签名:日期:年月日导师签名:日期:年月日注意事项1.设计(论文)的内容包括:1)封面(按教务处制定的标准封面格式制作)2)原创性声明3)中文摘要(300字左右)、关键词4)外文摘要、关键词5)目次页(附件不统一编入)6)论文主体部分:引言(或绪论)、正文、结论7)参考文献8)致谢9)附录(对论文支持必要时)2.论文字数要求:理工类设计(论文)正文字数不少于1万字(不包括图纸、程序清单等),文科类论文正文字数不少于1.2万字。

摇摇棒报告

摇摇棒报告

摇摇棒的制作目录引言——————————————————————————————————Ⅰ1 系统硬件电路的设计1.1 主控单元———————————————————————————- 1.2 电源与复位————————————————————————--------------1.3 驱动模块————————————————————————————1.4 显示模块————————————————————————————1.5实验总电路———————————————————————————-2 硬件制作与实物图———————————————————————————附件——————————————————————————————————引言基本原理与硬件电路设计:旋转时钟是利用视觉暂留效应设计出来的,物体在快速运动时, 当人眼所看到的影像消失后,人眼仍能继续保留其影像0.1-0.4秒左右的图像,这种现象被称为视觉暂留现象。

是人眼具有的一种性质。

人眼观看物体时,成像于视网膜上,并由视神经输入人脑,感觉到物体的像。

但当物体移去时,视神经对物体的印象不会立即消失,而要延续0.1 -0.4秒的时间,人眼的这种性质被称为“眼睛的视觉暂留”。

假设我们设定我们的眼睛的暂留时间是0.4秒,如果我们的16个LED来回摇摆的时间快过0.4秒,那么我们看到的图像就是这一列LED在各个位置显示的图像的叠加.16只LED发光管作为画面每一列的显示,左右摇晃起到了扫描的作用,人眼的视觉暂留现象使得看到的是一幅完整的画面。

与LED点阵的显示有几分相仿。

硬件电路如下图(点击可放大)。

系统电源VCC为5V,下载程序和调试时一定要保证5V电压,实际使用时用3节干电池串联4.5V即可。

AT89S52单片机作为控制器,在它的P0、P2口接有16只以共阳的方式连接的高亮度LED,由单片机输出低电平点亮。

P0口的上拉电阻RA1不能少。

串在LED公共端的二极管D1会产生一定的压降,用来保护LED,经实测LED点亮时两端电压为3V左右,在LED的安全承受范围内。

摇摇棒课程设计

摇摇棒课程设计

三,撰写报告报告格式:(1)封面:格式见附表(2)正文:题目:基于单片机POV的魔幻棒的设计(三号黑体)西安科技大学高新学院机电信息学院姓名(5号宋体)摘要:(摘要内容小四宋体)(正文包括引言、界面设计、程序设计、调试和结论部分,也可根据需要自己安排内容,不一定按照给出的格式写,但是字体字号需按照要求写,正文采用小四宋体,1.5倍行间距,段前断后各0.5行)1 引言LED 显示棒,又称摇摇棒,是一种利用视觉暂留效应制作的“高科技”玩具。

可以用“静如处子,动如脱兔”来形容它,即当静止,它只有几个LED灯在发光,而如果按照一定的频率去摇晃它,就会随着位置变化而变化,最终显示预想的文字或者图片。

本设计要求制作LED显示棒。

通过摇晃时形成的亮灯区域能分辨出:“蓝色”两个字。

2 硬件设计3软件设计#include <reg52.h>#define uchar unsigned char#define uint unsigned int //宏定义//显示汉字指针unsigned char code hanzi[] ={0x00, 0x00, //●●●●●●●●●●●●●●●● 0x04, 0x40, //●●○●●●●●●●●●●●○● 0x24, 0x40, //●●○●●○●●●●●●●●○● 0x24, 0x40, //●●○●●○●●●●●●●●○● 0xa4, 0x7d, //●●○●●○●○○●○○○○○● 0x64, 0x44, //●●○●●○○●●●○●●●○● 0x2f, 0x44, //○○○○●○●●●●○●●●○● 0x74, 0x7c, //●●○●○○○●●●○○○○○● 0x84, 0x45, //●●○●●●●○○●○●●●○● 0x04, 0x7c, //●●○●●●●●●●○○○○○● 0xf4, 0x47, //●●○●○○○○○○○●●●○● 0x0f, 0x44, //○○○○●●●●●●○●●●○● 0x04, 0x7c, //●●○●●●●●●●○○○○○● 0xe4, 0x41, //●●○●●○○○○●●●●●○● 0x04, 0x40, //●●○●●●●●●●●●●●○● 0x04, 0x40 //●●○●●●●●●●●●●●○●0x00, 0x00, //●●●●●●●●●●●●●●●● 0x00, 0x00, //●●●●●●●●●●●●●●●● 0x00, 0x78, //●●●●●●●●●●●○○○○● 0x00, 0x40, //●●●●●●●●●●●●●●○● 0xe4, 0x43, //●●○●●○○○○○●●●●○● 0x2c, 0x42, //●●○○●○●●●○●●●●○● 0x34, 0x42, //●●○●○○●●●○●●●●○●0x24, 0x42, //●●○●●○●●●○●●●●○● 0xe4, 0x43, //●●○●●○○○○○●●●●○● 0x24, 0x42, //●●○●●○●●●○●●●●○● 0x26, 0x42, //●○○●●○●●●○●●●●○● 0x28, 0x42, //●●●○●○●●●○●●●●○● 0xf0, 0x3f, //●●●●○○○○○○○○○○●● 0x20, 0x00, //●●●●●○●●●●●●●●●● 0x40, 0x00, //●●●●●●○●●●●●●●●● 0x00, 0x00 //●●●●●●●●●●●●●●●●};/*****n(us)延时子程序*****/void DelayUs(uint N){uint x;for(x=0; x<=N;x++);}void init(){EA=1;EX0=1;IT0=0;}/*****主函数*****/void main(void){int i = 0;init();int disp = 0;while(1){for(i=0;i<64;i++)//12 个汉字分为 3 次显示完(每次显示 4 个),每中断 10 次切换{P0=~hanzi[disp*128+i*2];P2=~hanzi[disp*128+i*2+1];DelayUs(100);}4 调试单片机应用系统的硬件调试和软件调试是分不可的,许多硬件故障是在调试软件时才发现的。

简易电路—神奇摇摇棒

简易电路—神奇摇摇棒

漯河职业技术学院设计报告梦幻摇摇棒系别:电气电子工程系参与人员:袁思超刘康张少康指导教师:唐红莲摘要梦幻摇摇棒是如今流行的一种玩具,在各种聚会、节日中均见得到它的身影。

本设计也追随着摇摇棒的原理,在此基础上进行开发。

通过单片机对其进行控制,进而产生不同的图像经过充分的讨论后,将原有的任务、基本要求、发挥功能重新整理如下:(1)根据任务,要设计一个梦幻摇摇棒。

(2)根据要求,该摇摇棒应具有如下功能:1) 显示 LOVE;2) 显示心形图;3) 显示笑脸图;4)显示漯河职业技术学院欢迎您!目录1、系统设计1.1.整体方案比较与论证1.2.主要部件原理及参数计算1.2.1.单片机控制模块1.2.2.水银开关1.2.3.复位开关1.2.4.画面转换开关1.3.软硬件设计1.3.1.硬件设计1.3.2.软件设计2、系统测试2.1.测试组成2.2.测试方法与数据2.3.测试结果3、制作过程中的问题及解决方法3.1.硬件电路调试3.2.软件电路调试3.3.问题及解决方法4、附录参考文献附录一主要元器件清单…………………………………………附录二电路原理图及印制板……………………………………附录三程序源代码………………………………………………1.系统设计1.1.整体方案比较与论证根据题目要求设计一个循环的LED 显示,要利用人的视觉滞留产生静态显示的现象,这就要求延时部分做的比较小,所以采用石英晶体振荡器。

所以使用单片机控制是较为可行的一种方案。

由水银开关的闭合对单片机产生外部中断,从而对中断进行采集。

到达一定数量便进行图象的转换。

整个系统由单片机控制模块,开关及电源模块和输出显示模块三个部分构成。

系统框图如下:1.2、主要部件原理及参数计算1.2.1、单片机控制模块那么如何用单片机实现对LED的控制呢?LED又是如何转换的呢?下面回答这些问题。

用单片机想要控制LED显示只需要定时输出就可以,但每个人摇动的速度不一样,如何准确的并稳定的变换图案呢?这就需要用到外部中断。

摇摇棒课程设计(基于AT89C51单片机)

摇摇棒课程设计(基于AT89C51单片机)

目录摘要 (1)一、引言 (2)二、系统设计方案 (2)1.设计思路 (2)2.模块方案的论证与比较 (2)三、系统硬件设计 (3)1.总体设计 (3)2.单元电路设计 (4)四、系统软件设计 (5)1.软件设计思路 (5)2.系统流程图 (6)3.软件实现功能的完善 (6)五、结论 (7)参考文献 (8)附录 (8)附录一元器件明细表 (8)附录二系统程序 (9)附录三电路图 (12)魔幻摇摇棒摘要:“摇摇棒”是基于人的视觉暂留原理的,通过分时刷新16个发光二极管来显示输出文字或图案等信息的显示装置。

输出信号频率的控制通过单片机来实现,用摇动传感器检测当前摇动状态。

当进行摇动时,由于人的视觉暂留原理,会在发光二极管摇动区域产生一个视觉平面,在视觉平面内的二极管通过不同频率的刷新,会在摇动区域内产生图像,从而达到在该视觉平面上传达信息的作用。

关键字:单片机;摇摇棒;发光二极管;摇动一、引言LED显示棒,又称摇摇棒,是一种利用视觉暂留效应制作的“高科技”玩具。

可以用“静如处子,动如脱兔”来形容它,即当静止时,它只是几个LED发光二极管(后简称LED),而一旦按照一定的频率去摇晃它,它就会随着位置的变化而变化(亮或灭),最终显示一幅图片或字符串。

本设计要求制作完成一个LED的显示棒。

要求LED灯线状排列,通过摇动时形成的亮灯扇形区域能够分辨出如:“电”、“A”、五环之类的汉字或图案且可以使用按键对显示内容进行切换。

二、系统设计方案1.设计思路本系统要求设计一个LED显示棒,且需要有按键进行内容切换,它主要是由中央控制部分、LED驱动部分、LED显示部分以及电源部分组成,如图1所示:图1:LED显示棒系统框图单片机将提取的字模进行存储,当接收到按键输入的指令时单片机就将相应的字模代码通过I/O口输出,使LED点亮,利用视觉暂留原理最终使图案完整的显示在摆动的显示屏中。

本题的难点在于送数据的时间间隔以及较长画面或文字的完整显示。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

目录摘要 (II)1概述 (1)2.1 模块方案的论证与比较 (1)2.1.1 单片机选择 (1)2.1.2 外部中断信号产生方式 (2)图3-2 整体电路图 (3)3.2 单元电路设计 (3)3.2.1 LED显示模块 (3)3.2.2 单片机最小系统的设计 (3)3.2.3 软件设计思路 (4)4 设计结果分析 (5)5 总结 (5)参考文献 (5)附录源程序 (6)摘要本设计以AT89S52单片机为中央控制器,显示棒摇动时显现的字符或图形由LED 灯显示,LED 灯成线状排列,每个瞬间线阵只能显示数字编码后的文字或图形的一列,利用人眼的视觉暂留原理,将需要显示的字符或图形分成64 列(,一般人手左右摆动的频率为几赫兹到十几赫兹,因此,通过单片机控制LED 线阵以一较低频率扫描显示字符或图形的每一列,摆动显示棒时即可因视觉暂留看出显示的字符或图形;左右摆动一次通过端口电平变化,调用相应的显示子程序,字符切换通过外部中断实现,该系统设计对程序设计的要求较硬件电路要高。

整套系统由中央控制模块、LED显示模块、供电模块等部分构成。

关键词:LED;AT89S52;视觉暂留;图案AbstractThe design for the central controller with AT89S52 SCM and display great when shaken by the character or graphics appeared that LED lights, LED lights into linear array, each moment only display digital coding text or graphics after a column, using the principle of human vision, will need to display characters or graphics into 64 (, generally with a frequency of swinging for to ten Hertz, therefore Hertz, LED by MCU control array in a low frequency scan characters or graphic each column, swinging rod can show that for all the characters or graphic display, swinging through port level changes, once the call display subroutines, characters, by external interruption switching system design for program design of hardware circuit to high requirement. The system by the central control module, the LED display module, power supply module.Keywords:LED;AT89S52;Vision;design1概述本系统要求设计一个LED显示棒,且需要有按键进行内容切换,它主要是由中央控制部分、LED显示部分以及电源部分组成,如图1-1所示,图1-1 系统组成部分单片机讲提取的字模进行存储,当接收到按键的指令时单片机就讲字模代码通过I/O口输出,使LED点亮,利用视觉停留原理最终使图案显示在摆动的显示屏中。

2 设计方案简述2.1 模块方案的论证与比较本题难点在于数据的时间间隔以及画面或者文字的完整显示。

以此对各模块的方案进行论证与比较2.1.1 单片机选择方案一:选用单片机AT89C51 作为扫描显示控制核心,由其直接控制LED 线阵的显示,并外加扫描控制开关控制字符或图形的扫描显示。

该方案线路简单,扫描控制开关可选择机械开关或编码开关或水银开关,在基于单片机的LED 显示摇摇棒的设计,显示棒摇摆时接通线路控制单片机扫描输出字符或图形的列编码信号;单片机外另接有中断控制按钮用以切换不同字符或图形的显示,LED 线阵采用普通三极管驱动。

此方案的优点是:单片机C51 的端口较多,可实现显示数据并行传输,速度较快,且外围电路简单,调试较方便。

缺点是:单片机使用的晶振频率较大,软件不易实现对计数的控制。

方案二:由单片机AT8952 最小系统、寄存器组、驱动电路、LED 线阵和电源部分组成。

单片机最小系统寄存器组驱动电路LED 线阵显示电源,该方案通过单片机将列编码输入寄存器,通过寄存器组移位功能实现字符图像的扫描输出。

与方案一比较,方案二中单片机所需输出端口很少,可选用小型单片机AT89S52,不仅功能强,而且尺寸小,价位比较低,其数据输出串口输出方式,所需端口较少,编程同C51 兼容,总体线路较简单,电路板占用面积小[1];利用寄存器移位功能可轻易实现显示LED 灯数量的扩展,不仅具备方案一的大部分优点,而且外围器件更少,能耗更低,电路调试简单,故选择方案二。

2.1.2 外部中断信号产生方式通过外部中断可以控制数据开始传输的时刻。

选择好外部中断来源是本次制作的难点和重点。

方案一:使用水银开关。

通过摇摆使得水银开关中的水银珠与两个触点接触,利用这种接触产生的电平变化来触发中断,结合软件控制显示,制作简单,使用方便。

方案二:使用遮光器。

在摆棒上安装一个可以摆动的用来遮挡光遮断器光线的细杆,细杆每左右摇摆一次这个杆就会通过遮光器,发生电平变化。

同样通过这种电平变化,结合软件控制显示。

本次设计的中断时为了实现数据的单程传输。

如果使用光遮光器,其触发单片机的时刻处于正中央,不能解决图片因为返回与原来图片重叠的现象。

而使用水银开关因为在左右都有触点,所以很容易在往返途中产生中断,从而选择方案一3 详细设计3.1 总体设计经过分析论证,我们决定了系统各模块的最终方案,流程图如图3-1所示,图3-1 系统流程图整体系统以AT89S52单片机为中央控制器使用16只LED等作为显示屏。

当水银开关触发中断时,单片机向16只LED传送数据,依据人体额视觉暂留原理,随着显示棒的摆动前进,输出数据的列是不会立刻消失而是随着摆动逐渐显示在形成的扇形区域。

整体电路如图3-2所示,图3-2 整体电路图3.2 单元电路设计3.2.1 LED显示模块首先我们根据LED点阵屏的显示原理:点阵屏的显示分为行扫描与列扫描两种,列扫描是将字模数组通过点阵屏的行驱动进行输入,然后通过列队每一行进行扫描,当列为低(高)电平,行为高(低)电平时,则表示该点为图案的一部分,将其读出、显示。

它们的顺序可以总结为:行不断的送数据,没送完设置的信息后,列进行读取,然后行再次送数据------一次循环下去,一幅完整的图案就显示在显示屏上了[2]。

本次设计的LED显示屏数据传输原理与LED点阵屏相似。

可以把LED显示棒看做是LED点阵中的一列。

我使用的是16只LED管将它们排成一列,整个屏静止时也就相当于16*1。

数据传输时使用行送数据,列扫描。

3.2.2 单片机最小系统的设计由于本次设计的显示棒,基本要求就是要小巧、轻便,所以要将单片机的系统板简化设计。

它的最小系统包括晶体振荡电路和电源部分。

图3-3为单片机的最小系统[3]。

图3-3 单片机最小系统3.2.3 软件设计思路在摇动LED 棒的时候单片机必须单程传送数据否则显示的图形会产生重影,影响视觉效果。

因此当系统开始通过水银开关中水银的位置来使单片机实现单程送数据给LED 。

在送数据时,数据送完后应该延时一段时间来使摇摇棒显示的每个字不会太拥挤。

之后再立刻熄灭LED 并开始重新判断水银的位置(整体流程图见图3-4)图3-4 整体流程图4设计结果及分析制作的摇摇棒能够清楚显示预先设置的画面图像以及汉字。

本次使用的是直径5m m的红色高亮LED,感觉太大了些,远看效果很好但近看时字不够连贯。

建议使用直径为3mm 的高亮LED,颜色可根据个人喜好选择。

显示字体画面可以根据个人喜好改变,取字模方式:纵向取模、字节倒序5 总结这次课程能够得以顺利完成,是所有曾经指导过我的老师,帮助过我的同学,一直支持着我的家人对我的教诲、帮助和鼓励的结果。

我要在这里对他们表示深深的谢意!特别感谢我的指导老师——游春霞老师。

游老师在我程序编写调试过程中,给我提供了极大的帮助和指导。

本次单片机课程设计完成之后,发现自己对于理论知识的应用存在很大不足,对于单片机的了解也还不是很深入,今后有待改进。

参考文献[1] 何立民.单片机应用技术选编 (1~10) .北京:北京航空航天大学出版社2006 P34[2] 江志红.51单片机技术与应用系统开发案例精选.北京:清华大学出版社.2008 P6 P16 P146[3] 张友德赵志英涂时亮.单片微型机原理、应用与实验(第四版).上海:复旦大学出版社.2003 P45附录:源程序#include <AT89X52.h>#define uchar unsigned char#define uint unsigned int //宏定义#define KEY P3_0 //定义画面切换按键uchar KY; //KY作用在后面说明uchar disp; //显示汉字指针uchar pic=0,num=0; //pic为按键次数;num为中断次数/*------------------笑脸图-------------------*/uchar code smile[]= {0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, 0x00,0x00,0x00,0x00,0x00,0x00,0xC0,0x01,0x40,0x01,0xC0,0x01,0x00,0x00,0x00,0x00, 0xF0,0x0F,0x08,0x10,0x04,0x20,0x00,0x00,0x00,0x00,0xF0,0x3F,0x08,0x00,0x04,0x00, 0x04,0x00,0x04,0x00,0x08,0x00,0xF0,0x3F,0x00,0x00,0x00,0x00,0x00,0x20,0x00,0x20, 0x00,0x20,0x00,0x20,0x00,0x20,0x00,0x00,0x00,0x00,0xF0,0x3F,0x08,0x00,0x04,0x00, 0x04,0x00,0x04,0x00,0x08,0x00,0xF0,0x3F,0x00,0x00,0x00,0x00,0x04,0x20,0x08,0x10, 0xF0,0x0F,0x00,0x00,0x00,0x00,0xC0,0x01,0x40,0x01,0xC0,0x01,0x00,0x00,0x00,0x00, 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, };uchar code hanzi1[] = {//-- 欢--0x04,0x10,0x34,0x08,0xC4,0x06,0x04,0x01,0xC4,0x82,0x3C,0x8C,0x20,0x40,0x10,0x30,0x0F,0x0C,0xE8,0x03,0x08,0x0C,0x08,0x10,0x28,0x60,0x18,0xC0,0x00,0x40,0x00,0x00,//-- 迎--0x40,0x00,0x42,0x40,0x44,0x20,0xC8,0x1F,0x00,0x20,0xFC,0x47,0x04,0x42,0x02,0x41,0x82,0x40,0xFC,0x7F,0x04,0x40,0x04,0x42,0x04,0x44,0xFE,0x63,0x04,0x20,0x00,0x00,//-- 使--0x40,0x00,0x20,0x00,0xF8,0xFF,0x07,0x00,0x04,0x80,0xF4,0x43,0x14,0x45,0x14,0x29,0x14,0x19,0xFF,0x17,0x14,0x21,0x14,0x21,0x14,0x41,0xF6,0xC3,0x04,0x40,0x00,0x00,//-- 用--0x00,0x80,0x00,0x60,0xFE,0x1F,0x22,0x02,0x22,0x02,0x22,0x02,0x22,0x02,0xFE,0x7F,0x22,0x02,0x22,0x02,0x22,0x42,0x22,0x82,0xFF,0x7F,0x02,0x00,0x00,0x00,0x00,0x00,};uchar code loveyou[] = {0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, 0x78,0x00,0xFC,0x00,0xFE,0x01,0xFE,0x03,0xFE,0x07,0xFE,0x0F,0xFE,0x1F,0xFC,0x3F, 0xF8,0x7F,0xFC,0x3F,0xFE,0x1F,0xFE,0x0F,0xFE,0x07,0xFE,0x03,0xFE,0x01,0xFC,0x00, 0x78,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*心形图案*/};unsigned char code hanzi2[] = {//--学--0x40,0x04,0x30,0x04,0x11,0x04,0x96,0x04,0x90,0x04,0x90,0x44,0x91,0x84,0x96,0x7E,0x90,0x06,0x90,0x05,0x98,0x04,0x14,0x04,0x13,0x04,0x50,0x06,0x30,0x04,0x00,0x00,//--业--0x40,0x04,0x40,0x04,0x40,0x04,0x40,0x04,0x44,0x44,0x44,0x24,0x48,0x24,0x48,0x14,0x50,0x14,0x50,0x14,0x60,0x14,0x40,0x04,0x40,0x04,0x44,0x04,0xFE,0xFF,0x00,0x00,//--有--0x04,0x04,0x04,0x02,0x04,0x01,0x84,0x00,0xE4,0xFF,0x3C,0x09,0x27,0x09,0x24,0x09,0x24,0x09,0x24,0x49,0x24,0x89,0xF4,0x7F,0x24,0x00,0x06,0x00,0x04,0x00,0x00,0x00,//--成--0x00,0x40,0x00,0x20,0xF8,0x1F,0x88,0x00,0x88,0x08,0x88,0x10,0x88,0x0F,0x08,0x40,0x7F,0x20,0x88,0x13,0x0A,0x1C,0x0C,0x24,0x08,0x43,0xC8,0x80,0x00,0xF0,0x00,0x00,//--天--0x40,0x80,0x42,0x80,0x42,0x40,0x42,0x20,0x42,0x10,0x42,0x0C,0x42,0x03,0xFE,0x00,0x42,0x03,0x42,0x0C,0x42,0x10,0x42,0x20,0x43,0x40,0x62,0xC0,0x40,0x40,0x00,0x00,//--天--0x40,0x80,0x42,0x80,0x42,0x40,0x42,0x20,0x42,0x10,0x42,0x0C,0x42,0x03,0xFE,0x00,0x42,0x03,0x42,0x0C,0x42,0x10,0x42,0x20,0x43,0x40,0x62,0xC0,0x40,0x40,0x00,0x00,//--开--0x80,0x00,0x82,0x80,0x82,0x40,0x82,0x30, 0xFE,0x0F,0x82,0x00,0x82,0x00,0x82,0x00, 0x82,0x00,0x82,0x00,0xFE,0xFF,0x82,0x00, 0x83,0x00,0xC2,0x00,0x80,0x00,0x00,0x00, //--心--0x00,0x04,0x00,0x02,0xC0,0x01,0x00,0x00, 0xF0,0x3F,0x00,0x40,0x01,0x40,0x02,0x40, 0x1C,0x40,0x08,0x40,0x00,0x40,0x00,0x70, 0x40,0x00,0x80,0x00,0x00,0x07,0x00,0x00,//--一--0x80,0x00,0x80,0x00,0x80,0x00,0x80,0x00, 0x80,0x00,0x80,0x00,0x80,0x00,0x80,0x00, 0x80,0x00,0x80,0x00,0x80,0x00,0x80,0x00, 0x80,0x00,0xC0,0x00,0x80,0x00,0x00,0x00, //--帆--0x00,0x00,0xF8,0x0F,0x08,0x00,0xFF,0xFF, 0x08,0x04,0xFC,0x8F,0x08,0x40,0x00,0x30, 0xFE,0x0F,0x22,0x00,0xC2,0x00,0x02,0x00, 0xFF,0x3F,0x02,0x40,0x00,0x70,0x00,0x00, //--风--0x00,0x80,0x00,0x40,0xFE,0x3F,0x02,0x20, 0x0A,0x10,0x12,0x08,0x62,0x06,0x82,0x01, 0x62,0x06,0x1A,0x18,0x02,0x00,0xFF,0x3F, 0x02,0x40,0x00,0x80,0x00,0xE0,0x00,0x00, //--顺--0x00,0x40,0xFE,0x3F,0x00,0x00,0xFC,0x1F, 0x00,0x00,0xFE,0x7F,0x02,0x80,0xF2,0x8F, 0x12,0x40,0x1A,0x20,0xD6,0x1F,0x12,0x20, 0x12,0x20,0xFB,0x4F,0x12,0x80,0x00,0x00, };unsigned char code hanzi3[] = {//--好--0x10,0x40,0x10,0x22,0xF0,0x15,0x1F,0x08, 0x10,0x14,0xF0,0x63,0x80,0x00,0x82,0x00, 0x82,0x40,0x82,0x80,0xE2,0x7F,0x92,0x00, 0x8A,0x00,0xC6,0x00,0x80,0x00,0x00,0x00, //--好--0x10,0x40,0x10,0x22,0xF0,0x15,0x1F,0x08, 0x10,0x14,0xF0,0x63,0x80,0x00,0x82,0x00, 0x82,0x40,0x82,0x80,0xE2,0x7F,0x92,0x00, 0x8A,0x00,0xC6,0x00,0x80,0x00,0x00,0x00, //--学--0x40,0x04,0x30,0x04,0x11,0x04,0x96,0x04,0x90,0x04,0x90,0x44,0x91,0x84,0x96,0x7E,0x90,0x06,0x90,0x05,0x98,0x04,0x14,0x04,0x13,0x04,0x50,0x06,0x30,0x04,0x00,0x00,//--习--0x04,0x00,0x04,0x00,0x04,0x08,0x04,0x18,0x14,0x04,0x24,0x04,0xC4,0x02,0x04,0x02,0x04,0x01,0x04,0x21,0x84,0x40,0x04,0x80,0x04,0x40,0xFE,0x3F,0x04,0x00,0x00,0x00,//--天--0x40,0x80,0x42,0x80,0x42,0x40,0x42,0x20,0x42,0x10,0x42,0x0C,0x42,0x03,0xFE,0x00,0x42,0x03,0x42,0x0C,0x42,0x10,0x42,0x20,0x43,0x40,0x62,0xC0,0x40,0x40,0x00,0x00,//--天--0x40,0x80,0x42,0x80,0x42,0x40,0x42,0x20,0x42,0x10,0x42,0x0C,0x42,0x03,0xFE,0x00,0x42,0x03,0x42,0x0C,0x42,0x10,0x42,0x20,0x43,0x40,0x62,0xC0,0x40,0x40,0x00,0x00,//--向--0x00,0x00,0xF8,0xFF,0x08,0x00,0x08,0x00,0xCC,0x1F,0x4A,0x08,0x49,0x08,0x48,0x08,0x48,0x08,0x48,0x08,0xE8,0x1F,0x48,0x40,0x08,0x80,0xFC,0x7F,0x08,0x00,0x00,0x00,//--上--0x00,0x40,0x00,0x40,0x00,0x40,0x00,0x40,0x00,0x40,0x00,0x40,0x00,0x40,0xFF,0x7F,0x20,0x40,0x20,0x40,0x20,0x40,0x30,0x40,0x20,0x40,0x00,0x60,0x00,0x40,0x00,0x00,};unsigned char code love[] = {0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFE,0x3F,0x00,0x20,0x00,0x20,0x00,0x20, 0x00,0x20,0x00,0x20,0x00,0x20,0x00,0x20,0x00,0x00,0x00,0x00,0x00,0x00,0xF8,0x0F, 0x04,0x10,0x02,0x20,0x02,0x20,0x02,0x20,0x02,0x20,0x04,0x10,0xF8,0x0F,0x00,0x00, 0x00,0x00,0x00,0x00,0xFE,0x07,0x00,0x08,0x00,0x10,0x00,0x20,0x00,0x20,0x00,0x10, 0x00,0x08,0xFE,0x07,0x00,0x00,0x00,0x00,0x00,0x00,0xFE,0x3F,0x82,0x20,0x82,0x20, 0x82,0x20,0x82,0x20,0x82,0x20,0x82,0x20,0x82,0x20,0x00,0x00,0x00,0x00,0x00,0x00, 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*L OVE*/};/*****函数声明*****/void display1(void);void display2(void);void display3(void);void display4(void);void display5(void);void display6(void);/*****n(us)延时子程序*****/void DelayUs(uint N){uint x;for(x=0; x<=N;x++);}/*****中断服务程序*****/void intersvr0(void) interrupt 0 using 1{KY=~KY; //每个摇动来回水银开关会在摆幅两端分别产生下降沿中断,只提取其中一次(从左向右摇才显示)if(KY==0){num++; //计算中断次数switch(pic) //选择画面{case 0:{display1();}break;case 1:{display2();}break;case 2:{display3();}break;case 3:{display4();}break;case 4:{display5();}break;case 5:{display6();}break;default:{display1();}}}}/*****显示子程序1(欢迎使用)*****/void display1(void){uchar i;DelayUs(5000);for(i=0;i<64;i++){P0=~hanzi1[i*2];P2=~hanzi1[i*2+1];DelayUs(100);}}/*****显示子程序2(笑脸)*****/void display2(void){uchar i;DelayUs(4000);for(i=0;i<64;i++){P0=~smile[i*2];P2=~smile[i*2+1];DelayUs(120);}}/*****显示子程序3(学业有成天天开心一帆风顺)*****/void display3(void){uchar i;if(num>10){disp++;num=0;} //12个汉字每次显示4个,每中断10次切换if(disp>2)disp=0;DelayUs(5000); //此处延时时间依各硬件差别而各不相同,试着调整使得显示内容居中即可for(i=0;i<64;i++){P0=~hanzi2[disp*128+i*2];P2=~hanzi2[disp*128+i*2+1];DelayUs(100);}}/*****显示子程序4(好好学习天天向上)*****/void display4(void){uchar i;IF(NUM>10){DISP++;NUM=0;} //12个汉字分为3次显示完,每中断10次切换if(disp>2)disp=0;DelayUs(5000); //此处延时时间依各硬件差别而各不相同,试着调整使得显示内容居中即可for(i=0;i<64;i++){P0=~hanzi3[disp*128+i*2];P2=~hanzi3[disp*128+i*2+1];DelayUs(100);}}/*****显示子程序5(LOVE)*****/ void display5 (void ){uchar i;DelayUs(4000);for(i=0;i<64;i++){P0=~love[i*2];P2=~love[i*2+1];DelayUs(120);}}/*****显示子程序6(心形图案)*****/ void display6(void){uchar i;DelayUs(4000);for(i=0;i<64;i++){P0=~loveyou[i*2];P2=~loveyou[i*2+1];DelayUs(120);}}/*****主函数*****/void main(void){IT0=1;EX0=1;EA=1; //开中断,下降沿中断KY=0;while(1) //主程序中只检测按键{if(KEY==0) //画面切换键按下{DelayUs(10000); //按键去抖if(KEY==0);pic++;}if(pic>5)pic=0; }}。

相关文档
最新文档