2012国信长天ct107d单片机设计与开发项目模拟试题及参考程序小区自动售水机.docxVIP

2012国信长天ct107d单片机设计与开发项目模拟试题及参考程序小区自动售水机.docx

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
2012国信长天ct107d单片机设计与开发项目模拟试题及参考程序小区自动售水机

竞赛时间:5小时 题号 一 二 二 总分 配分 15分 30分 55分 100分 得分 功能简述 通过竞赛硬件平台模拟小区自动售水机的工作流程:通过按键控制售水机水流出和停止; 通过数码管显示费率、出水量及总费用;通过光敏电阻检测环境亮度,在亮度过低的情况下, 自动开灯。系统硬件电路主要由单片机控制电路、数码管显示电路、奶转换电路及功能按 键组成。系统框图如图1所示: 图1.系统框图 I2C总线驱动程序、CT107D考试平台电路原理图以及本题所涉及到的芯片数据手册, 可参考计算机上的电子文档。程序流程图及相关工程文件请以考生号命名,并保存在计算机 上的考生文件夹中(文件夹名为考生准考证号,文件夹位于Windows桌面上) 设计任务及要求 1.按键控制单元 设定按键S7为出水控制按键,当S7按下后,售水机持续出水〈继电器接通,指示 灯L10点亮设定按键S6为停水控制按键,当S6按下后,停止出水〈继电器断开, 指示灯L10熄灭X 1.数码管显示单元 通过4位数码管DS1显示费率,单位为元丨升,保留2位有效数字; 通过4位数码管DS2显示当前出水总量(出水时,单位为升)和总价(停止时,单 位为元按下出水按键S7后,清除数码管DS2显示数据,数码管DS2实时显示出水 量(保留两位有效数字〕,在出水状态下,再次按下S7,不会影响出水状态,直到按下停 止按键S6为止;按下停止出水按键S6后,数码管DS2显示总价(保留两位有效数字X 例:当S7按下后,数码管示意图如图2所示: 图之.售水机出水状态数码管显示 当按键86按下后,数码管示意图如图3所示: 图3^售水机出停水态数码管显示 3^入0转换单元 通过光敏电阻RD1和AD转换芯片PCF8591组成的亮度检测电路〈亮度值转换为PCF8591光敏电阻通道的电压〕检测环境亮度;当:PCF8591光敏电阻通道输入电压小 于1.25 V时,L1点亮,大于1.25V时,L1熄灭。 4^系统说明 1.假定水价为0.5元/升,出水速度为100毫升/秒; 1. 一次出水总量达到99.99L时,继电器自动断开,数码管显示DS2显示价格。 项目名称 得分 评卷人 电路设计 一.电路原理图设计 根据设计任务要求,设计“接口电路”原理图,并标明元器件参数;8CH只文件保存在 考生文件夹中(文件夹以考生的准考证号命名〕。〔15分) 项目名称 得分 评卷人 程序设计 二.程序编写及流程图绘制 1.画出程序流程图,保存在考生文件夹中。〔15分) 2^按照设计要求完成程序设计任务,并将工程文件保存在考生文件夹中。〔15分) 项目名称 得分 评卷人 硬件调试 三.硬件调试 将编译通过的程序下载到处理器芯片中,进行硬件调试。 1.按键控制功能实现〔15分) 2^数码管显示功实现〔20分) 3^继电器功能实现〔5分) 4^AD采集及LED控制功能实现〔15分) 参考程序 #include reg52.h #include intrins.h #define uchar unsigned char #define uint unsigned int #define somenop {_nop_();_nop_();_nop_();_nop_();_nop_();} uchar code smg_du[] = {0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90}; uchar code smg_we[]={0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80}; uchar code smg_du1[]={0x40,0x79,0x24,0x30,0x19,0x12,0x02,0x78,0x00,0x10,0x7f}; //有小数点的段选 sbit SDA = P2^1; sbit SCL = P2^0; sbit s7=P3^0; sbit s6=P3^1; uchar tflag,dspflag,qian,bai,shi,ge,qian1,bai1,shi1,ge1,num,temp,bb; uint t,aa,date; void delayms(uint x) { uchar t; while(x--)for(t=0;t120;t++); } void keyscan() { if(s7==0) { delayms(10); if(s7==0) { P0=0x10;P2=0xa0;P2=0; TR0=1;num=1;t=0; while(!s7); } } if(s6==0) { delayms(10); if(s6==0) { date=t/2;TR0=0; P0=0;P

文档评论(0)

zilaiye + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档