电子称毕业设计

上传人:仙*** 文档编号:28258468 上传时间:2021-08-24 格式:DOC 页数:50 大小:178.51KB
返回 下载 相关 举报
电子称毕业设计_第1页
第1页 / 共50页
电子称毕业设计_第2页
第2页 / 共50页
电子称毕业设计_第3页
第3页 / 共50页
点击查看更多>>
资源描述
目 录摘要ABSTRACT绪论 11.智能电子秤的概况 21.1 智能电子秤的发展史 21.2 智能电子秤应用范围 21.3 智能电子秤的研究动态 22.智能电子秤的工作原理 32.1 智能电子秤性能及技术要求 32.2 工作原理 32.3 基本结构4.1 主程序设计 8 4.1.1 主程序设计思路 84.1.2 主程序工作原理 94.1.3 主程序流程框图 10 4.2 程序初始化 11 4.2.1 AT89C52的初始化 11 4.2.2 8279的初始化 124.2.3 ICL7109的初始化 134.3 A/D转换结果处理程序 134.3.1 A/D转换过程 134.3.2 A/D转换数据处理 144.3.3 A/D转换的程序 16 4.4 键盘/显示处理 194.4.1 程序分析 204.4.2 键盘模块 23 4.4.3 显示模块 244.5 数据处理程序 24 4.5.1 重量输出 24 4.5.2 价格计算 25 4.5.3 置零 26 结论 28致谢 30参考文献 31附录一 32附录二 42绪论随着科学技术和经济的发展,出售商品品种的增加,需要称量物品的设备也需要更新换代,人们对称重装置的要求也越,电子称重装置推广,从而进入到传感器,电子学和微处理机领域、使得称重装置变成为电子仪器。它的特点是:精确、智能、方便、明了、可靠,克服了传统的1. 智能电子秤系统的概况随着自动化测量技术的不断发展,传统的称重系统在功能、精度、智能化、性价比等方面越来越难以满足人们的需要,尤其对一些微小质量的测量更显得力不从心。为了实现高智能化的微小质量测量,以及 商业流通领域中经常进行各种精度范围的重量测量,传统的秤砣加秤盘模式已经很难适应现代商业零售的需要。同时商品种类的繁多和对服务更高的要求也促使电子秤的功能进一步扩展,而成为集度量、结算于一体的商业销售终端。 本着这些思想,本商用电子秤系统设计由传感器、A/D转换、单片机和LED显示器等组成,具有结构简单,成本低,精度高等优点。1.1 电子秤的发展史早在20世纪80年代,美国、德国等工业发达国家,就开始了数字式称重传感器和数字称重系统的预先研究和初期开发工作,经过十余年的努力,推出了多种数字式智能称重传感器及其称重系统,在电子称重领域备受瞩目,有力的推动了电子衡器数字化和数字称重系统的发展。我国数字式智能称重传感器的研究开发始于 20世纪90年代中后期,在短短几年时间里,研制出安装在模拟式称重传感器内部的小型数字化单元,完成了模拟信号与数字信号之间的转换,变图3-3图中MODE端接地,7109工作于直接输出工作方式。RUN/HOLD接+5V,以使7109连续转换。STATUS作为中断请求信号与单片机的中断输入端相连。由于采用了3.58MHz的晶振并经58分频,故7109完成一次转换所需的时间为T=8192(脉冲周期)58/3.58=132.72ms,即转换速率为7.5次/秒。7109输出的12位数据及极性、过量程标志分别由HBEN和LBEN控制,分两次送入单片机。3.2 单片机控制系统该智能电子秤采用ATM公司的AT89C524作为CPU,它是一种低功耗高性能的八位CMOS微控制器,与MCS-51微控制器件兼容本设计的控制电路。以单片机89C52为控制中心,负责接收数据和外接设备的信号,再处理数据,发出控制信号,以达到所需的要求。单片机5的SHIFT输入端可接地。74LS07芯片是8279作为LED数码管显示器的段选码输出端口的同相驱动芯片,见后附录二。3.3键盘显示接口电路本设计系统除了前面所述的四个结构外,还需要用到人机联系部件以便接收各种命令和数据,即价格,重量的数据输入,清零、分度数设定、最大称量设定、分度值设定、零点自动跟踪、零中心指示、过载显示、自动累计、欠电压指示等命令的输入。集成芯片8279就是如上所述的一种功能较完善的键盘接口电路,它还具备显示接口的功能。8279芯片作为通用接口电路,一方面接受来自键盘的输入数据并进行预处理,另一方面实现对显示数据的管理和对数码显示器的控制。本系统中有14位LED显示器,44键盘和8279的接口电路。图中键盘的行线接8279的低电平位的显示位中的显示内容分别显示出来,当这一过程很快显示时,人们就会在几个LED中看到了显示出来的不同内容。在连接32键以内的简单键盘时,CNTL、SHIFT输入端可接地。74LS07芯片是8279作为LED数码管显示器的段选码输出端口的同相驱动芯片。4.1.2 主程序工作原理 软件程6序包括主程序、显示程序、键盘处理程序、转换程序、数据转换处理程序。控制器中T89C52的INT1为中断请求输入线,INT0为键盘中断服务程序。A/D中断服务程序完成采样数据的存储;键盘中断服务程序完成扫描,判断数字键或功能键,若为数字将其数据送入数据缓冲区和显示缓冲区。若是功能键进入相应功能键处理程序。键盘上有数字键09和五个功能键,数字键用于输入商品单价、物体重量,功能键有去皮、清零、净/毛转换等功能、小数点。(1) AT89C52输入输出端口定义如下:P0口A/D转换数据采集P1口芯片8279与单片机的接口T2设为定时器状态,定时时间为13ms。在中断服务中首先扫描键盘,判断有无键按下。若有,则执行键识别程序。然后返回主程序进行其他操作。(6) 初始化程序完成所有系统设置 系统初始化程序完成对键盘接口功能芯片8279初始化设置,完成片内RAM划分,堆栈指针的设置。完成对各种功能程序段运行开关的设置,中断优先级的确定。4.1.3 主程序流程框图 开机后,机器自检,检查称重显示是否为零。若称重显示不为零,则显示为错误标志,并进行微调,使之显示为零;若称重显示为零,进行整机初始化,然后启动0.5S延时程序,并判断标志位是否到0.5S;如果到了,则进行称重及数据运算处理,否则直接将显示数据送显示缓冲区,接下来判别有无键按下,若有则进入键功能处理程序,若没有键按下,则返回主程序。SHAPE * MERGEFORMAT 4.2系统初始化系统上电后,对系统进行初始化。初始化程序7主要完成对单片机内专用寄存器的设定,单片机工作方式及端口的工作状态的规定、RAM自检、各标志位的设置、设置栈指针、分配内存空间、设定计数器/定时器的工作方式。4.2.1 AT89C52的初始化1. AT89C52作为系统中央控制单元,是系统8程序中断,数据处理中心,也是其它各模块纽带,对其初始化意义非常大。(1) 定时器/计数器T0初始化 在程序的开始处,我们设置0.5S定时来处理采样值。所以根据实际情况,我们设T0为定时器并且定时为50ms。因定时时间够大,所以采用16位定时/计数方式工作。所以T0设定为工作方式1,非门控方式,TMOD.2=0,M1=0,M0=1,GATE=0;方式寄存器TM TH0、TL0初值计算 由于T=(65536-X)1=50000 得 X=15536=3CB0H即 TH0=3CH, TL=0B0H(2)定时器/计数器T1初始化 我们设T1为计数器,也用16位定时/计数方式工作。所以TMOD.6=1, TMOD.5=0, TMOD.4=1,非门控制方式。TMOD=01010001B=51H(3)定时器/计数器T2初始化 T2作为键盘中断延时定时器。定时13ms,其初始化根据中断实际应用来设置。3. 中断初始化 (1) 系统中中断请求源包括外部INT0和INT1中断请求,中断的允许或禁止是有内可进行位寻址的8位中断允许寄存器IE来控制的,如下所示:EAXXESET1EX1ET0EX0其中EA是总开关,如果它等于0,则所有中断都不允许,本系统中SETB EA 让它总开。ET0,ET1分别为定时0,1的中断允许,ET0、ET1为外部中断允许,它们根据实际程序应用来设置,利用位操作指令SETB 来实现,(2)中断响应过程CPU响应中断时,首先把当前指令的下一条指令(就是中断返回后将要执行的指令)的地址送入堆栈,然后根据中断标记,将相应的中断入口地址送入PC,执行PC指向所指地址程序。中断完成后,一定要执行一条RETI指令,执行这条后,CPU将会把堆栈中保存着的地址取出,送回PC,那么程序就会从主程序的中断处继续往下执行。如图:本课题中我们设置允许外部中断0、中断1,定时器0、计数器1都中断允许,则IE是EAXXESET1EX1ET0EX0100011114.2.2 8279的初始化1. 8279的初始化 本课题中82799是连接键盘与显示的接口芯片,在系统上电复位后,8279的命令/状态口地址为7FFFH,数据口地址为7FFEH,清除8279FIFO堆栈和显示RAM,设置编码扫描、输入方式、扫描频率,开外部中断。电子秤的显示是8位显示,外部译码,驱动显示。(1)键盘/显示器方式设置命令字扫描计数器设定为编码方式,将键盘设置为双键互锁,显示器选取右入口显示方式,则命令字为10H。(2)AT89C52的晶振频率f=12MHZ,则ALE线的输出频率为f/12=1MHZ,8279内部时钟频率要求100KHZ,则分频系数应取20,命令字为34H。(3)写显示RAM命令字 设命令给出了显示RAM的地址信息,AI取1,写显示RAM地址自动加1,则命令字为90H,另外显示屏蔽消隐命令字为A0和,清除命令字取D1H.4.2.3 ICL7109的初始化 本课题中让7109工作于直接输出方式,P1.0口控制转换。见图33所示,RUN/HOLD接+5V,以使7109连续转换。由于采用了3.58MHZ的晶振并经58分频,转换速率为7.5次/秒。根据图可知数据口地址为FEFFH;4.3 A/D转换结果处理程序在智能电子秤控制系统中,除了控制单元和执行单元外,还必须有反馈环节。在反馈环节中,最重要的就是对数据的采集10。本文以AT89C52单片机为核心,设计一个基于单片机的数据采集系统,通过模拟电压形式输入系统,经双积分A/D转换器ICL7109可以采集12路模拟量,精度为12位,并经多次采样,通过滤波,取得更精确的重量值。4.3.1 A/D转换过程智能电子秤作为称重工具,其对数据的精度要求非常高,A/D转换器位数的确定与整个测量控制系统所需测量的范围和精度有关,本设计选择双计分型A/D转ICL7109,它模拟量采集精度达到12位,在实际应用中,可以对电压信号进行直接采集,为了使所采样值更精确,我们要将采样值进行数字滤波。STATUS作为中断请求信号与单片机的中断输入端相连。由于采用了3.58MHz的晶振并经58分频,故7109完成一次转换所需的时间为T=8192(脉冲周期)58/3.58=132.72ms,即转换速率为7.5次/秒。7109输出的12位数据及极性、过量程标志分别由HBEN和LBEN控制,分两次送入单片机。其转换过程如下:SHAPE * MERGEFORMAT 4.3.2 采样数据处理(1)采样取值我们在单片机内开辟30H45H单元存放采样值,工作寄存器0组存放中间参数,R0为地址指针,指向拟以采样值的片内RAM地址;R7存采样次数。图44 采样流程图(2)数据滤波本课题中,利用算术平均值法滤波可以抑制智能电子秤采样时随机干扰。其原理是将8次采样值相加,然后求其平均值作为有效采样值。将8次采样值累加和放在R3、R4、R5中,求的平均值在R4、R5中。SHAPE * MERGEFORMAT 4.3.3 程序程序如下:(1.)主程序INT1: MOV R0 ,#30H ; R0作地址指针,指向拟以存放数据的片RAM的地址MOV R7,#08H ; R7作计数器,拟存采样次数SETB EA ; 总开中断SETB EX1; 外部中断1CLR F0 ; 清采样完成标志SJMP NEXT ; 采样标志未建起,仍转NEXTELSE: 采样已完成,继续执行主程序 (2.)读取采样值:ORG 0013HLJMP TRANS ; 外部中断1服务程序TRANS: MOV DPTR ,#0FFFFHMOVX A,DPTR ; 读低字节MOV R0 ,A ; 存低字INC R0MOV DPTR , #0FFFFHMOVX A, DPTR ; 读高字节MOV R0, A ; 存高字节DJNZ R7,TRANS ; 采样次数未到,转TRANSSJMP DONE ; 采样次数已到,转DONEDONE: SETB F0RETI(3. )采样值滤波入口条件:数据块的首址在DPTR中,双字节数据个数在R7中。出口信息:平均在 R4、R5 中影响资源:PSW、A、R2R6 堆栈需求: 4 字节 DPTR EQU 30H MOV R7, #08HDDM2: MOV A,R7 ; 保存数据个数MOV R2,A ;初始化数据指针PUSH DPL ;保存首址PUSH DPHCLR A ; 初始化累加和MOV R3,A MOV R4, AMOV R5, ADM20: MOVX A,DPTR ; 读取一个数据的高字节MOV B, A INC DPTRMOVX A,DPTR; 读取一个数据的低字节INC DPTRADD A, R5 ; 累加到累加和中MOV R5, AMOV A , BADDC A, R4MOV R4, AJNC DM21INC R3DM21: DJNZ R2 ,DM20 ; 累加完全部数据POP DPH ; 恢复首址POP DPLLJMP DV31 ; 求平均值DV31功能:三字节二进制无符号数除以单字节二进制数入口条件:被除数在R3、R4、R5中,除数在R7中。出口信息:OV=0 时,双字节商在R4、R5中,OV=1 时溢出。影响资源:PSW、A、B、R2R7 堆栈需求: 字节DV31: CLR CMOV A, R3SUBB A, R7JC DV30SETB OV ;商溢出RETDV30: MOV R2, #10H ;求R3R4R5R7R4R5DM23: CLR CMOV A, R5RLC AMOV R5, AMOV A ,R4RLC AMOV R4 ,AMOV A, R3RLC AMOV R3, AMOV F0, CCLR CSUBB A, R7ANL C, /F0JC DM24MOV R3,AINC R5DM24: DJNZ R2,DM23MOV A ,R3 ;四舍五入ADD A, R3JC DM25SUBB A ,R7JC DM26DM25: INC R5MOV A ,R5JNZ DM26INC R4DM26: CLR OVRET ; 商在R4R5中4.4 键盘与显示处理程序我们知道键盘和显示是人与微机系统打交道的主要设备。在本系统中我们采用8279可编程键盘/显示管理接口。利用8279可实现对键盘/显示器的自动扫描,以减轻CPU负担,并具有显示稳定、程序简单、不会出现误动作等特点。4.4.1 程序原理(1)8279键盘、显示程序可分为四个部分1. 主程序:首先将8279初始化,对8279写入相应的命令字,使其按要求工作,然后开始 不断扫描键盘,判断是否有键按下,当没有键盘按下时则继续扫描键盘;当有键盘有键按下时就取出键值,并判断是功能键还是数字键,且转到相应的子程序处理。主程序流程图如图所示。2. 键扫描子程序:主要判断有无键按下,利用8279的状态字节可判断FIFO RAM中已键入数据的个数或没有输入字符。当状态字节的低四位全为0时,便可判断无键按下,其程序流程图如下所示3. 当判断有键按下后,就转向取键值子程序。首先取出行、列号进行拼装,得到所需的键号。然后与数OAH相比较,从而判断出是功能键还是数字键。若是功能键就转到功能键处理子程序;若是数字键就调用显示子程序进行显示。4. 显示子程序。首先置显示缓冲区首址和计数长度,然后取显示数据转换为段选码,送到LED上显示。SHAPE * MERGEFORMAT 4.4.2 键盘模块(1)键盘监控程序图如图4是一键一义键盘监控程序结构,微处理器平时周而复始扫描键盘,当发现有键按下时,首先判断是命令键还是数字键。若是数字键,则把按键读数存入存储器,并显示;若是命令键,则根据按键读数查阅转移表;以获得处理子程序的入口。子程序执行完后继续扫描键盘,SHAPE * MERGEFORMAT 图48 读键值中断程序框图(2) 本系统键盘中断服务程序图本系统中键盘控制采用中断方式实现,利用外部中断1端口来实现。采用4*4的16键,分为数字键:09,和5个命令键:去皮、置零、小数点、净/毛转换。数字键和小数点键:用于输入单价; 去皮键:用于去除皮重; 清单价:用于输入的单价错误的时候,重新输入。SHAPE * MERGEFORMAT 当输入为字符时,执行相应的子程序。键盘输入为一个字符时,代表一种命令。按输入的命令字符去执行对应的处理程序。在本程序中,A、B、C、D、E、F对应程序入口去皮、净/毛转换、价格计算、清单价、置零,标号分别为XA、XB、XC、XD、XE、XF。设命令字符在A中, LTB5: MOV DPTR ,#TAB5 MOV B,A LOP5: CLR A MOVC A,A+DPTR JZ LEDN INC DPTR CJNE A,B,LNF5CLR AMOVC A, A+DPTRMOV B, A INC DPTR CLR A MOVC A,A+DPTR MOV DPL ,A MOV DPH, B CLR A JMP A, DPTR LNF5:INC DPTR INC DPTR SJMP LOP5 LEND: TAB: DB A DW XA DBB DW XB DB C DW C DB D DW XD DB E DW XE DB F DW F4.4.3 显示模块 操作者是从显示设备上获取微机系统的信息,因此,操作者每操作一下,显示设备上都应该有一定的反应。这说明,显示模块与操作有关,即监控程序需要调用显示模块。显示模块可以由命令键来驱动或者自动执行模块来驱动 。通常,自动执行模块调用时,只让一处调用显示模块,其他各处不得直接调用显示模块,此时要设置一个显示申请标志,当某模块需要显示时,将申请标志置位,同时设定有关显示内容,将显示模块安排在一个重复执行的循环中。SHAPE * MERGEFORMAT 4.5数据处理程序 电子秤作为一种自动计价和称重的仪表,其系统内有着大量的数据需处理,包括重量计算,价格计算。数据处理主要有多字节的乘法运算,二-十进制转换,十-二进制转换。4.5.1 重量输出本课题中,A/D转换采用ICL7109芯片,它是12位输出,重量计算要求精确到克,其输出值范围为000000000000B 111111111111B转换为十进制数04096,而系统所要求输出重量范围010000g,所以我们进行线性参数的标度变换,AX=(AM/NM)NX。其量化单位为10000/4096=2.44。如下:为使技术方便我们将2.44=244/100,即化为定点数来算。244=11110100B,100=01100100B采样值在R4R5中,并选用工作寄存器1组。SHAPE * MERGEFORMAT 4.5.2 价格计算 该子程序中利用各工作寄存器2组,数据存在以40H单元为首址的连续单元中。为使计算方便单价化为以分为单位。SHAPE * MERGEFORMAT 4.5.3 置零(1)单价清零图413 清单价子程序流程图(2)总清零 SHAPE * MERGEFORMAT 结 论智能电子秤以具有良好的可靠性、准确性、技术先进性和结构简单等特点,受到广大用户的青睐。在商业活动中用途越来越广,给人们的经济生活带来了便利。采用A T 89C52 单片机设计的电子计重秤, 无论是计量精度, 还是稳定性都满足国家对 级电子秤的要求, 它具有较好的标定校准方法, 性能稳定, 操作简单, 价格低廉。同时通过硬件的少量扩展和软件的修改, 能设计出性能优越的计价秤、电子台秤等, 满足各行各业对现代电子衡器的需求。单片机控制的电子秤集传感器技术、微计算机技术、数字显示技术于一体、其反应灵敏、准确度高、显示直观,便于使用。另外稍加扩展,该电子秤还可与其它生产质量管理系统项连接,具有推广应用价值。电子称重技术是现代称重计量和控制系统工程的重要基础之一。近年来,随着计算机和称重传感器技术的迅速发展,现代科学技术的相互渗透,电子称重技术及应用又有了新发展。称重技术从静态称重向动态称重发展;计量方法从模拟测量向数字测量发展;测量特点从单参数测量想多参数测量发展特别是对快速称重和动态称重的研究与应用,已为世界各国所关注。可以说电子称重技术的发展水平,已成为衡量一个国家科学技术水平和工业发达程度的重要标志之一。电子秤不仅要向高精度、高可靠方向发展, 而且更需向多种功能的方向发展。据悉, 目前电子秤的附加功能主要有以下几种:(1) 电子秤附加了处理机构计算机信息补偿装置, 可以进行自诊断、自校正和多种补偿计算和处理。(2)具有皮重、净重显示等特种功能。电子秤有些已具备了动物称量模式, 即通过进行算术平均、积分处理和自动调零等方法, 消除上述的误差。(3)附加特殊的数据处理功能。目前的电子秤有附加多种计算和数据处理功能, 以满足多种使用的要求。下面就电子秤软件组成部分展望一下它的发展:(1) 智能化:本系统中虽然利用单片软件实现一些简单的功能,我们可以将其与电子计算机组合,开发称重用计算机,利用计算机功能使电子秤具有推理、判断、自诊断、自适应、自组织等功能。(2) 综合性:本系统中虽然利用软件实现称重、计价、显示,但远远不够,电子称重技术发展规律就是不断的加强基础扩大应用,扩展新技术领域,向相邻学科和行业渗透,综合各种技术去解决称重计量、自动控制、信息处理,与计算机网络组合可以显示很多商业信息,构成一个完整的综合控制系统。(3) 组合性:未来称重系统会大量应用在工业计量过程和工艺流程中,其要求组合性,即测量范围可以任意设定;硬件能够依据一定的工作条件和环境作某些调整;软件能按一定的程序进行修改和扩展;输入输出数据与指令可以使用不同的语言和条形码,并能与外部的控制和数据处理设备进行通信。在整个毕业设计过程中,我对大学四年所学的知识有了一个系统的认识和理解,尤其是对本课题所用到的单片机及其相关知识有了进一步的掌握,对利用单片机进行控制系统的设计与开发又及对系统的分析和问题的解决有了切身的认识和体会,正所谓学以致用,在此实践过程中增长了知识、丰富了经验,提高了解决问题的能力。系统的分析与设计过程是对学习的总结过程,更是进一步学习和探索的过程。控制系统的开发设计是一项复杂的系统工程,必须严格按照系统分析、系统设计、系统实施、系统运行与调试的过程来进行。系统的分析和设计是项很辛苦的工作,同时也是一个充满乐趣的过程,在设计过程中,要边学习,边实践,遇到新问题就不断探索和努力即可使问题得到解决。理论和实际必须紧密结合,在设计中要针对不同的系统根据理论给与不同的方案,综合考虑各方面的因素和需要,选择出最佳的方案与结论。要大量广泛的收集资料,然后认真地研究其思路,和指导老师保持联系,和同学共同研究遇到的问题。坚持笑到最后。参考文献1 宋文续,扬帆.传感器与检测技术.北京:高等教育出版社,2005.42 常健生.检测与转换技术.北京:机械工业出版社,2004.63 凌志浩.智能仪表原理与设计技术.上海:华东理工大学出版社,2003.84 于永权.89系列(MCS-51兼容)Flash单片机原理及应用.北京:电子工业出版社,19975 李朝清.单片机原理及接口技术.北京:北京航空航天大学出版社,1996.86 丁元杰.单片微机原理及应用.北京:机械工业出版社,1999.87 周航慈.单片机应用程序设计技术.北京:北京航空航天大学出版社,2002.118 孙涵芳.单片机原理及应用(修订版).北京:北京航空航天大学出版社,1996年9 何立民. 单片机应用技术选编(1)-(8).北京:北京航空航天大学出版社,200210 于海生.微型计算机控制技术.北京:清华大学出版社,1999年11 阎石.数字电子技术基础.第四版.北京:高等教育出版社,1997.1212 中国集成电路大全编写委员会 TTL/CMOS分册 国防工业出版社 198513 中国集成电路大全编写委员会 916分册 国防工业出版社 198614 电子技术应用1991.215 INTEGRATED CIRCUITS DATA HANDBOOK 80C51-based 8-bit microcontrollers PHILIPS,199216 Adel S.Sedra,Kenneth C.Smith:Microelectronics Circuits,3rd Edition,Holt Rinehart and Winston,Inc.,1991附录一 系统主程序 ZD EQU 0FFFFHX1 DATA 30HX2 DATA 31HDPTR EQU 30HORG OOOOH MOV DPTR ,ZDMOVX A, DPTR MOV X1, A MOV DPTR , ZDMOVX A,DPTR MOV X2,A MOV DPH,X2MOV DPL,X1CJNE DPTR ,#0000H,ZD1ZD1: SETB F0 CMP DPTR,#0000H JC ZD2ZD2: SUBB X1, DPL SUBB X2,DPH RETORG 0000H LJMP MAIN ORG 0003H LJMP INTO ORG OOOBH LJMP TO ORG OO13H LJMP INT1 ORG OO1BH LJMP T1 RETI; 定时0.5s ORG 0000HT0: MOV TMOD ,#51H MOV TH1,0 MOV TL1,0 MOV TH0,#3CH MOV TL0,#0B0H MOV IE,#82HMOV R6,#0AH SETB TR1SETB TR0 SETB EA NEXT0:JBC F0,INT1 SJMP NEXT0;A/D采样处理INT1: CLR PSW.4 SETB PSW.3MOV R0 ,#30H MOV R7,#08H SETB EA SETB EX1 CLR F1 NEXT1:JBC F1,ELSE1 SJMP NEXT1 ELSE1: MOV R7,#08HDDM2: MOV A,R7 MOV R2,A PUSH DPL PUSH DPHCLR A MOV R3,A MOV R4,AMOV R5,ADM20: MOVX A,DPTRMOV B,A INC DPTRMOVX A,DPTRINC DPTRADD A,R5 MOV R5,AMOV A ,BADDC A,R4MOV R4, AJNC DM21INC R3DM21: DJNZ R2,DM20 POP DPH POP DPLLCALL DV31定时T0中断 ORG 000BH DJNZ R6,DS1DS0: MOV A,TH1 MOV R2,TL1 CJNE A,TH1 DSS0 MOV R1,TH1 RETIDS1: MOV THO,#3CH MOV TL0,#0BH RETI ORG 0013HLJMP TRANS 外部中断1服务程序TRANS MOV DPTR ,#0FFFFHMOVX A,DPTR MOV R0 ,A INC R0MOV DPTR , #0FFFFHMOVX A, DPTR MOV R0, A DJNZ R7,TRANS SJMP DONE DONE: SETB F0RETI ;键盘中断 ORG 0040HSTART :CLR EAMOV DPTR ,#0D1HMOVX DPTR,AMOVX A,DPTRTB AT,LPMOV A,#00HMOVX DPTR,AMOV A,24HMOVX DPTR,ASETB EXT0SETB EAPP: NOPLCALL DIS NOPNOPJMP PP键输入中断服务程序:ORG 0003HINTO:PUSH PSWPUSW DPH PUSH DPLPUSH ACCMOV DPTR,#7FFFHMOV A,#40HMOVX DPTR,AMOV DPTR,#7FFFEHMOVX A,DPTRMOV B,APOP ACCPOP DPLPOP DPHPOP PSWSETB EARETI;显示子程序 DISP : MOV DPTR ,#7FFFHMOV A,#90HMOVX DPTR ,A MOV R0,#78HMOV R7,#08HMOV DPTR,#7FFEHDISPL1:MOV A,R0 ADD A,#05HMOVC A,A+PCMOVX DPTR ,AINC R0DJNZ R7,DISPL1RETSEGPT: DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H ;0,1,2,3,4,5,6,7 DB 7FH,6FH,77H,7CH,39H,5EH,79H,71H ;8,9,A,B,C,D,E,F DB 80H ; ENDLTB5: MOV DPTR,#TAB5 MOV B,ALOP5: CLR AMOVC A,A+DPTRJZ LENDINC DPTRCJNE A,B,LNF5CLR AMOVC A,A+DPTRMOV B,AINC DPTRCLR AMOVC A,A+DPTRMOV DPL,AMOV DPH,BCLR AJMP A,DPTRLNF : INC DPTR INC DPTRCLR PSW.4SETB PSW.3MOV R0,#F4HMOV R6,#64HLCALL MULDLCALL DV31LJMP ZHZH: LCALL INTOLCALL DIVDLCALL NIBTDLCALL DISPRETSETB PSW,4SETB PSW.3LCALL NIDTBMOV 40H,R4LCALL MULDLCALL DISPRETLOOP: MOV R0,#50HMOV R0,#00HINC R0JNE R0,6F,LOOPRETDIVD: CLR CMOV A,R3SUBB A,R7MOV A,R2SUBB A,R6JC DVD1SETB OVRETDVD1: MOV B,#10HCLR CMOV A,R5RLC AMOV R5,AMOV A,R4RLC AMOV A,R3XCH A,R2RL AXCH A,R2MOV F0,CCLR CSUBB A,R7MOV R1,AMOV A,R2SUBB A,R6ANL C,/F0JC DVD3MOV R2,AMOV A,R1MOV R3,AINC R5DVD3:DJNZ B,DVD2MOV A,R4MOV R2,AMOV A,R5MOV R3,ACLRRETENDMULD: MOV A,R3 MOV B,R7 MUL AB MOV R4,BMOV R5,AMOV A,R3MOV B,R6MUL B,R6MUL ABADD A,R4MOV R4,ACLR AADDC A,BMOV R3,AMOV A,R2MOV B,R7MUL ABADD A,R4MOV R4,AMOV A, R3ADDC A,BMOV R3,ACLR ARLC AXCH A,R2MOV B,R6MUL ABADD A,R3MOV R3,AMOV A,R2 ADDC A,B MOV R2,ARETDV31: CLR CMOV A, R3SUBB A, R7JC DV30SETB OV RETDV30: MOV R2, #10HDM23: CLR CMOV A, R5RLC AMOV R5, AMOV A,R4RLC A MOV R4,A MOV A,R3 RLC A MOV R3,AMOV F0,C CLR C SUBB A,R7 ANL C,/F0 JC DM24 MOV R3,A INC R5DM24: DJNZ R2,DM23MOV A,R3 ; ADD A,R3 JC DM25 SUBB A,R7 JC DM26DM25: INC R5MOVA, R5JNZ DM26INC R4DM26: CLR OVRET NIBTD: MOVA,R0 MOVR5,A MOVA,R1 MOVR6,A MOVA,R7 MOVR3,A CLRA NBD0: MOVR1,A INCR1 DJNZR3,NBD0 MOVA,R7 MOVB,#8 MULAB MOVR3,A NBD4:MOVA,R5 ADDA,R7DECA MOVR0,A MOVA,R7 MOVR2,A CLRC NBD1: MOVA,R0 RLCA MOVR0,A
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 图纸下载 > CAD图纸下载


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!