1、1单片机 C 语言程序设计课程设计一、课程设计时间 20122013 学年第二学期 第 1-2 周下午二、课程设计要求1、根据教师布置的题目进行选题;2、根据实验箱提供的功能,自行设计硬件电路图,并用 Protel 画出硬件原理图;3、采用单片机 C 语言或汇编语言进行编程,建议采用单片机 C 语言进行编程;4、编写完整的软件程序;5、调试、修改、完善;6、写出课程设计报告。三、参考题目1、全自动洗衣机控制器基本要求:采用步进电机模拟洗衣机电机,实现上水、浸泡、洗涤、漂洗、甩干等过程。洗涤分弱洗、轻洗、强洗;可设定 3 级水位设定,每级水位均设定水位下限;可选择漂洗次数(35 次) 。使用键盘
2、进行流程及参数设定及自动存储流程,设定暂停键,可暂时停止洗衣机的工作,恢复后按原设定程序继续进行,同时设定停止键,可终止洗衣机的工作,并在 LED 或 LCD 上显示当前流程。(1)上水时,通过可调电位器及 A/D TLC549 模拟水位检测传感器,若水位低于设定水位下限,则通过蜂鸣器报警,手动调节可调电位器,直至水位超过水位下限,切断进水开关(用开关量输出电路模拟) ,进入下一流程;(2)浸泡不进行任何操作,延时等待 30s;(3)洗涤时,先强洗、后轻洗再弱洗。可直接选择轻洗或弱洗。强洗、轻洗与弱洗的步进电机转速不同,依次递减,但均需正反转(转速自定、时间自定、正反转的时间自定) ;(4)漂
3、洗进行正反转,转速介于强洗与弱洗之间,或与强洗同。(5)甩干高速正向转动,时间自定;(6)洗涤、漂洗间均需脱水、上水,但脱水转速低于甩干。(7)通过 LCD 显示当前操作流程及剩余洗涤时时间附加要求:各级水位的设定值保存在 X5045 中。2、出租车计价器系统设计2主要方法和要求:原理是价格=速度时间单价(1) 采用直流电机测速单元模拟出租车速度;(2) 利用单片机的定时器/计数器定时和计数;(3) 用 LCD 实时显示当前总价、当前时间及里程数,其中总价显示单位为元,显示到小数点后 2 位,里程数单位为公里,显示到小数后2 位;(4) 累计里程数及累计行车时间转换以 8:00 作为转换开始时
4、间;(5) 起步公里数为 3 公里,起步价位 5 元;当出租车速度低于某一设定值时,自动进行计数,当计时每达到 5 分钟时,价格按照另一设定值进行计价。(6) 通过键盘控制显示速度,每天的累计里程数,行驶大于设定速度时间、小于设定速度时间及累积行车时间,并通过键盘进行单价设定及时间显示,其中,按暂停键,计价器可暂停计价;按查询键 1,可显示当前客人总等待时间;按查询键 2,可实现当天累积里程数、累积价格,行驶大于设定速度时间、小于设定速度时间及累积行车时间;按空车键,实现 LED 灯闪烁,同时蜂鸣器发出声音提示,5秒后停止声音。键盘功能自行定义、键盘采用 8279 键盘/显示芯片。附加要求:累
5、计里程数及累积行车时间存储在 X5045 的相关地址中。3、音乐播放系统设计 基本要求:利用单片机的定时器产生乐谱的各种频率方波,信号经过放大后由喇叭发出声音。(1) 开机时有欢迎界面;(2) 自行定义扫描键盘,通过功能按键实现乐曲的选择,乐曲选择要求能够实现单首乐曲及多首乐曲选择;(3) 通过键盘选择实现乐曲播放(单曲播放及多曲连放) 、暂停、暂停后继续播放及播放停止功能;(4) 可选择歌曲数目不少于 10 首;(5) 乐曲播放时在 LCD 的第一行显示演奏歌曲的名称。附加要求:在 LCD 上滚动实时显示演奏歌曲的歌词。4、数字电子时钟基本要求:选择串行时钟芯片 DS1302、在 LED 数
6、码管切换显示日期和时间(LED 显示格式为年 4 位月 2 位日 2 位) ,也可在 LCD 实现显示格式为年 月 日时:分:秒) 。(1)使用扫描式键盘,通过按键实现设定、修改日期和时间,省电(关3闭显示)等功能,键盘功能自行定义;(2)实现倒计时功能,倒计时时间由键盘输入设定,定时时间到 LED 闪烁;(3)实现 4 路可调闹钟功能,当 4 路闹铃中的任一路时间到时,通过不同的铃声显示闹铃时间到,且铃声持续时间不超过 1 分钟,用按钮开关可手动停止铃声;(4)通过 2 个按键,分别实现输出 10Hz 的正弦波及方波。附加要求:(1)采用 X5045 作为看门狗以监测系统状态,喂狗时间自定;
7、(2)将输出信号波形在 LCD 显示,将时间相关信息在 LED 数码管输出。5、交通灯系统设计基本要求:利用单片机的定时器定时,令十字路口的红绿灯交替点亮和熄灭,实现主支路路口的交通信号灯控制(尽可能保持主线的畅通,即在通常情况下,保持主线的放行,只有在支线到达时,才放行支线) ,同时采用 LCD 显示倒计时时间及当前灯的状态。具体要求为:(1)该控制系统能控制东西、南北两个方向的红、黄、绿信号灯正常工作;(2)当东西方向准行,南北方向禁行时,东西方向亮绿灯,南北方向亮红灯;(3)当南北方向准行,东西方向禁行时,南北方向亮绿灯,东西方向亮红灯。(4)两个垂直方向的准行时间均为 60 秒;(5)
8、准行方向亮绿灯与禁行方向亮红灯 55 秒后,同时 2 个方向加亮 2 盏黄灯进行闪烁,以警告车辆及行人,准行方向与禁行方向即将改变。(6)两个通行方向均用 LCD 显示准行的剩余时间;(7)在交通比较特殊的情况下,可通过按键进行相应控制: 当有紧急情况发生,如消防车、救护车通过时,按下键 1,两个方向的信号灯同时变红,释放键 1 后紧急状态结束,交通灯恢复先前状态; 当东西方向车辆过多,按下键 2,两个方向加亮 2 盏黄灯进行闪烁 5 秒,关闭倒计时装置,黄灯闪烁 5 秒后,东西方向红灯,南北方向绿灯,松开键 2 后,开始正常工作,工作起始状态为东西方向绿灯,南北方向红灯;同理,当南北方向车辆
9、过多,按下键 3,进行相似处理;4 当有盲人通过时,按下键 4,两个方向的信号灯同时变红,同时蜂鸣器发出声音提示音 5 秒,2 分钟后恢复先前状态。附加要求 :通过串行口通信,由上位机发送指令实现特殊情况下的状态,此时所有特殊情况均通过设定紧急状态时间来完成。指令包含实现紧急状态命令及紧急状态时间,具体指令自定,紧急状态时间为 30 秒的整数倍。紧急状态结束后,向上位机发送恢复正常信号(恢复信号指令自定) 。6、电子密码锁基本要求:采用 24C02 或 IC 卡,设置 6 位密码,最多比较 3 次,利用LED 灯显示密码输入正确与否。(1)利用 24C02 或 IC 卡,设置 6 位密码;(2
10、)当密码输入正确后的密码后开锁,用红灯亮绿灯灭表示关锁,绿灯亮红灯灭表示开锁;(3)密码最多可以试输入三次,如果三次输入错误,红灯闪烁,并通过蜂鸣器发出报警警报 5 秒钟;(4)第一次输入密码与开锁的时间超过 5S,红灯闪烁,并发报警警报。附加要求:将 6 位密码存入 X5045 中。7、智能电子钟基本要求:采用 DS12887 在 LED 动态显示时间,能够按照规定的作息时间定时闹钟,并在定时时间通过串行口打开或关闭音响或电视;也可在 LCD显示,格式为年月 日时:分:秒。(1)采用 8279 键盘管理,实现设定、修改日期和时间,键盘功能自行定义;(2)时间显示可以选择 24 小时模式,或带
11、有“AM”和“PM”指示的12 小时模式;(2)针对规定的作息时间(如起床、午休等)实现闹钟功能,铃声持续时间不超过 1 分钟,用按钮开关可手动停止铃声;(3)针对定时时间,通过串行口 RS232 发送打开或关闭音响或电视命令,(4)如果发送音响相关命令,输出 10Hz 的锯齿波信号;如果发送电视相关命令,输出 10Hz 的三角波信号,并将发送命令显示在 LCD。附加要求:(1)实现公历与农历时间转换;(2)将输出信号波形在 LCD 显示,将时间相关信息在 LED 数码管输出。5四、验收课程设计四天,第五天验收。要写出完整的课程设计报告,要求如下。五、课程设计报告写作要求 (一)、封面 (二)、内容提要 (三)、目录 (四)、正文 1、概述所作题目的意义、本人所做的工作及系统的主要功能2、硬件电路设计及描述(电路原理用 Protel 画出)3、软件设计流程及描述4、源程序代码(要有注释)(五)、课程设计体会 (六)、参考文献 六、成绩评定课程设计成绩由出勤情况、工作态度、硬件设计、软件编程、课程设计结果和课程设计报告综合评定。