单片机设计三位抢答器.docx

  1. 1、本文档共13页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
《单片机原理与应用》 课程设计报告 (2015— 2016学年 第 1 学期) 选题名称: 三位抢答器设计 班 级: 计算机一班 学 号: ********** 姓 名: ****** 指导老师: 许华荣 计算机与信息工程学院 2016年1月8日 目录  TOC \o 1-3 \h \z \u  HYPERLINK \l _Toc440048869 一、课程设计要求  PAGEREF _Toc440048869 \h 3  HYPERLINK \l _Toc440048870 二、总体设计思路  PAGEREF _Toc440048870 \h 3  HYPERLINK \l _Toc440048871 1、设计逻辑图  PAGEREF _Toc440048871 \h 3  HYPERLINK \l _Toc440048872 2、工作原理  PAGEREF _Toc440048872 \h 4  HYPERLINK \l _Toc440048873 3、功能模块  PAGEREF _Toc440048873 \h 4  HYPERLINK \l _Toc440048874 4、效果展示  PAGEREF _Toc440048874 \h 7  HYPERLINK \l _Toc440048875 三、课设总结体会  PAGEREF _Toc440048875 \h 8  HYPERLINK \l _Toc440048876 附件:  PAGEREF _Toc440048876 \h 8  一、课程设计要求 任务:设计一个3位竞赛抢答器:同时供3名选手或3个代表队比赛。 功能要求: (1)3名选手或3个代表队比赛,分别用3个按钮S0~S2表示; (2)设置一个系统清除和抢答控制开关S,开关由主持人控制; (3)抢答器具有锁存与显示功能。即选手按按钮,锁存相应的编号,并在优先抢答选手的编号一直保持到主持人将系统清除为止; (4)抢答器具有定时抢答功能,最好做到一次抢答的时间由主持人设定(如30秒)。 二、总体设计思路 1、设计逻辑图 开始 否 开始键按下 是 设计时间 否 是 f1=0 f1=1 f1=1 是 否 默认时间执行 按设置时间执行 选手抢答后进入倒计时 结束 2、工作原理 三位抢答器共设置抢答按键三个(按键“1”、按键“2”、按键“3”)、主持人开始按键一个(按键“0”)、时间设置按键一个(按键“+”)、蜂鸣器功能一个、LCD液晶屏显示功能。 打开开发板开始执行代码,循环判断主持人提示开始按键是否按下,如果主持人按键没有按下,无法进行抢答及其他任何操作;如果主持人提示开始按键按下,蜂鸣器响一声提示选手可进行抢答,同时主持人可以根据要求设置倒计时时间,不进行设计则默认10秒运行倒计时。主持人提示开始按键按下会在LCD上显示一个“0”,便于实现结果展示;如果有进行时间设置则会在LCD上显示设置好的时间,如20、30、40……(单位:秒),没进行时间设置不会显示倒计时时间。 选手听到蜂鸣器提示后进行抢答,有一位选手抢答成功后,会有蜂鸣器提醒并在LCD上显示选手对应的编号;如果抢答成功,开始在LCD上显示倒计时时间,其他两位选手将无法再进行抢答,直到选手完成抢答或者倒计时时间结束,才可进行下一轮的抢答。 难点:(1)实现选手抢答限制。通过声明一个标识值判断是否可执行下一个操作,如f1,当f1=0时,无法进行抢答操作,LCD上不会显示;f1=1,可进行抢答操作,并会在LCD上显示抢答者编号以及倒计时时间。(2)实现主持人时间设置。通过声明一个标识值判断设置的时间或者是默认时间执行,如key_num,当key_num=1,倒计时时间设置为20秒;key_num为其他值时对应相应的时间函数。 3、功能模块 (1)主持人控制功能及主持人设置倒计时时间 声明定义一个函数对抢答器选用的主持人提示开始按键、倒计时时间设置按键进行扫描,如主持人提示开始抢答按键的在第一列的第四位(按键“0”),倒计时时间设置按键在第四列第三位(按键“+”),可在main()中直接调用通过判断f1的值来实现抢答限制功能,并对倒计时时间进行设置,同时通过倒计时时间显示函数,在LCD上显示倒计时时间。 功能函数代码如下: void start()//主持人提示开始抢答函数 { uchar tempp; P1=0xef;//第一列检测 tempp=P1; tempp=tempp0x0f; if(tempp!=0x0f) { D

文档评论(0)

三哥 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档