基于PIC16C74单片机空调室内机软件的实现

发布者:SereneMelody最新更新时间:2007-06-21 来源: 现代电子技术关键字:遥控  控制  指令  定时 手机看文章 扫描二维码
随时随地手机看文章
单片机软件实现是单片机系统应用的重点,他是在硬件设计基础上实现程序设计的重要环节。单片机程序设计一般包括以下几个步骤:软件规划、流程图编制、代码编写。由于单片机系统具有软硬件紧密结合的特点,因此在基于某种单片机系统的软件开发时,应充分了解该系统实现的硬件环境,同时也应该在系统设计与硬件设计阶段,对软件设计有一个大体的规划。因此,本文在介绍室内机控制器功能的基础上,重点讨论如何用软件实现该室内机的功能。

1室内机控制器的功能

室内机控制器主要是驱动风门步进电机,接收来自红外遥控器设计的指令,进入到相应的工作状态,并显示运行状态。

室内机控制器包括以下几个硬件电路模块:室内机处理器,室内机驱动电路,风门步进电机,显示板电路(LED),红外遥控接收/发送电路,室内机外装置串行通信电路,温度传感器电路。室内机控制电路框图如图1所示。

1.1室内机CPU

从以上室内机控制器包含的硬件电路模块来看,要设计家用空调控制器在功能上要求具有2路温度传感器,1个步进电机控制接口,1组PG调速风机控制,10 个发光二极管温度指示,红外遥控接收接口和室外机组控制接口。选择Microchip公司的PIC16C74单片机,可以满足以上条件,该单片机具有以下特点:

(1) 独立分离的数据总线和14 b指令总线的“哈佛”结构,采用33条精简指令集,指令执行速度快,效率高。内含4 kB程序存储器和192 B数据存储器,满足设计要求。
(2) 内置具有8路10 b A/D转换,简化电路设计。
(3) 3个硬件定时器,便于控制器复杂的延时保护。

1.2PG电机

PG电机内的霍尔传感器主要是检测电机的转速并反馈到CPU中,最终达到调节风速的
目的。在设计闭环风机调速部分,可以采用简单的二阶伺服环路控制模式,在速度闭环的基础上增加加速度闭环控制算法,解决风机控制的风速抖动问题,使得PG电机运转平稳性得到大幅度提高。

2空调室内机控制器软件规划

2.1软件的总体设计

在进行室内机控制器软件实现时,首先要进行软件设计,软件设计主要基于模块化设计思想,将软件分解成若干功能,通过主程序将各软件设计模块有机地组织起来。该室内机控制器的软件设计模块主要包括:主程序、红外接收模块、运行模块、风门步进电机控制模块、PG风机调速模块、运行模式模块、A/D转换处理模块。同时在设计时应考虑以下几类中断:

自动按键中断、风机速度中断,除此之外应规划设计2个定时器中断:设置定时器0产生250ms定时中断,定时器1产生125 μs定时中断。

2.2软件的详细设计

对室内机控制器在总体上进行了模块功能的设计后,应对每一个模块的实现进行详细设计,在这里以运行模式模块为例来讨论该模块的详细设计过程。

空调室内机运行模式主要包括:自动运行模式、制冷运行模式、抽湿运行模式、通风运行模式和制热运行模式。以下主要从各运行模式特点、各模式与主程序的流程图规划和运行模式编程语言的选择与编程实现等3个方面介绍如何开发一个复杂工程。

2.2.1空调室内机各运行模式的特点

(1) 自动运行模式进入自动模式,LED显示屏上自动标志常亮,5 s
后选定工作模式,5 s期间风门、风速、温度可调,空调根据最终设定温度(默认初始设定值24 ℃)与当前室温的差别,自动进入制冷或制热模式,以维持设定温度,令室内温度为T,设定温度为T0,当T≥T0时,进入制冷运行;当T0时,进入制热运行。

(2) 制冷运行模式制冷运行模式温度设定范围为16~30 ℃(初始值24 ℃),当T≥T0时,压缩机、外风机运转;当T0时,压缩机、外风机停止运转;当室内温度回升到高于设定温度1.0 ℃时,压缩机、室外风机运转,室内机始终运转,可选 择自动、高、中、低任意一档风速。在自动风速时:Δt≥2 ℃,高风;Δt≤0 ℃,低风(其中Δt=|T-T0|);当选择制冷方式运转后,空调可按图2所示运行。在制冷状态下,同时要考虑空调器自我保护的设计。例如,防止换向阀误动作引起的异常升温和防止冻结等。

(3) 制热运行模式制热运行模式下温度设定范围为16~30 ℃(初始值24 ℃),当选定制热运行方式后,可按图3所示运行,在制热过程中风速可任意选择,并在制 热过程中考虑防冷风控制、超负荷、吹余热等保护功能的设置。

(4) 抽湿运行模式当选择抽湿方式运转,空调器将以制冷方式运转到室内温度达到遥控器设定的温度为止,然后转入抽湿方式,开3 min再停3 min,如此循环进行。停机时,内风机延时30 s停止。在抽湿运转时,温度可调,温度范围设定在16~30 ℃。

(5) 通风运行模式在通风运行模式下,室外机组停止运转,室内风机可选择自动、高、中、低任意一档风速。当Δt>4 ℃时,运行高风,当Δt<0 ℃时,运行低风。
2.2.2空调各运行模式的流程图设计

面对复杂系统的实现,在程序实现之前,应依赖于流程图使复杂的问题变得清晰易于理解,因此在分析了各运行模式的特点后,利用结构化分析方法将各运行模式模块化,然后再在模块化的基础上具体绘制各模块的流程图,将各功能模块的功能进行进一步明确。以下给出了主程序的流程图和制冷运行模式的流程图,如图4、图5所示。




2.2.3运行模式编程实现

各模块的流程图画好后,下一步的工作就是要用某种编程语言实现各功能模块。在用编程语言实现时,选择了Microchip公司提供的MPLAB(4.00)集成开发环境。该开发环境是Microchip公司为其PIC系列单片机专门设计的开发环境,该平台包括编辑器、编译环境、软件仿真、硬件仿真,同时该环境采用Windows界面,开发设计非常方便。由于篇幅的原因这里只给出制冷运行模块的编程实现。

  
  
  

3结语

在基于PIC16C74单片机空调室内机软件的实现时,对该系统的系统设计与硬件设计进行了充分的了解,并在此基础上运用结构化程序设计的方法进行功能分解与模块设计,使得在编程时能达到事半功倍的效果,且有利于日后对程序的仿真和调试。

参考文献

1]何利民.MCS51单片机应用系统设计[M].北京:北京航空航天大学出版社,1994.
2]史国生.交直流调速系统[M].北京:化学工业出版社,2002.
3]李英顺,伦淑娴.模糊控制PID测控仪[J].仪表技术与传感器,2003.
4]胡汉才.单片机原理机接口技术[M].北京:清华大学出版社,1999.

关键字:遥控  控制  指令  定时 引用地址:基于PIC16C74单片机空调室内机软件的实现

上一篇:带全速USB接口的PIC18F4550应用设计
下一篇:PIC16F874在喷织机控制系统中的应用

推荐阅读最新更新时间:2024-03-16 12:22

飞思卡尔拉上ARM,控制器市场大变革
与老摩托时代的循规蹈矩不同,分拆后的飞思卡尔,被贴上了大胆创新的标签。 业界将摩托罗拉手机采用Android平台定义为摩托系进军移动互联网时代的开篇,但严格意义上来说,摩托罗拉移动的前辈——飞思卡尔要进入得更早。至今,采用ARM架构的i.MX处理器已演进到第五代。 然而这还不够。 2010年,飞思卡尔宣布推出Kinetis系列处理器,这是基于全新的ARM Cortex-M4内核的单片机。当时,距离ARM发布Cortex-M4只有半年时间,“我们这次是在正确的时间做出了正确的选择。”飞思卡尔消费和工业微控制器(MCU)产品部亚太区经理曾劲涛说道。 是掣肘还是引擎? 作为嵌入式处理领域的常青藤,飞思卡尔提供从几百美元基站处理
[单片机]
用于自动或半自动机器人的RIO嵌入式控制平台
   概览      自动或半自动机器人常常需要嵌入式控制系统,从而能够结合高度智能化的确定性控制,并且可以方便地连接到不同的传感器和执行器上。NI提供了多种嵌入式硬件平台,以满足复杂系统的需求。从尖端的机器人研究项目直至高级行业应用,NI平台被证实是高效的机器人解决方案。       可重复配置I/O(RIO)体系结构      NI嵌入式硬件平台共享通用一个可重复配置I/O(RIO)体系结构。这个体系结构整合了实时处理器、现场可编程门阵列 (FPGA)和多样的I/O,包括模拟、数字、运动和通信I/O。使用这个标准的体系结构和NI LabVIEW图形化开发工具,您可以使用灵活的高性能硬件,快速对机器人系统进行设计和原型开发。
[测试测量]
用于自动或半自动机器人的RIO嵌入式<font color='red'>控制</font>平台
基于ARM的校园LED公告板远程控制系统设计
  近年来,LED 电子显示屏作为一种高科技产品日益引起人们的重视。它可以实时显示或循环播放文字、图形和图像信息,具有显示方式丰富、观赏性强、显示内容修改方便、亮度高、显示稳定且寿命长等多种优点,被广泛应用于诸多领域。随着LED 显示屏行业的不断发展, 人们对LED 显示屏的控制要求越来越高,尤其是LED 显示屏的远程控制,传统的单个LED 显示屏的控制已经很难满足多个LED 显示屏的应用场合。   目前,校园内的LED 公告板的使用越来越多,用于各类通知的宣传和传播,但其控制仍是以单块LED 公告板控制为主流,操作和更新显示屏信息十分不方便。在这种背景下,本设计对目前校园内的LED 公告板系统进行研究和改进,在原有的LED 公
[电源管理]
基于ARM的校园LED公告板远程<font color='red'>控制</font>系统设计
基于LPC2292微控制器和CAN控制器实现车辆行驶监控系统的设计
1 终端功能 本监控终端除了具有传统的记录仪所拥有的事故分析功能外,还能在汽车驾驶员超速行驶时发出超速报警声,以提醒驾驶员减速行驶,并详细记录车辆每次的开车时间、行驶里程、行驶时间、最高车速,以及每次最高车速的持续时间,方便交通管理部门根据所记录的有关数据对车辆进行有效的管理;同时,该设备可实现多种信息处理,显示汽车状况,进行自我诊断,对车速、发动机转速、水温、油压、刹车气压、轮胎压力和蓄电池电压等一系列参数进行有效监控;通过控制发光二极管、液晶显示、蜂鸣器等报警手段,为司乘人员提供直接的汽车状况信息并发出各种超限情况的报警等,可有效防范和化解车辆事故的发生。另外,终端具有GPRS和GPS模块,可将各种监测数据实时传至公司管理中心
[单片机]
基于LPC2292微<font color='red'>控制</font>器和CAN<font color='red'>控制</font>器实现车辆行驶监控系统的设计
分析基于PIC单片机的SPWM控制技术
前 言 在UPS等电力电子设备中,控制方法是核心技术。早期的控制方法使得输出为矩形波,谐波含量较高,滤波困难。SPWM技术较好地克服了这些缺点。目前SPWM的产生方法很多,汇总如下。 1)利用分立元件,采用模拟、数字混和电路生成SPWM波。此方法电路复杂,实现困难且不易改进; 2)由SPWM专用芯片SA828系列与微处理器直接连接生成SPWM波,SA828是由规则采样法产生SPWM波的,相对谐波较大且无法实现闭环控制; 3)利用CPLD(复杂可编程逻辑器件)设计,实现数字式SPWM发生器; 4)基于 单片机 实现SPWM,此方法控制电路简单可靠,利用软件产生SPWM波,减轻了对硬件的要求,且成本低,受外界干扰小
[单片机]
分析基于PIC单片机的SPWM<font color='red'>控制</font>技术
数字信号处理(DSP )系统测试和调试4
  仿真功能   仿真可以提供一套用于集成和调试阶段的标准操作。它的一些主要功能如下:   断点(Breakpoints)   仿真技术的一个普通功能就是支持断点。断点可以中断DSP,并让开发者可以检测目标系统上的数据或寄存器。断点功能是由仿真器来控制的。仿真器执行协议来在执行流尽可能早的地方停止CPU,并让开发者在需要时从当前点继续执行。   由于从运行状态转向暂停状态可以在瞬时发生,大部分断点都是同步的。   软件断点是同步断点的一种形式。它可以在特定断点处保存指令,并以能创建出一个例外条件的不同指令取而代之。这样一来,控制功能就被转移到了可保存重要DSP 状态寄存器上下文的控制器上。当由主调试器来进行控制时,开发者就可以在C
[嵌入式]
数字信号处理(DSP )系统测试和调试4
STM32定时器配置,定时计数模式下总结
文章结构: ——   一、定时器基本介绍 ——   二、普通定时器详细介绍TIM2-TIM5 ——   三、定时器代码实例 一、定时器基本介绍 之前有用过野火的学习板上面讲解很详细,所以直接上野火官方的资料吧,作为学习参考笔记发出来 二、普通定时器详细介绍TIM2-TIM5 2.1 时钟来源 计数器时钟可以由下列时钟源提供: ·内部时钟(CK_INT) ·外部时钟模式1:外部输入脚(TIx) ·外部时钟模式2:外部触发输入(ETR) ·内部触发输入(ITRx):使用一个定时器作为另一个定时器的预分频器,如可以配置一个定时器Timer1而作为另一个定时器Timer2的预分频器。
[单片机]
STM32<font color='red'>定时</font>器配置,<font color='red'>定时</font>计数模式下总结
汽车底盘控制技术研究
汽车底盘控制技术是指对汽车底盘系统进行控制和管理的一种技术,其主要目的是提高汽车的性能、安全性和舒适性。本文通过对汽车底盘控制技术的现状进行了深入的分析,探讨了该技术的发展趋势。文章首先介绍了汽车底盘控制技术的概念、分类和发展历程,然后对当前主流的底盘控制技术进行了详细的介绍,包括悬挂系统、制动系统、转向系统、车身稳定控制系统等。接着,最后,本文总结了汽车底盘控制技术的现状和未来发展趋势,并提出了一些有关汽车底盘控制技术研究的建议。 1 引言 汽车底盘控制技术是指对汽车底盘系统进行控制和管理的一种技术,其主要目的是提高汽车的性能、安全性和舒适性。随着人们生活水平的提高,对汽车的要求越来越高,底盘控制技术已成为汽车制造和研发领域
[嵌入式]
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
  • ARM裸机篇--按键中断
    先看看GPOI的输入实验:按键电路图:GPF1管教的功能:EINT1要使用GPF1作为EINT1的功能时,只要将GPFCON的3:2位配置成10就可以了!GPF1先配 ...
  • 网上下的--ARM入门笔记
    简单的介绍打今天起菜鸟的ARM笔记算是开张了,也算给我的这些笔记找个存的地方。为什么要发布出来?也许是大家感兴趣的,其实这些笔记之所 ...
  • 学习ARM开发(23)
    三个任务准备与运行结果下来看看创建任务和任运的栈空间怎么样的,以及运行输出。Made in china by UCSDN(caijunsheng)Lichee 1 0 0 ...
  • 学习ARM开发(22)
    关闭中断与打开中断中断是一种高效的对话机制,但有时并不想程序运行的过程中中断运行,比如正在打印东西,但程序突然中断了,又让另外一个 ...
  • 学习ARM开发(21)
    先要声明任务指针,因为后面需要使用。 任务指针 volatile TASK_TCB* volatile g_pCurrentTask = NULL;volatile TASK_TCB* vol ...
  • 学习ARM开发(20)
  • 学习ARM开发(19)
  • 学习ARM开发(14)
  • 学习ARM开发(15)
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved