温度控制器程序教学内容

合集下载

小型温度控制器课程设计

小型温度控制器课程设计

小型温度控制器课程设计一、课程目标知识目标:1. 让学生掌握小型温度控制器的基本原理与结构组成,理解温度控制的基本概念。

2. 使学生了解温度传感器的工作原理,并能正确读取温度数据。

3. 帮助学生掌握温度控制算法,了解PID控制的基本原理。

技能目标:1. 培养学生运用所学知识设计简单温度控制系统的能力。

2. 提高学生动手实践能力,能够正确组装和调试小型温度控制器。

3. 培养学生分析问题、解决问题的能力,能够针对温度控制过程中出现的问题进行调整。

情感态度价值观目标:1. 培养学生对物理学科的兴趣,激发学生探索科学技术的热情。

2. 培养学生团队合作精神,提高沟通协调能力。

3. 增强学生的环保意识,认识到温度控制在节能减排中的重要作用。

分析课程性质、学生特点和教学要求:本课程为物理学科实践课程,结合学生所在年级的知识深度,以小型温度控制器为载体,将理论知识与实践操作相结合。

学生具备一定的物理基础和电子技术知识,对实践活动有较高的兴趣。

教学要求注重理论与实践相结合,强调学生的动手能力和创新意识的培养。

课程目标分解:1. 知识目标:通过讲解、演示和实验,使学生掌握小型温度控制器的基本原理、结构和温度控制算法。

2. 技能目标:通过分组实践,培养学生动手组装、调试和优化温度控制器的能力。

3. 情感态度价值观目标:通过课程学习,激发学生对物理学科的兴趣,培养团队合作精神,增强环保意识。

二、教学内容1. 温度控制器原理:介绍温度控制器的作用、分类和基本工作原理,结合课本相关章节,让学生理解温度控制系统的基本组成。

- 教材章节:第三章“温度控制系统”2. 温度传感器:讲解温度传感器的种类、特点和应用,重点介绍热电阻、热电偶传感器的工作原理和使用方法。

- 教材章节:第四章“温度传感器”3. PID控制算法:阐述PID控制原理,分析比例、积分、微分控制的作用,结合实例进行讲解。

- 教材章节:第五章“控制算法”4. 小型温度控制器设计:指导学生进行温度控制器的设计,包括硬件选型、电路连接和程序编写。

教学设计温控器标准

教学设计温控器标准

教学设计温控器标准针对教学设计中使用温控器的需要,制定一套标准来指导教师们进行温控器的教学设计。

这样的标准将有助于教学中的规范化和提高教学效果。

本文将就教学设计温控器的标准进行详细阐述。

一、教学目标:在教学设计温控器的过程中,首先要明确教学目标。

教学目标可以包括学生对温控器构造、原理和使用方法的理解与掌握,培养学生的动手能力和实践操作能力等。

二、教学内容:根据教学目标,确定相应的教学内容。

涉及到温控器的教学内容可以包括温度控制理论、温控器的工作原理、温控器的结构和应用案例等。

同时,还应该通过实践操作来帮助学生加深对温控器的理解,例如使用电路连接和温度调节实验等。

三、教学方法:在教学过程中,使用合适的教学方法是至关重要的。

教师可以采用讲授、讨论、实验操作等多种方法来教授温控器的知识。

在讲授环节中,应注意用简单明了的语言来解释温控器的原理和应用,使学生易于理解。

在实验操作环节中,教师可以设置一定的实验任务,引导学生进行实践操作,培养他们的动手能力和解决问题的能力。

四、教学资源:为了有效地进行温控器的教学设计,教师应该准备相应的教学资源。

这些资源可以包括教材、实验器材、教学软件和教学视频等。

教师需要根据具体的教学内容和教学目标来选择合适的资源,确保教学的顺利进行。

五、教学评估:在教学设计完成后,教师需要对学生进行评估和考核,以了解他们对温控器知识的理解和掌握程度。

评估可以包括笔试、实验报告、小组讨论等形式,以全面地考察学生的学习情况。

同时,教师还可以针对评估结果对教学进行调整和改进。

六、教学安全:在进行温控器的教学设计时,教师需要重视教学安全。

温控器涉及到电路和电源的使用,如果操作不当可能导致电流过大或短路等安全问题。

教师需要告知学生正确的操作方法和注意事项,确保教学过程中的安全。

教学设计温控器的标准可以为教师们提供一种指导和参考,使他们在教学过程中更加有针对性和高效。

通过遵循这些标准,教师们能够更好地安排教学内容、选择教学方法、准备教学资源,并对学生的学习进行评估和安全管理。

空气能温度控制器说明书

空气能温度控制器说明书

空气能温度控制器说明书
空气能温度控制器是一种智能化的温度控制设备,可以通过感知室内温度并自动调节,以达到舒适的室内温度。

以下是空气能温度控制器的使用说明:
1. 设备安装:将温度控制器安装在室内墙壁上,确保其与室内温度有良好接触,以便准确感知室内温度。

2. 设定温度:通过温度控制器的操作面板设定您所需的室内温度。

通常温度控制器的设定范围在16℃-30℃之间。

3. 连接电源:将温度控制器的电源线连接到电源插座上,确保电源正常供应。

4. 启动控制:按下温度控制器的开关,启动其温度控制功能。

此时,温度控制器开始感知室内温度,并根据设定的温度自动调节室内温度。

5. 自动调节:当室内温度低于设定温度时,温度控制器会自动开启空气能设备,提高室内温度;当室内温度高于设定温度时,温度控制器会自动关闭空气能设备,降低室内温度。

6. 注意事项:
定期检查温度控制器的运行状态,确保其正常工作。

保持温度控制器的清洁,避免灰尘和污垢影响其正常工作。

当您离开房间或不再需要调节温度时,可以关闭温度控制器,以节省能源。

7. 常见问题及解决:
温度控制器无法启动:请检查电源是否正常,以及温度控制器是否损坏。

如有问题,请联系专业人员进行维修或更换。

温度调节不正常:请检查温度传感器是否正常工作,以及空气能设备是否正常运行。

如有问题,请联系专业人员进行检修或更换相关部件。

以上为空气能温度控制器的一般使用说明,具体操作可能会因不同品牌和型号而有所差异。

如有疑问,请参照产品说明书或联系厂家或专业人员咨询。

C51单片机实例温控程序(各模块详解附图

C51单片机实例温控程序(各模块详解附图

*
*
实际温度超过你设定的温度,蜂鸣器报警。
*
*
*
*
包括各个模块及详细的注释
*
*
方便 C51 单片机入门级别者阅读
*
*--------------------------------------------------------------------------------------*/
#include<stc12c5a.h> typedef unsigned char uchar ; typedef unsigned int uint; sbit heat= P1^3; uchar makesure; uchar tp=0; uchar num=0; uchar ad=0; uchar s60,s61,s62,s63,temp;
/*--------------------------------------------------------------------------------------------------------------------------------------------
*
*
*
该程序为一个完整的温度控制器程序
0x3e,0x3d,0x3d,0x3c,0x3b,0x3b,0x3a,0x39,0x38,0x38,0x37,0x36,0x36,0x36,0x35,0x35,
0x34,0x33,0x33,0x32,0x32,0x31,0x31,0x30,0x30,0x2f,0x2f,0x2e,0x2e,0x2d,0x2d,0x2c,
0x10,0x0f,0x0f,0x0e,0x0e,0x0e,0x0d,0x0d,0x0c,0x0c,0x0b,0x0b,0x0b,0x0a,0x0a,0x09,

RKC数字式温度控制器操作指南(CD-901).

RKC数字式温度控制器操作指南(CD-901).

RKC数字式温度控制器操作指南(CD-901).RKC数字式温度控制器操作指南(CD-901)接通电源后控制器将依次显⽰输⼊类型、输⼊范围,然后进⼊PV(实际温度)/SV(设定温度)显⽰模式。

⼀、设定温度调整按仪表[SET]键,进⼊设定温度模式,按[∠]键调整需设定温度的位数,按[∨]降低设定值,按[∧]升⾼设定值,设定完前后按[SET]键回到PV/SV显⽰模式。

⼆、参数调整注意:各试验箱的参数设置不同,请参照相应的参数表设置,⼀些试验箱的参数出⼚时根据需要进⾏了个别设置,调整前将原始参数记录下来。

按仪表[SET]键2秒后进⼊参数设定模式,在此模式下可设定报警PID等参数。

每按⼀次[SET]键,下表的参数将依次显⽰。

(RKC表见附表)三、初始化参数设定1、按[SET]键2秒进⼊参数设定模式,按[SET]直到显⽰“LCK”,按[∠]键将光标移到千位上,按[∧]键将千位数由“0”改为“1”即显⽰“1000”解锁。

2、按[SET]键3秒回到SV/PV显⽰模式。

3、按[SET]+[∠]键3秒后进⼊初始化模式,⾸先显⽰初始化代码(Cod),共有“Cod”=0,“Cod”=1,“Cod”=2三组参数。

4、三级参数在显⽰(Cod)时,按[∨][∧]改变Cod值,可进⼊各组号数进⾏设定,其参数内容见下表;(参数值见附表)Cod=2为设备⼯作记录参数,不须修改。

5、参数⾃整定⽅法按仪表[SET]键3秒后进⼊参数设定模式,连续按动[SET]键到出现“ATU”后按[∠]键将光标移到个位,再按[∧]键将0改为1,按[SET]键2秒后退出设置,A T灯闪耀仪表进⼊⾃整定状态。

6、修正温度的误差⽅法按仪表[SET]键3秒后进⼊参数设定模式,连续按动[SET]键到出现“Pb”后按[∠]键将光标移到相应的位值,再按[∨]键或[∧]键改变数值,例如:当试验箱显⽰温度为50℃实际测得温度为49℃,可将“Pb”值设定为“-001.0”这样就消除了温度的误差。

E5CN AN EN-H 温度控制器 说明书

E5CN AN EN-H 温度控制器 说明书

前言E5CN/AN/EN-H温度控制器(数字调节器)功能介绍。

下述内容包括功能、性能和使用方法的信息。

·为可选择使用热电偶、铂电阻、模拟量电压输入、模拟量电流输入的多重输入型。

·新增加热冷却控制功能。

·调整功能包括AT(自动整定)、ST(自我整定)选择。

·通过事件输入可对Bank、运行/停止、自动/手动、简易程序的启动/复位功能等进行切换。

·可使用加热器断线检测功能、SSR故障检测功能及加热器过电流功能(E5CN/AN/EN-H带加热器断线功能的机型)。

·可使用通信功能(E5CN/AN/EN-H带通信功能的机型)。

·支持用户进行传感器输入的校正。

·支持用户进行传感输出的校正(E5AN/EN-H带传送输出功能的机型)。

·对应位置比例控制。

(E5AN/EN-H位置比例型)·可使用远程SP输入。

(E5AN/EN-H)·具有防水构造(IP66)。

·符合安全标准(UL/CSA/IEC)及EMC标准。

·通过PV显示色切换,使进程状态一目了然。

本用户手册记述了使用E5CN/AN/EN-H时的功能、性能及注意事项。

事先充分阅读本手册,在充分理解的基础上进行正确的应用。

本手册可经常作为参考,请妥善保存。

有关通信功能的详细说明,请参阅「E5CN-H/E5AN-H/E5EN-H数字调节器通信用户手册」(手册编号:SGTD-737)。

I使用时的注意事项1.品质保证①保证期间本公司的保证期限为从本公司向贵公司提供产品1年后。

②保证范围在上述保证期限内产品出现质量问题,本公司负责免费对故障产品进行维修或更换,用户可以在购买处进行更换或要求维修,但下列情形除外:a) 在产品目录及设计•规格书规定的条件、环境、使用方法外使用而引起故障;b) 本公司产品以外的原因引起的故障c) 非本公司进行的改造或者修理引起的故障d) 未按本公司产品固有使用方法使用的e) 产品投入流通时的科学技术水平尚不能发现的缺陷f) 由于不可抗力等其他非本公司责任导致的另,本条所述保证是指对本公司产品本身的保证,就本公司产品的故障所引起的其他人身和财产的损害,不在本保证范围之内。

可编程温度控制器使用方法

可编程温度控制器使用方法

可编程温度控制器使用方法一、可编程温度控制器的初步认识。

1.1 这可编程温度控制器啊,就像是一个温度的小管家。

你看它,外观上可能有个显示屏,能让你直观地看到各种信息呢。

它的大小不一,但都很精巧,摆在那儿就像个默默守护温度的小卫士。

1.2 它的功能可强大啦。

不像那些普通的温度控制设备,只能简单地调个温度。

这个可编程的家伙,可以按照你设定的程序来控制温度,就像你给它下了一道道指令,它就乖乖听话。

二、开始使用前的准备。

2.1 首先呢,你得把它安装好。

这就跟盖房子打地基似的,安装的地方得合适。

要找个通风良好、干燥的地方,可不能让它受潮或者被什么东西捂着,不然它就像人被捂住了嘴,没法好好工作啦。

2.2 接着就是连接电源。

这一步可不能马虎,就像给手机充电得插对线一样。

要确保电源连接稳定,电压得符合它的要求,不然它就会像个闹脾气的小孩,工作起来不正常。

2.3 然后就是传感器的安装。

传感器就像是它的小触角,用来感知温度的。

你得把传感器安装在能准确测量温度的地方,要是装错了地方,那它得到的温度信息就不准确,整个控制就会乱了套,这就叫“差之毫厘,谬以千里”啊。

三、设定温度程序。

3.1 进入到设定程序这一步,就像你在教小孩子做事情一样。

你得先选择模式,有制冷模式、制热模式等。

比如说你想让一个小空间保持凉爽,那就选择制冷模式。

这时候你要根据实际需求来设定目标温度,不能太贪心,温度设得太低或者太高都不合适,要恰到好处,就像炒菜放盐,不多不少才正好。

3.2 再就是设定时间程序。

你可以设定它在某个时间段内保持某个温度。

比如说你想在晚上睡觉时让房间保持温暖,你就可以设定从晚上10点到早上6点保持一个舒适的温度。

这就像给它定了个闹钟,到点就按照你的要求来控制温度。

四、使用中的注意事项。

4.1 在它工作的时候,你要时不时地去看看它。

就像照顾小宠物一样,看看显示屏上的温度是不是在正常范围内。

如果发现有什么异常,可不能坐视不管,要赶紧检查是哪里出了问题。

【精品】计算机控制技术课程设计温度控制系统设计

【精品】计算机控制技术课程设计温度控制系统设计

课程设计题目温度控制系统设计学院自动化学院专业自动化专业班级姓名指导教师2014年6月24日课程设计任务书题目:温度控制系统设计要求完成的主要任务:被控对象为电炉,采用热阻丝加热,利用大功率可控硅控制器控制热阻丝两端所加的电压大小,来改变流经热阻丝的电流,从而改变电炉炉内的温度。

可控硅控制器输入为0-5伏时对应电炉温度0-300℃,温度传感器测量值对应也为0-5伏,对象的特性为二阶惯性系统,惯性时间常数为T1=20秒,滞后时间常数为τ=10秒。

1)设计温度控制系统的计算机硬件系统,画出框图;2)编写积分分离PID算法程序,从键盘接受K p、T i、T d、T及β的值;3)通过数据分析T i改变时对系统超调量的影响.4)撰写设计说明书。

时间安排:6月9日查阅和准备相关技术资料,完成整体方案设计6月10日—6月12日完成硬件设计6月13日-6月15日编写调试程序6月16日-6月17日撰写课程设计说明书6月18日提交课程设计说明书、图纸、电子文档指导教师签名:年月日系主任(或责任教师)签名:年月日本次课程设计我设计的题目是温度控制系统。

通过专业课程的学习,我将引入计算机,单片机,传感器,以及PID算法来实现电炉温度的自动控制,完成课程设计的任务.计算机的自动控制是机器和仪表的发展趋势,它不仅解放了劳动力,也比以往的人为监控更准确,更及时。

一旦温度发生变化,计算机监控系统可以立即检测到并通过模拟量数字通道传送到计算机。

计算机接收到信号后通过与给定值进行比较后,计算出偏差,再通过PID控制算法给出下一步将要执行的指令。

最后通过模拟量输出通道将指令传送到生产过程,实现机器仪表的智能控制.本次课程设计用到了MATLAB这一软件,通过编写程序,将被控系统离散化。

再通过MATLAB中的simulink 仿真功能,可以看到随着Ki,Kp,Kd改变波形发生的改变,从而可以通过波形直观地看出PID参数对系统动态性能的影响。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

温度控制器程序//PT100自身温度范围#define M_temper_MIN -200 //最低温度#define M_temper_MAX 500 //最高温度//CPU引脚定义#define P_LED P0sbit LED_S1 = P2 ^ 0; //LED1位选sbit LED_S2 = P2 ^ 1; //LED2位选sbit LED_S3 = P2 ^ 2; //LED3位选sbit LED_S4 = P2 ^ 3; //LED4位选sbit KEY_S1 = P1 ^ 0; //上下限温度设置sbit KEY_S2 = P1 ^ 1; //温度加sbit KEY_S3 = P1 ^ 2; //温度减//全局变量寄存器uchar M_LED1, M_LED2, M_LED3, M_LED4; //4位LED显示寄存器uchar LED_DISP_TAB[] = //LED编码表{0X3f, 0X06, 0X5b, 0X4f, 0X66,0X6d, 0X7d, 0X07, 0X7f, 0X6f, //0-90X40, 0X23, 0X1c, 0X58 //字符: - n u c };uchar Set_count; //温度设置按钮计数uchar T0_count; //T0定时中断计数uint T1_count; //T1定时中断计数char M_temper_up; //温度上限char M_temper_down; //温度下限char M_temper_AI; //设置中温度char M_temper_conver; //当前温度bit B_set,B_set_AI; //温度设置标志bit B_set_T0,B_set_T1; //定时器中断标志//函数声明void T1int_init();/* 定时器T1初始化:设置工作方式赋初值开启中断 */void T0int_init();/* 定时器T0初始化:设置工作方式赋初值开启中断 */void Set_temper();/*设置上下限温度:按键次数=1:显示上限温度并处于操作状态按键次数=2:显示下限温度并处于操作状态按键次数=3:保存设置值并退出*/void Inc_temper();/*提高设置的温度 */void Dec_temper();/*降低设置的温度 */void LED_data_BCD(char Disp_dat);/*数码管显示温度 */void PT100_delay(uint count);/* PT100延时程序 */void PT100_reset(void);/*PT100复位初始程序:根据PT100要求对其进行复位初始控制 */bit PT100_readbit(void) ;/*PT100位读子程序:从PT100取出一位数据 */uchar PT100_readbyte(void);/*PT100字节读子程序:读出的一字节数据并返回数据值 */void PT100_writebyte(uchar dat);/*PT100字节写子程序:将输入参数值写入PT100 */void PT100_change(void); //启动PT100温度转换uchar PT100_Gettemper(void);/*读取PT100温度数据:单线方式读取PT100转换的温度数据,并返回处理后的温度值 */void Delay_ms(uint count); //延时子程序:延时 count (ms) void main() {uchar M_temper_curr;SP=0x50; //堆栈起始地址M_temper_up =100; //初始温度上下限M_temper_down=0;Delay_ms(500);T0int_init(); //T0 T1初始化T1int_init();while(1){if (B_set_T0) //T0定时读取温度标志{EA=0; //关总中断B_set_T0=0;if(!B_set) //上下限设置状态时,取消温度读取{PT100_change(); //读取温度M_temper_curr=PT100_Gettemper();M_temper_conver=(M_temper_curr > 126 ? (127-M_temper_curr):M_temper_curr); //转换正负温度LED_data_BCD(M_temper_conver);//转换LED显示}EA=1;}if (B_set_T1) //T1定时LED显示扫描标志 {TR1=0;B_set_T1=0;++T1_count;switch (T1_count) //依次显示4位LED{ case 1:LED_S4 = 1;P_LED = LED_DISP_TAB[M_LED1];LED_S1 = 0;break;case 2:LED_S1 = 1;P_LED = LED_DISP_TAB[M_LED2];LED_S2 = 0;break;case 3:LED_S2 = 1;P_LED = LED_DISP_TAB[M_LED3];LED_S3 = 0;break;case 4:LED_S3 = 1;P_LED = LED_DISP_TAB[M_LED4];LED_S4 = 0;T1_count = 0;break;}TR1=1; //开T1定时器}if ((M_temper_conver>M_temper_down)&&(M_temper_conver<M_temper_up)) { //温度在上下限范围内BUZZ=B_BUZZ_OFF;RED_ALARM=B_RED_OFF;GREEN_ALARM=B_GREEN_OFF;}else{ BUZZ=B_BUZZ_ON;if(M_temper_conver<M_temper_down)RED_ALARM=B_RED_ON; //低于下限温度elseGREEN_ALARM=B_GREEN_ON; //高于上限温度 }if (!KEY_S1) //按键检测{Set_temper(); //设置温度Delay_ms(200);}if (B_set){if (!KEY_S2){Inc_temper(); //温度加Delay_ms(200);}if (!KEY_S3){Dec_temper(); //温度减Delay_ms(200);}}}}void Set_temper() //设置温度{++Set_count;B_set = 1; //设置标志if (Set_count == 1) //设置上限{B_set_AI = 0; LED_data_BCD(M_temper_up); M_temper_AI = M_temper_up; //将原上限温度取出 }else if (Set_count == 2) //设置下限{B_set_AI = 1;M_temper_up = M_temper_AI; //存入新的上限温度LED_data_BCD(M_temper_down);M_temper_AI = M_temper_down; //将原下限温度取出 }else{ //确认退出B_set = 0;Set_count = 0;LED_data_BCD(M_temper_conver);M_temper_down = M_temper_AI; //存入新的下限温度 }}void Inc_temper() //温度加{if (B_set_AI) //判断当前是设置上限(0)还是下限(1) {if ((M_temper_AI <M_temper_MAX) && (M_temper_AI < M_temper_up)) {M_temper_AI++;} //不能加到上线温度和温度范围}else{if (M_temper_AI <M_temper_MAX){M_temper_AI++;}} LED_data_BCD(M_temper_AI);}void Dec_temper() //温度减{if (B_set_AI) //判断当前是设置上限(0)还是下限(1){if (M_temper_AI > M_temper_MIN){M_temper_AI--;}}else{if ((M_temper_AI > M_temper_MIN) && (M_temper_AI > M_temper_down)) {M_temper_AI--;}}LED_data_BCD(M_temper_AI);}void PT100_delay(uint count) //PT100特定延时{uint i;while(count){i=200;while(i>0)i--;count--;}}void PT100_reset(void) //PT100复位初始{ uint i;DQ=0;i=103;while(i>0)i--;DQ=1;i=4;while(i>0)i--;}bit PT100_readbit(void) //PT100位读子程序{uint i;bit dat;DQ=1;_nop_();DQ=0;i++;DQ=1;i++;i++;dat=DQ;i=8;while(i>0)i--;return (dat);}uchar PT100_readbyte(void) //PT100字节读子程序{uchar i,j,dat;dat=0;for(i=1;i<=8;i++){j=PT100_readbit();dat=(j<<7)|(dat>>1); //把读取的数据一位一位放进去 } return(dat);}void PT100_writebyte(uchar dat) //PT100字节写子程序{uint i;uchar j;bit testb;for(j=1;j<=8;j++){testb=dat&0x01;dat=dat>>1;if(testb) //write 1 {DQ=0;i++;i++;DQ=1;i=8;while(i>0)i--; }else{DQ=0; //write 0 i=8;while(i>0)i--; DQ=1;i++;i++;}}}void PT100_change(void) //启动PT100温度转换{PT100_reset();PT100_delay(1);PT100_writebyte(0xcc); PT100_writebyte(0x44); }uchar PT100_Gettemper() //读取PT100温度数据{uint temp;uchar M_temper_L=0,M_temper_H=0;PT100_reset();PT100_delay(1);PT100_writebyte(0xcc);PT100_writebyte(0xbe);M_temper_L=PT100_readbyte();M_temper_H=PT100_readbyte();temp=M_temper_H; //温度数据处理temp<<=8;temp=temp|M_temper_L;if (M_temper_H>0xf0) //正(0)负(1)温度值{temp=((0x1000-(temp&0x0fff))/16)+127; //计算温度}else{temp=temp/16;}M_temper_H=temp;return M_temper_H;}void LED_data_BCD(char Disp_dat) //显示数据LED编码处理{if (Disp_dat <0) //负温度{ M_LED1 = 0X0a; // 调用第10个 M_LED2 = (0-Disp_dat) / 10;M_LED3 = (0-Disp_dat) % 10;}else{M_LED1 = Disp_dat / 100; //正温度M_LED2 = (Disp_dat % 100) / 10;M_LED3 = (Disp_dat % 100) % 10;}if (B_set) //设置状态时显示字符 {if (B_set_AI){M_LED4 = 0x0c;}else{M_LED4 = 0x0b;}}else{M_LED4 = 0x0d;}}void T0int_init() //定时器T0初始化{TMOD = 0X11;TH0 = (65536-XTAL/12*T0_TIMER) / 256;TL0 = (65536-XTAL/12*T0_TIMER) % 256; EA = 1; ET0 = 1;TR0 = 1;}void T1int_init() //定时器T1初始化{TMOD = 0X11;TH1 = (65536-XTAL/12*T1_TIMER) / 256;TL1 = (65536-XTAL/12*T1_TIMER) % 256;EA = 1;ET1 = 1;TR1 = 1;}void Delay_ms(uint count) //延时 count (ms){uint i;while(--count>0){for (i = 0; i < 125; i++);}}void Timer0() interrupt 1 using 1 //T0定时器中断服务程序{if(++T0_count>T0_TIMER_S);{ B_set_T0=1;T0_count=0;}TH0 = (65536-XTAL/12*T0_TIMER) / 256;TL0 = (65536-XTAL/12*T0_TIMER) % 256;TF0=0;}void Timer1() interrupt 3 using 1 //T0定时器中断服务程序{ B_set_T1=1;TH1 = (65536-XTAL/12*T1_TIMER) / 256;TL1 = (65536-XTAL/12*T1_TIMER) % 256;TF1=0;}。

相关文档
最新文档