温度巡检仪源程序复习课程.doc
《温度巡检仪源程序复习课程.doc》由会员分享,可在线阅读,更多相关《温度巡检仪源程序复习课程.doc(14页珍藏版)》请在咨信网上搜索。
1、温度巡检仪源程序精品文档/*内存分配定义*/TIME_CONT EQU 33H /*定时时间*/TIME_COUNT EQU 34H /*100ms中断次数*/KEY_CODE EQU 35H /*按键代码*/KEY_VAL EQU 36H /*按键数值*/CHAN_NUM EQU 37H /*当前采样通道号*/SAMP_NUM EQU 38H /*采样次数*/CHAN_NUM1 EQU 39H /*当前显示通道号*/TEMP1 EQU 40H /*1通道温度*/TEMP2 EQU 41H /*2通道温度*/TEMP3 EQU 42H /*3通道温度*/TEMP4 EQU 43H /*4通道温
2、度*/TEMP5 EQU 44H /*5通道温度*/TEMP6 EQU 45H /*6通道温度*/TEMP7 EQU 46H /*7通道温度*/TEMP8 EQU 47H /*8通道温度*/SAMP_MAX EQU 48H /*当前通道10次采样最大值*/SAMP_MIN EQU 49H /*当前通道10次采样最小值*/SAMP_SUMH EQU 4AH /*当前通道10次采样累加值高位*/SAMP_SUML EQU 4BH /*当前通道10次采样累加值低位*/SAMP_AVG EQU 4CH /*当前通道去掉最大值和最小值后8次采样平均值*/SAMP_VAL EQU 4DH /*当前通道采样
3、值*/TEMP_VAL EQU 4EH /*当前通道温度值*/DIS_BUF1 EQU 50H /*显示缓冲区1*/DIS_BUF2 EQU 51H /*显示缓冲区2*/DIS_BUF3 EQU 52H /*显示缓冲区3*/DIS_BUF4 EQU 53H /*显示缓冲区4*/DIS_BUF5 EQU 54H /*显示缓冲区5*/DIS_BUF6 EQU 55H /*显示缓冲区6*/DIS_NUM EQU 57H /*显示通道号寄存器*/DIS_CONH EQU 58H /*CH451操作命令高位*/DIS_CONL EQU 59H /*CH451操作命令低位*/ST_FLAG BIT 20H
4、.0 /*系统启动标志*/XJ_FLAG BIT 20H.1 /*巡回检测标志*/KEY_FLAG BIT 20H.2 /*有键按下标志*/T_1S BIT 20H.3 /*1秒时间到*/SAMP_1 BIT 20H.4SAMP_END10 BIT 20H.5 /*10次采样结束标志*/SAMP_NO1 BIT 20H.6 /*每通道采样开始标志*/DD_FLAG BIT 20H.7 /*定点检测标志*/CHAN_ADD0 EQU 0FF80H /*温度检测通道首地址*/AD_ADD0 EQU 0FE00H /*AD通道首地址*/AD_END BIT P3.2 /*AD转换结束标志*/DIS_
5、DOUT BIT P3.3 /*按键输入*/DIS_LOAD BIT P1.0 /*命令输入有效*/DIS_DIN BIT P1.1 /*显示命令输出*/DIS_DCLK BIT P1.2 /*显示时钟输出*/ ORG 0000HSTART: LJMP MAIN ORG 0003H /*AD转换结束中断入口*/ NOP NOP NOP NOP LJMP ERR ORG 000BH /*定时器0中断入口*/ LJMP TIME0 NOP NOP LJMP ERR ORG 0013H /*键盘中断入口*/ LJMP KEY_IN NOP NOP LJMP ERR ORG 0040H MAIN: M
6、OV SP,#60H MOV TMOD,#21H /*定时器0为方式1工作,定时器2为方式2工作*/ MOV TH0,#3CH /*定时器0定时值为500ms*/ MOV TL0,#0AFH MOV TH1,#0FDH /*通信波特率为4800b/s*/ MOV TL1,#0FDH MOV SCON,#01000000B /*串口方式为工作方式1*/ MOV A,30H CJNE A,#0AAH,NRAM MOV A,31H CJNE A,#55H,NRAM /*判断是否上电复位*/ SJMP DISP_INITNRAM: MOV R0, #7FH /*RAM低128B清零*/NRAM1: M
7、OV R0,#00H DJNZ R0,NRAM1 MOV 30H,#0AAH /*置上电标志*/ MOV 31H,#55H NOP NOPDISP_INIT:NOP MOV 20H,#00H /*内部状态位清零*/ MOV DIS_BUF1,#0111001B MOV DIS_BUF2,#1110011B MOV DIS_BUF3,#0111110B MOV DIS_BUF4,#1000000B MOV DIS_BUF5,#1101101B MOV DIS_BUF6,#0000110B /*cpu-51写入显示缓冲区*/ SETB DIS_DIN /*CH451串口方式设为四线制*/ NOP
8、NOP CLR DIS_DIN NOP NOP SETB DIS_DIN MOV TIME_CONT,#1H MOV SAMP_NUM,#00H MOV CHAN_NUM,#00H MOV CHAN_NUM1,#01H MOV TIME_COUNT,TIME_CONT/*定时时间设为100毫秒*/ SETB IT1 /*键盘中断设为边沿触发方式*/ SETB PX1 /*键盘中断设为高优先级*/ SETB ET0 /*允许定时器0中断*/ SETB EA /*开中断*/ SETB TR0 /*启动定时器0*/ SETB SAMP_NO1 MOV SAMP_NUM,#00H MAIN1: JNB
9、 T_1S,MAIN1 /*快速检测1通道温度值*/ CLR T_1S LCALL SAMP /*采样一次*/ MAIN2: JNB SAMP_END10,MAIN1 /*采完10次*/ CLR SAMP_END10 MOV DIS_CONH,#5H /*设定显示参数,不译码,扫描6位*/ MOV DIS_CONL,#60H LCALL DISP_WRITE MOV DIS_CONH,#4H /*设定系统参数,启用显示及键盘功能*/ MOV DIS_CONL,#03H LCALL DISP_WRITE LCALL DISP_OUT /*显示“CPU51”*/ CLR EA SETB EX1 S
10、ETB EA WAIT: JNB KEY_FLAG,WAIT CLR KEY_FLAG MOV A,KEY_VAL CJNE A,#8,WAIT1 SETB ST_FLAG WAIT1: JNB ST_FLAG,WAIT /*系统是否启动*/ /*巡检仪主程序*/ CLR EX1 /*关键盘中断*/ MOV DIS_CONH,#04H /*关显示器*/ MOV DIS_CONL,#02H LCALL DISP_WRITE MOV DIS_CONH,#5H /*译码方式转为BCD方式*/ MOV DIS_CONL,#0E0H LCALL DISP_WRITE MOV CHAN_NUM,#00H
11、LCALL DISP_OUT /*输出显示数据*/ MOV DIS_CONH,#4H /*开显示器*/ MOV DIS_CONL,#03H LCALL DISP_WRITE CLR EA SETB EX1 /*开键盘中断*/ SETB EA MOV TIME_CONT,#0AH /*定时时间设为1秒*/ MOV TIME_COUNT,TIME_CONT MOV CHAN_NUM,#01H /*初始化检测通道,从第2通道开始*/ SETB XJ_FLAG /*设为巡回检测状态*/ SETB SAMP_NO1 CLR SAMP_END10 SETB TR1 /*启动定时器1*/ /*主循环程序*/
12、 MAIN_LOOP: JNB KEY_FLAG,MAIN_LOOP3 /*是否有键按下*/ CLR KEY_FLAG /*处理键盘命令*/ MOV A,KEY_VAL SETB EX1 /*开键盘中断*/ CJNE A,#8,MAIN_LOOP2 /*是启动键?*/ JNB DD_FLAG,MAIN_LOOP1 /*当前状态是定点检测方式*/ SETB XJ_FLAG /*改为巡检方式*/ CLR DD_FLAG /*清除定点标志*/ MOV CHAN_NUM,#00H /*从1通道开始工作*/ MOV SAMP_NUM,#00H SETB SAMP_NO1 LCALL DISP_OUT /
13、*显示输出*/MAIN_LOOP1: SJMP MAIN_LOOP3MAIN_LOOP2: CLR XJ_FLAG /*如为18键值则清除巡检标志*/ SETB DD_FLAG /*改为定点检测方式*/ MOV SAMP_NUM,#00H SETB SAMP_NO1 MOV CHAN_NUM,KEY_VAL /*将按键值写入当前通道寄存器*/ LCALL DISP_OUT /*显示该通道温度值*/MAIN_LOOP3: JNB T_1S,MAIN_LOOP7 /*1秒时间到*/ LCALL SAMP /*启动AD转换*/ CLR T_1S JNB SAMP_END10,MAIN_LOOP7 /
14、*采完10次*/ MOV SAMP_NUM,#00H CLR SAMP_END10 SETB SAMP_NO1 LCALL DISP_OUT /*显示温度值*/ JNB XJ_FLAG,MAIN_LOOP7 /*巡检标志置位*/ MOV A,CHAN_NUM /*当前通道号加1*/ ADD A,#1 MOV CHAN_NUM,A CJNE A,#8H,MAIN_LOOP7 /*当前通道号为8*/ MOV A,#00H /*当前通道号复归为1号*/ MOV CHAN_NUM,AMAIN_LOOP7: LCALL SEND /*调用串口发送程序*/ LJMP MAIN_LOOP /*数据采样子程序
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 温度 巡检 源程序 复习 课程
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【精****】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【精****】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。