描述

快热式热水器程序MCU AT89C51 XAL 12MHz

//#pragmaSRC

#include

#include

#include

voiddelay(unsignedint);//延时函数

voiddisplay(void);//显示函数

unsignedcharkeysCAN(void);//按键扫描处理函数

voidheatCTRl(void);//加热控制函数

voidtemptest(void);//测温函数

sbitswkey=P1^0;//开关键

sbitupkey=P1^1;//加热档位“+”键

sbitdownkey=P1^2;//加热档位“-”键

sbitbuzz=P1^05;//蜂鸣器输出端

sbittriac=P1^6;//可控硅触发信号输出端

sbitrelay=P1^7;//继电器控制信号输出端

sbitLED1=P2^5;//加热档位指示灯1

sbitled2=P2^6;//加热档位指示灯2

sbitled3=P2^7;//加热档位指示灯3

signedchardatactemp;//当前测得水温寄存器

unsignedchardatadispram[2]={0x10,0x10};//显示区缓存

unsignedchardataheatpower,px0count;//加热档位寄存器、外中断0计数器

bittempov,t0tst,testok;//超温标志、测温开始标志、测温完成标志

/*----------------------------------------------

主函数voidmain(void)

无参数,无返回值

循环调用显示、键扫描、温度检测、加热控制函数

----------------------------------------------*/

voidmain(void)

{

unsignedchari,j;

ctemp=15;//初始化水温寄存器

heatpower=5;//初始化加热档位为5当

tempov=0;//清除超温标志

swkey=0;//默认开关键被按下,进入待机状态

TMOD=0x11;//设定T0和T1工作方式为16位定时器

TCON=0x05;//设置外中断0和1为下降沿触发

IP=0x01;//设置外中断0优先

IE=0x80;//打开总中断

while(1)

{

i=1;

do{

for(j=0;j《100;j++)//循环100次约0.5s

{

if(keyscan())i=6;//如果有键按下,显示当前档位3s

display();//调用显示函数一次约4ms

heatctrl();//调用加热控制函数

}//endfor(b=0;b《100;b++)

temptest();//每0.5s进行一次测温

}while(--i);//通过改变循环次数i的大小决定是否刷新显示

j=abs(ctemp);//取温度绝对值

dispram[1]=j%10;//取个位数送显示

j/=10;//取十位数

dispram[0]=j?j:0x11;//送显示(带灭零)

}//endwhile(1)

}

/*--------------------------------------

延时函数voiddelay(unsign

智能热水器C语言程序,AT89C51单片机快热式热水器程序设计相关推荐

  1. 智能照明c语言程序,基于单片机的智能照明控制系统设计方案(含AD+源代码)...

    在当今日常生活中,电资源浪费的现象比比皆是.特别是在高校校园内教室电源浪费更为严重.一方面是学校在这方面的管理不够完善,另一方面是使用者节约用电的意识比较淡薄,在自然光充足的条件下,室内的灯还是普遍的 ...

  2. 89c51c语言程序,89C51单片机计算器C语言程序.doc

    89C51单片机计算器C语言程序 89C51单片机[计算器]C语言程序 89C51单片机[计算器]C语言程序2010-12-15 16:54/*89C51单片机[计算器]C语言程序*/ /*P2位选P ...

  3. 8255A红绿灯c语言程序,51单片机外接8255A做成的交通灯程序及PROTEUS仿真结果(附对应C语言程序).doc...

    51单片机外接8255A做成的交通灯程序及PROTEUS仿真结果(附对应C语言程序) 51单片机外接8255A做成的交通灯程序及PROTEUS仿真结果(附对应C语言程序)2010-04-21 22:0 ...

  4. 基于智能家居c语言程序代码,基于单片机的智能家居系统设计(附程序代码)

    基于单片机的智能家居系统设计(附程序代码)(任务书,开题报告,外文翻译,论文10000字) 摘要 基于近年来通信电子技术的高速发展,使得一些原来可望不可及的事关民生的技术变为可能,条件允许的情况下,人 ...

  5. 基于单片机的交通灯设计c语言程序,基于单片机AT89C51控制的十字路口交通灯系统设计...

    摘要:本文设计一个单片机AT89C51控制的十字路口交通灯,通过硬件电路设计.元器件使用.软件设计.仿真等环节,实现主干道和支干道的分时控制,保证正常的交通秩序. 关键词:单片机 系统设计 交通灯 1 ...

  6. 单片机 中断秒表 c语言程序,51单片机c语言的秒表设计.doc

    51单片机c语言的秒表设计.doc 课程设计报告 基于AT89C51单片机的秒表设计 院 系 电子信息工程学院 专 业 电子信息工程 1 姓 名 摘 要 本设计是设计一个单片机控制的多功能秒表系统. ...

  7. 液晶显示屏的C语言编码,AT89C51单片机驱动液晶显示汉字C语言

    此程序的完整工程文件下载:http://www.51hei.com/f/8952lkj_c.rar  上图是原理图及其仿真效果. /********************************** ...

  8. 洗衣机洗涤部分c语言程序,51单片机洗衣机控制板及C语言程序

    51单片机洗衣机控制板及C语言程序,该控制板单片机采用AT89C51单片机,所设计全自动洗衣机功能有:标准洗衣.经济洗衣.单独洗衣以及排水四种洗衣等四种方式,有强洗.弱洗及运行/暂停.显示及报警功能, ...

  9. 单片机简易计算机有程序,AT89C51单片机C实现简易计算器

    <AT89C51单片机C实现简易计算器>由会员分享,可在线阅读,更多相关<AT89C51单片机C实现简易计算器(15页珍藏版)>请在人人文库网上搜索. 1.AT89C51单片机 ...

最新文章

  1. 人类与AI结合的最佳形态是什么样?|A16Z内部万字报告
  2. 周四话运营:如何提高用户留存?
  3. 迄今看到的较为客观的一篇分析编程语言的文章
  4. Android 音频录制和播放问题
  5. 不懂Python装饰器?教程双手奉上!
  6. PLSQL DEVELOPER编辑器的自动替换文件
  7. vue-cli 基本原理
  8. Python-初体验
  9. 2015年7月15日 JS第一课(JS,声明变量,数据类型)
  10. linux su,sudo命令
  11. 软考初级程序员的备考经验分享
  12. sql语句查询存储过程
  13. apache common-chain 简单使用
  14. 附表和附注_现金流量表附注怎么填?现金流量表附表的编制
  15. VIRTIO-BLK-DATA-PLANE的配置使用
  16. 运维黄金4指标,构筑
  17. C# 构造器-实例构造器,类型构造器
  18. Python开发实习心得~
  19. php仿u8系统模板_u8cloud操作步骤!
  20. 怎么通过微信接收阿里云主机监控告警

热门文章

  1. Linux环境中安装c编译器并测试
  2. 2020长亭面试题D题 申请经费
  3. Url出现非法参数异常
  4. 75CDN 增加 SRI 支持
  5. 流媒体录播服务器系统,超然录播系统 MRS5000多媒体录播服务器--投影时代产品专区...
  6. Lumerical Python API学习(五)——光子逆向设计概述
  7. 骨传导蓝牙耳机什么牌子好?骨传导耳机品牌推荐
  8. php try catch 不处理,如何解决php try catch不起作用的问题
  9. 《咸鱼翻身》centos7下安装docker
  10. 玲珑杯 1160 - 康娜与玲珑杯