1、 单片机课程设计单片机课程设计 摇摇棒制作摇摇棒制作 1 目录目录 摘要摘要.1.1 一、一、 引言引言22 二、二、 系统设计方案系统设计方案22 1.1.设计思路设计思路.2.2 2.2.模块方案的论证与比较模块方案的论证与比较2 2 三、三、 系统硬件设计系统硬件设计3 3 1.1. 总体设计总体设计33 2.2. 单元电路设计单元电路设计44 四、四、 系统软件设计系统软件设计. .5 5 1.1. 软件设计思路软件设计思路. .5 5 2.2. 系统流程图系统流程图. .6 6 3.3. 软件实现功能的完善软件实现功能的完善. .6 6 五、五、 结论结论. .7 7 参考文献参考文
2、献8 8 附录附录. .8 8 附录一附录一 元器件明细表元器件明细表8 8 附录二附录二 系统程序系统程序9 9 附录三附录三 电路图电路图112 2 2 一、一、引言引言 LED 显示棒,又称摇摇棒,是一种利用视觉暂留效应制作的“高科技”玩具。 可以用“静如处子,动如脱兔”来形容它,即当静止时,它只是几个 LED 发光二 极管(后简称 LED) ,而一旦按照一定的频率去摇晃它,它就会随着位置的变 化而变化(亮或灭),最终显示一幅图片或字符串。 本设计要求制作完成一个 LED 的显示棒。要求 LED 灯线状排列,通过摇动 时形成的亮灯扇形区域能够分辨出如:“电”、“A”、五环之类的汉字或图案
3、 且可以使用按键对显示内容进行切换。 二、二、系统设计方案系统设计方案 1.设计思路 本系统要求设计一个 LED 显示棒,且需要有按键进行内容切换,它主要是 由中央控制部分、LED 驱动部分、LED 显示部分以及电源部分组成,如图 1 所 示: 图 1:LED 显示棒系统框图 单片机将提取的字模进行存储,当接收到按键输入的指令时单片机就将相应 的字模代码通过 I/O 口输出,使 LED 点亮,利用视觉暂留原理最终使图案完整 的显示在摆动的显示屏中。 本题的难点在于送数据的时间间隔以及较长画面或文字的完整显示。 以下将 对各模块的方案进行论证与比较: 2.模块方案的论证与比较 2.1 LED 灯
4、的选择灯的选择 方案一:传统 LED 发光二极管。颜色多样,在可以同样显示图案的前提下使 用它更为经济,但是颜色较为黯淡,不鲜亮。 方案二:高亮 LED 发光二极管。正如其名,它的亮度比传统二极管要亮,而 且同样也有很多颜色,但是高亮 LED 的工作电流也要大于传统二极管。 为了使显示的图案清晰、明了,我们选择方案二,经过比较,使用绿色 5mm 3 的 LED 使得显示画面更为明显、突出,使用 3 节 1.5V 电池为其供电,提供足够 的电流。 2.2 外部中断信号产生方式外部中断信号产生方式 通过外部中断可以控制数据开始传输的时刻。 选择好外部中断来源是本次制 作的难点及重点。 方案一:使用
5、惯性开关如水银开关。通过摇晃使得惯性开关的摆杆与焊接的 左右两个触点接触,利用这种接触产生的电平变化来触发中断,结合软件控制显 示,制作简单,使用方便。 方案二:使用光遮断器。在棒上装一个可以摆动的用来遮挡光遮断器光线的 细杆,细杆每左右摆动一次这个杆就会通过一次光遮断器,发生电平变化。同样 通过这种电平变化,结合软件控制显示。 本次设计中产生的中断是为了实现数据的单程传输。如果使用光遮断器, 其 触发单片机的时刻处于正中间,不能解决画面因为返回与原来图片重叠的现象。 而使用惯性开关, 因为在左右都有触点, 所以很容易的在往返途中产生两次中断, 方便指令控制,所以选择使用方案一。 2.3 抗重
6、影方案的选择抗重影方案的选择 方案一:使用外部中断控制数据传输时刻。外部中断信号由惯性开关产生, 触发方式为下降沿触发。 惯性开关左右两边的触点分别与单片机两个外部中断接 口相连,默认为高电平,摇动的摆杆接地。惯性开关处于不同位置进入不同的中 断,从而决定何时送数据。该方案简单易行,可以保证数据是单程传输的,避免 了重影。不摇动时把惯性开关处在左边就可以使 LED 棒熄灭,可以达到省电的 效果。 方案二:使用定时器与外部中断。当我们在摆动手臂的时候,短时间内摆动 位置和左右幅度不会有太大变化,利用我们手臂的这个运动规律,只要能得到棒 从一侧摆动到另一侧的时间,然后把这个时间分成N份,在每一份的时间里显示 不同的花样就能实现图形的显示。 设计中摇动的摆子与左右两个触点接触各一次 的时间可以通过外部中断和定时器计算出来,然后用单片机的另一个定时器T1, 其定时时间是T0 的N 分之一,每次中断依次显示一列,就可以得到预期显示的 图案了。该方法可以控制摇动频率低的时候不显示图形。但程序的稳定性不高, 图形之间的间隔不易确定,只要电源开关开