DIY编程器网

 找回密码
 注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 1375|回复: 0
打印 上一主题 下一主题

[家电] PIC单片机在中央空调控制器中的应用

[复制链接]
跳转到指定楼层
楼主
发表于 2012-1-27 19:44:24 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

  
         
    摘 要 基于PIC16F877/16C74单片机,设计了一种能满足用户尺寸要求的中央空调控制器。
关键词:PIC16F877,中央空调控制器,红外遥控编码,红外遥控译码,模数转换  
1 引 言
  中央空调控制器有别于普通空调控制器。普通空调控制器安装于室内挂机内,对控制器尺寸要求不高,采用任何单片机加上外扩,不管多少外围器件都没问题。但中央空调控制器由于没有可放置的室内机,所以只能单独放置,这样,就要求控制器小巧精致。本设计中,用户要求设计的控制器尺寸与一般的家用开关面板大小相仿,上面排布七个按键,十个LED发光指示和一个温度显示,功能上还有遥控、两路温度采样等。
2 系统硬件设计
    根据用户要求,我们进行了初步设计。在排布组件时,我们就发现,这么小的空间,放上面板所需的键盘、显示后,只留下了一片单片机的位置,那么A/D、红外遥控译码和外围驱动电路怎么放?经过比较,我们最终选择了PIC单片机。在开发阶段使用PIC16F877,以后还可改为PIC16C74,以降低产品成本。
    PIC16F877应用于本系统具有以下优势:
  ·自带10位多通道模数转换器,因而无须增加外围模数转换器;
  ·有三个定时器,有足够的时钟可用,因为空调控制最重要的部分就在时钟上,而且实现红外遥控的软件解码亦需定时器。
  设计中,为了减少驱动要求,全部采用低电平有效,这样就进一步减少了外围器件对空间的要求。




  图1中,RA3引脚由于模数转换的设置限制而不能使用,RC0、RC1引脚由于时钟定义限制而不能使用。
3 系统软件设计
3.1 总体设计方案
  系统主程序非常简单,主要执行一个任务,就是键盘扫描检测,因为PIC16F877只有一个外部中断引脚,为实现红外遥控软解码,键盘须采用扫描查询方式。本系统的技术方案主要集中在红外遥控软件解码和时钟控制上。
3.2 红外遥控软件解码
  红外遥控采用HOLTEK公司的HT6221多功能编码芯片,该公司公布的资料显示,该芯片采用PPM进行编码,HT6221每发送一个码,先送出一个9ms的头码和4.5ms的间隙,然后依次送出16位的地址码(18ms~36ms)、8位数据码(9ms~18ms)和8位数据反码,图2给出了DOUT引脚上输出的格式。
  数据的识别为:1.12ms为0,2.24ms为1,如图3所示。这样,红外遥控软件解码需设计一时钟,与中断同步计数就可识别了。本系统的系统时钟为4MHz,为了便于识别数据值,我们确定:时钟中断为0.28ms。其基本工作原理为:通过判断两次外部中断间时钟中断的次数(即时间值)来解码。基本算法如下:


















3.3 时钟控制设计
  时钟中断设计是本系统的重点,系统每一部分功能几乎都围绕时钟进行,例如:制冷室内风机起动20秒后压缩机外风机才起动,温度到时,压缩机关机20秒后关风机,压缩机停机后三分钟才能再开;按键调温度,5秒停止按键后恢复,并显示温度,LED要闪烁。各种模式下,除了本身控制需要的时间要求外,还有许多为保护系统而设的时钟要求。经过对系统的仔细分析,设计方案主要从两个方面着手:
  一是处理好各种状态,为此,为每种状态都定义状态标志如下:
    系统的四种切换模式定义状态,定义名为mode









  上面列出了系统所定义的状态,正是有了这些状态的帮助,才方便了时间控制的处理。
  二是经分析,时钟的要求尽管多,但都为秒、分、时,所以就设计了一个真正的“时钟”,把“秒”的控制放在“秒”一段,“分”的放在“分”一段,“时”的放在“时”一段,结合上面的状态,使控制逻辑非常清晰。下面给出算法示意:
  时钟中断服务程序
    Secs++“秒”计数
If Secs-1 如果不到1分钟,处理“秒”程序段
else
    {









  以上程序是用汇编语言实现的,为了清晰及减少篇幅,这里改用算法描述来说明。 ■

         
          [/td]
        [/tr]
      
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友 微信微信
收藏收藏 分享分享 支持支持 反对反对
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|文字版|手机版|DIY编程器网 ( 桂ICP备14005565号-1 )

GMT+8, 2024-4-26 22:06 , 耗时 0.090091 秒, 18 个查询请求 , Gzip 开启.

各位嘉宾言论仅代表个人观点,非属DIY编程器网立场。

桂公网安备 45031202000115号

DIY编程器群(超员):41210778 DIY编程器

DIY编程器群1(满员):3044634 DIY编程器1

diy编程器群2:551025008 diy编程器群2

QQ:28000622;Email:libyoufer@sina.com

本站由桂林市临桂区技兴电子商务经营部独家赞助。旨在技术交流,请自觉遵守国家法律法规,一旦发现将做封号删号处理。

快速回复 返回顶部 返回列表