家用电风扇程序设计1.docVIP

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

课程设计任务书 姓 名 王勃 家用电风扇程序设计 一、设计要求 设计一个操作面板如上图所示的电风扇,具有以下功能: 电风扇处于停转状态时,所有指示灯不亮,此时只有按“风速”键电扇才会响应,其初始工作状态为“风速”——弱,“风种”——正常,“定时”——连续状态,且相应指示灯亮。 电扇一经启动后,再按动“风速”键可循环选择弱、中或强三种状态中的任意一种状态。弱、中、强对应电扇转速由慢到快。 按动风种键可循环选择正常、自然或睡眠三种状态中的某一种状态。“风种”在正常位置是指电扇连续运转,在“自然”位置,是表示电扇模拟产生自然风,即运转5秒,间断5秒;在:“睡眠”位置,是产生轻柔的微风,此时风速被设为弱,电扇运转10秒,间断10秒。 按动定时键可循环选择连续、30分钟、60分钟、90分钟四种定时方式中的某一种。其两指示灯全灭表示连续状态;全亮表示90分钟定时。 在电扇任间工作状态下,按停止键,电扇停止工作,所有指示灯熄灭。 二、总体方案 根据设计要求和内容,用可编程并行接口芯片8255A 的PA口控制8个状态指示灯(即8个发光二极管),分别表示强、中、弱、正常、自然、睡眠、30分钟、60分钟。PB口接收4个按键(分别表示风速、风种、定时、停止)的状态以启动电扇或设置相应的工作状态。这样就需要4个按键,因此可以用实验箱上的某一列的4个按键,可以将此列的列选择线直接接为低电平,4个行输入线接到8255的口。这样可以直接从8255的口读取按键的状态,从而执行相应的操作。要通过一个按键来控制2个以上的状态,可以通过按键的次数来控制第几种状态,比如风速有三种状态(弱、中、强),可以用按键1次控制弱,按键2次控制中,按键3次控制强,这样就可以实现一键控制多钟状态了。 用实验箱上的直流电动机作为电风扇,其转速可有D/A转换芯片0832来产生不同的电压来控制电风扇。 8位D/A转换器的输入数据与输出电压的关系为 U(-5V~5V)=2Uref/256*N-5V(Uref为+5V) 风种及定时的时间控制可由可编程计数器/定时器 8253来实现。可选用由8253工作方式2,在这种方式下,当CPU输入控制字后,输出将为高,在写入计数值后计数器将立即自动对输入时钟CLK计数,计数器减为1时,输出将变低,方式2时8253不可用重新设置计数值就能连续工作,保证了定时的精确。可以将定时时间设为50ms。可将8253定时器的输出信号与8259中断控制器的中断请求信号相连,每个定时周期可产生一次中断响应作为风种和定时的时间基准。这样可在中断服务程序中设计计数单元,对此时间基准作为计数,以生成所需的定时时间。 三、原理框图 流程图(二) 中断服务程序 流程图(一) 主程序 流程图(三) 风扇运行控制程序 四、系统模块详细设计与调试 1.四个键分别控制风速、风种、定时、停止 采用实验箱上的键盘上的一列的4个按键(A,B,C,E)分别表示风速、风种、定时、停止,将此列的列选择线直接接为低电平,4个行输入线分别接到8255PB口的PB7、PB6、PB5、PB4。这样在编程就可以实现用按键控制了。编写的程序中可以用TEST指令来判断,如果有某个键按下,就转到相应的状态设置程序,否着则继续执行下面的指令,如风速键的编程,用TEST AL,80H来判断风速键是否按下,如果检测到风速键按下,就转到风速状态(即弱、中、强三种状态)设置子程序,以便能够通过风速键控制这三种状态(用三个二极管来显示)。如果没有检测到按下,则继续进行下面的风种键的检测。这样就可以实现四个键分别控制风速、风种、定时、停止。 2.风速、风种、定时状态设置 因为要实现风速、风种、定时3个按键对风速(弱、中、强)、风种(正常、自然、睡眠)、定时(30min、60min、90min、连续)共8个状态的控制,就需要对这8个状态进行设置,因为一个键所对应的设置方法大同小异,可以以风速状态做代表来说明设置方法,其设置方法如下:因为风速的3状态要保存,所以要在数据段声请一个地址来存放。这里用风速键按下的次数来实现三种状态的变换,初始状态为按第一下表示弱状态,在按一次表示中状态(即使表示中状态的发光二极管亮),在按一次表示强状态,在按一次表示又返回到弱状态,这样依次循环下去。用编程是这样实现的,当转到风速风

文档评论(0)

整理王 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档