首页 基于单片机的智能数字电压表的设计

基于单片机的智能数字电压表的设计

举报
开通vip

基于单片机的智能数字电压表的设计目录 前言    1 第1章 方案选择及总体设计    2 1.1设计目的    2 1.2作品要求    2 1.3实验器材    3 1.4总体设计    3 1.5模块方案选择与认证    3 第2章  硬件设计及电路图    4 2.1.AT89S52的主要性能    4 2.2.ADC0832功能特点    7 2.3. 显示部分    8 2.4电源电路    8 2.5 复位电路    9 2.6 时钟电路:    9 2.7系统原理图    9 第三章 系统程序设计    10 3.1软件总体框架设...

基于单片机的智能数字电压表的设计
目录 前言    1 第1章  方案 气瓶 现场处置方案 .pdf气瓶 现场处置方案 .doc见习基地管理方案.doc关于群访事件的化解方案建筑工地扬尘治理专项方案下载 选择及总体设计    2 1.1设计目的    2 1.2作品要求    2 1.3实验器材    3 1.4总体设计    3 1.5模块方案选择与认证    3 第2章  硬件设计及电路图    4 2.1.AT89S52的主要性能    4 2.2.ADC0832功能特点    7 2.3. 显示部分    8 2.4电源电路    8 2.5 复位电路    9 2.6 时钟电路:    9 2.7系统原理图    9 第三章 系统程序设计    10 3.1软件总体框架设计    10 第四章 实物制作    12 实物的制作:    12 第五章 调试说明    13 5.1.软件调试:    13 5.2.硬件调试    13 5.3.实物的调试    13 参考文献    14 附件一    15 前言 单片机是一种面向控制的大规模集成电路模块,具有功能强、体积小、可靠性高、价格低廉等特点,在工业控制、数据采集、智能仪 关于同志近三年现实表现材料材料类招标技术评分表图表与交易pdf视力表打印pdf用图表说话 pdf 、机电一体化、家用电器等领域得到了广泛的应用,极大的提高了这些领域的技术水平和自动化程度,在一定程度上限制了这类产品的普及和推广。 在电量的测量中,电压、电流和频率是最基本的三个被测量,其中电压量的测量最为经常。而且随着电子技术的发展,更是经常需要测量高精度的电压,所以数字电压表就成为一种必不可少的测量仪器。数字电压表(Digital Voltmeter)简称DVM,它是采用数字化测量技术,把连续的模拟量(直流或交流输入电压)转换成不连续、离散的数字形式并加以显示的仪表。由于数字式仪器具有读数准确方便、精度高、误差小、灵敏度高和分辨率高、测量速度快等特点而倍受青睐。 第1章 方案选择及总体设计 1.1设计目的   通过制作简易数字电压表,加深对所学专业知识的认识,提高对单片机的应用能力,提高收集文献,资料的能力,从而达到综合运用所学的知识进行电子产品设计,制作与调试。  1.2作品要求 基本功能:   1)电压测量范围0-5V   2)能用数码管显示电压值   3)测量精度是0.1V 1.3实验器材   AT89S51芯片,AT89S52芯片,共阴极数码管,晶振,排线电阻(10K),电阻(10K),极性电容一个(10uF),无极性电容两个(30pF),0—5V电源,若干导线。 1.4总体设计 本设计从各个角度分析了由单片机组成的数字电压表的设计过程及各部分电路的组成及其原理,并且分析了程序如何驱动单片机进而使系统运行起来的原理及方法。框图如下: 量程控制电路 A/D转换器AD0832 模拟电压输入 89S52 单片机 电压显示器               电源电路 1.5模块方案选择与认证 根据设计要求,系统可分为A/D转换模块,接口模块,显示模块。   A/D转换模块:   方案一:采用ADC0804转换芯片,是一个8位、单通道的A/D转换器,因其价格低廉而在要求不高的场合得到广泛应用。ADC0804主要特点是:模数转换时间大约100us;方便的TTL或CMOS 标准 excel标准偏差excel标准偏差函数exl标准差函数国标检验抽样标准表免费下载红头文件格式标准下载 接口;可以满足差分电压输入;具有参考电压输入端;内含时钟发生器;单电源工作时输入信号电压范围是0V~5V;不需要调零。 方案二:采用ADC0832转换芯片,功耗低,性能价格比较高,适宜在袖珍式的智能仪器仪表中使用。其主要特点是:8位分辨率,其最高分辨级可达 256级,可以适应一般的模拟量转换要求。逐次逼近型,5V单电源供电,输入模拟信号电压范围为0—5V,输入输出电平与TTL和CMOS兼容。在250KHZ时钟频率时,转换时间为32 us,具有两个可供选择的模拟输入通道。芯片具有双数据输出可作为数据校验,减少数据误差,转换速度快且稳定性强。通过DI数据输入端,可以容易地实现通道功能的选择。 由于模拟转换电路的种类繁多,通过对精度,转换速度和稳定性方面考虑,固选择方案二采用ADC0832为本次设计的转换芯片。 接口模块: 方案一:采用AT89S51单片机作为系统的控制单元,通过A/D转换器将模拟量转换为数据量送入单片机中,再由单片机送到显示模块。此方案各类功能易于实现,成本低,功耗低,显示稳定。 方案二:采用AT89S52拥有AT89S51的基本特点之外,此外AT89S52可通过软件设置省电模式。空闲模式下,CPU暂停工作,而RAM定时计数器,串行口,外中断系统可继续工作,掉电模式冻结振荡器而保存RAM的数据,停止芯片其它功能直至外中断激活或硬件复位。 在烧写过程中由于AT89S51结果未能测试成功,经过几次的烧写,测试结果还是不如意;当我们烧写AT89S52时,测试成功。同时,由于市场的条件限制,我们通过比较,选择了方案二。 第2章  硬件设计及电路图 2.1.AT89S52的主要性能 (1)与MCS-51单片机产品兼容        (2)8K字节在系统可编程Flash存储器 (3)1000次擦写周期                (4)全静态工作:0Hz—33MHz (5)32个可编程I/O口线            (6)3个16位定时器/计数器 (7)5个中断源                      (8)全双工UART串行通道 (9)低功耗空闲和掉电模式          (10)掉电后中断可唤醒 (11)灵活的ISP编程              (12)4.0---5.5V电压工作范围 AT89S52芯片有40条引脚,双列直插式封装引脚如下图所示: Vcc(40):电源+5V Vss(20): 接地 XTAL1(19)和XTAL2(18):使用内部振荡电路时,用来接石英晶体和电容;使用外部时钟时,用来输入时钟脉冲。 P0口(39—32):是一组8位漏极开路行双向I/O口,也既地址/数据总线复用口。可作为输出口使用时,每位可吸收电流的方式驱动8个TTL逻辑电路,对端口写“1”可作为高阻抗输入输入端用。在访问外部数据存储器时,这组口线分时转换地址(低8位)和数据总线复用,在访问期间激活内部上拉电阻。在Flash编程时,PO口接收指令字节,而在程序校验时,输出指令字节,校验时,要求接上拉电阻。 P1口(1—8):是一个内部有上拉电阻的8位双向I/O口,P1的输入缓冲级可驱动(吸收或输出电流)4个TTL逻辑门电路。对端口写“1”,通过内部的上拉电阻把端口拉到高电平,此时可作输出口。作输入口时,因为内部存在上拉电阻,某个引脚被外部信号拉低时输出一个电流(I)。Flash编程和程序校验期间,P1口接收8位地址。 P2口(21—28):是一个带有内部上拉电阻的8位双向I/O口,P2的输入缓冲极可以驱动(输入或输出电流)4个TTL逻辑门电路。对端口“1”,通过内部的上拉电阻把端口拉到高电平,此时和作为输出口,作输出口时,因为存在内部上拉电阻,某个引脚被外部信号拉低时会输出一个电流。在访问外部存储器或1位地址的外部数据存储器(例如执行MOVX@DPTR指令)时,P2口送出高8位地址数据。在访问8位地址的外部数据存储器(如执行MOVX@RI指令)时,P2口线的内容(也既特殊功能寄存器(SFR)区中R2寄存器的内容),在整个访问期间不改变。Flash编程或校验时,P2亦接收高地址和其他控制信号。   P3口(10—17):是一组带有内部上拉电阻的8位双向I/O口,P1的输入缓冲级可驱动(吸收或输出电流)4个TTL逻辑门电路。对P3口写入“1”时,它们被内部上拉电阻拉高并可作为输出端口。作输出端口时,被外部拉低的P3口将用上拉电阻输出电流。P3口除可作为一般的I/O口线外,更重要的用途是它的第二功能,如图2-4所示: P3口还接收一些用于Flas 闪速存储器编程和程序校验的控制信号。 ALE/(30):地址锁存信号输出端。在访问片外丰储器时,若ALE为有效高电平,则P0口输出地址低8位,可以用ALE信号作外部地址锁存信号,也可作系统中其它芯片的时钟源。第二功能是对EPROM编程时的编程脉冲输入端。 RST/VPD(9):复位信号输入端。AT89S52接能电源后,在时钟电路作用下,该脚上出现两个机器周期以上的高电平,使内部复位。第二功能是VPD,即备用电源输入端。当主电源Vcc发生故障,降低到低电平规定值时,VPD将为RAM提供备用电源,发保证存储在RAM中的信号不丢失。 AT89S52通常采用上电自动复位和开关手动复位,我们采用的就是这种方法。 /Vpp(31):内部和外部程序存储器选择线。=0时访问外部ROM 0000H—FFFFH;=1时,地址0000H—0FFFH空间访问内部ROM,地址1000H—FFFFH空间访问外部ROM。 (29):片外程序存储器选通信号,低电平有效。 2.2.ADC0832功能特点 ADC0832是美国国家半导体公司生产的串行接口8位A/D转换器,通过3线接口与单片机连接,功耗低,性价比高,适宜在袖珍的智能仪器仪表中使用。ADC0832为8位分辨率A/D转换芯片,其最高分辨率可达256级,可以适应一般的模拟量转换要求。芯片具有双数据输出可作为数据校验,以减少误差,转换速度快且稳定性强。独立的芯片使能输入,使多器件连接和处理器控制变得更加方便。通过DI数据输入端,可以轻易地实现通道功能的选择。其主要特点如下: (1)8位分辨率,逐次逼近型,基准电压为5V; (2)5V单电源供电; (3)输入模拟信号电压范围为0~5V; (4)输入和输出电平与TTL和CMOS兼容; (5)在250Khz的时钟频率时,转换时间为32us; (6)具有2个可供选择的模拟输入通道; (7)功耗低(15mw); (8)支持SPI方式。 1.外部引脚及其说明     ADC0832有DIP和SOIC;两种封装,DIP封装的ADC0832引脚排列如下图所示:                 各引脚说明: (1) CS:片选端,低电平有效; (2) CH0、CH1:两路模拟信号输入端; (3) DI:两路模拟信号输入选择控制端; (4) DO:模拟转换结果串行输出端; (5) CLK:串行时钟输入端; (6) VCC/Vref:电源端和基准电压输入端; (7) GND:电源地; 2.单片机对ADC0832的控制原理     一般情况下,ADC0832与单片机的接口应为4条数据线,分别是CS、CLK、DI、DO。当ADC0832未工作时,其CS端应为高电平,此时芯片被禁用,CLK和DI、DO的电平可任意。当要进行A/D转换时,需先将CS置低,并且保持低电平直到转换完全结束。此时芯片开始转换工作,同时由处理器向芯片时钟输入端CLK提供脉冲,DI在第一个时钟脉冲到来之前为高电平,表示启动位。在第二、第三个时钟脉冲到来之前,DI端输入2位数据用于选择通道功能,其功能表项见下表。     输入 形式 配置位 选择通道 CH0 CH1 CH0 CH1 差分输入 0 0 + — 0 1 — + 单端输入 1 0 + 1 1 +     到第三个时钟脉冲到来之后,DI端就失去作用,此后DO端则开始利用,数据输出DO进行转换数据的读取。 从第4个时钟脉冲开始由DO端输出转换数据的最高位D7,随后每一个脉冲DO端输出下一位数据。直到第11个脉冲发出最低位数据DO,一个字节的数据输出完成。也正是从此位开始输出下一个反向字节的数据,既从第11个时钟脉冲输出DO,随后输出的8位数据,到第19个脉冲时数据输出完成,也标志着一次A/D转换的结束。最后将CS置高电平禁用芯片,将转换好的数据进行处理就可以了。 2.3. 显示部分   显示部分使用型号为“LG5641BH 0.56”LED数码管,该型号数码管为4位一体数码管,共12个引脚,其中8个为段选,4个为位选。如下图所示: 共阳极 4位数码管    LG5641BH 0.56  四联共阳 红 从左到右  从上倒下 像这个图片,对于共阳极的LG5641BH来说,是怎么读的呢?图上的六条指针从左至右怎么读呢? 正面看的话,上面6脚,下面6脚,共12脚 上面从左到右是1,a,f,2,3,b 下面从左到右是e,d,dp,c,g,4 其中1,2,3,4是4个数码管的位选 2.4电源电路 在电路部分,电源采用5V直流电源VDD供电,为AT89S51单片机、芯片DS1302及晶振供电。由在接电源的时候一定要注意正负极,如果接反了的话,容易将稳压管烧坏。                       图2-4电源电路 2.5 复位电路 单片机的复位方式主要有上电自动复位和按钮手动复位。为了保证单片机系统有效复位,要求RST端脚维持高电平大于10MS以上。电阻和电容的值随时钟频率的不同而变化。 图2-5复位电路 2.6 时钟电路: 时钟电路是外部时钟和内部时钟组成。内部是由单片机本身及外部12MHZ的晶振和两个电容构成工作主频时钟电路,这样外电源断开时钟也不会停止。 图2-6时钟电路 2.7系统原理图 单片机AT89S51是本系统的核心部分,根据以上各功能模块得到应用电路总原理图。原理图如2.9所示: 图2.7系统原理图 第三章 系统程序设计 3.1软件总体框架设计 系统软件的总体框架,主程序采用死循环结构,在其中调用了三个子程序,为AD转换子程序,数据处理子程序,动态显示子程序, 在系统上电开始测量前,要用万用表的电压档对被测电压进行估测,然后以此选择适当的量程,防止过大电压烧坏A/D转换器。选择好量程之后就可以对系统上电测量了。系统上电即初始化,首先,单片机片选A/D转换器,然后发出信号启动A/D转换。此时单片机内部定时/计数器也开始工作,不断扫描A/D转换结束端口有无结束信号。若有,即启动信号采集,对A/D转换器的数据输出口送来的数值进行存储,数据处理完之后,利用查表法将电压数值送显示器显示出来。 流程 快递问题件怎么处理流程河南自建厂房流程下载关于规范招聘需求审批流程制作流程表下载邮件下载流程设计 如图3.1.1所示,数据处理子程序流程图如图3.1.2所示 返回 图3.1_1 软件总体框架 第四章 实物制作 实物的制作: 1、打印菲林纸是整个电路板制作过程中至关重要的一步,打印时确保打印出的电路图清晰。 2、 钢锯据条一片,木工细砂纸一张。用钢锯据条裁减覆铜板到合适大小,注意在裁减时留点余量,不要小了,毕竟据条也是有厚度的用木工砂纸打磨使边界光滑平整。 3、在实验室做好数字电压表电路的印刷电路板,最后检查印刷电路板有无断线,是否和PCB一致。把打印好的转印纸有字的一面平铺到覆铜板上。先加热塑机到120度,将包装好的铜板通过热塑机,重复压两次,以防电路板断线,等板子冷了之后将纸撕掉,就可以看见完整的电路图了。如果发现有断线地方就用信号笔在断线的地方补画一下,等板干了再腐蚀。 4、腐蚀。三氯化铁或盐酸+双氧水,这里用三氯化铁。用三氯化铁溶液进行腐蚀,用开水来融化三氯化铁,在反应中用开水来维持温度,我用化学上说的水浴,也就是在容器下放一个水盆来盛开水,在反应中不断的要它加快它的腐蚀速度。要时刻注意腐蚀的进度,特别是在线宽小的时候,腐蚀刚完成就要马上拿开并冲洗干净,用布擦干。 5、钻孔。钻孔。首先选择好合适的钻头,以钻普通接插件孔为例,选择0.95mm的钻头,安装好钻头后,将电路板平放在钻床平台上,打开钻床电源,将钻头压杆慢慢往下压,同时调整电路板位置,使钻孔中心点对准钻头,按住电路板不动,压下钻头压杆,这样就打好一个孔。提起钻头压杆,移动电路板,调整电路板其它钻孔中心位置,以便钻其它孔,注意此时钻孔为同型号。对于其它型号的孔,更换对应规格的钻头后,按上述同样的方法钻孔。   7、除去后就是焊接了。在焊接之前,最好在面包板上按照原理图检查连接元件,看功能是否实现,如果功能实现了,就按照安装图焊接元件。在制作电路板的时候,我们先将小的元件焊上去,按跳线→电阻→电容→晶振→发光二极管的顺序焊接,接着再把芯片底座→按键→排插,等大点的元件焊上去,最后才将LED的排插焊上去,在焊晶振的时候我们特别注意了,我们使它紧靠电路板,是为了让它的工作频率更稳定,提高它的抗干扰能力。焊接过程中要快,避免烧坏元件,焊盘要光亮,大小适当。焊好之后检查有没有虚焊﹑漏焊或者短路的地方。 至此电路板制作完毕。 第五章 调试说明 5.1.软件调试: 启动ADK51软件,输入程序,并保存为××.ASM文件。建立项目:执行“文件/新建项目” ‘在弹出的加入模块窗口中选择程序的文件名,点击“打开”保存项目。双击项目窗口中模块下的××.ASM文件,打开项文件。编译程序:点击“项目/全部编译”,如出现错误,则修改程序,再重复以上步骤,直到编译成功。将编译好的程序烧写到芯片中:打开SU**软件,首先点击菜单栏的器件,选择AT89S51,其次点击菜单栏编辑—运行,依次添加擦除(erase)、再次检查擦除(black—erase)、编译、运行,发现在烧制过程中,擦除等正确,但结果显示是失败,经几次烧制最终AT89S51烧坏了,于是立即采用另一个方案,将芯片换成AT89S52,按照上面烧制过程将程序烧写到AT89S52中,(注意在器件中要选择AT89S52)。接上电源,刚开始的时候除了不能显示其他的功能都能实现,经过多次修改软件最终基本能正常显示。 5.2.硬件调试 (1)正确接入+5V直流电源,若亮则表明AT89S52以及输出部分电路都能够正常工作。供电之后,数码管出现一闪一闪的。检查电路没有坏。看程序,也没有错误,运行编译都正常,将电路板接触加固,以防虚焊,稍作改正之后仍不行,数码管状态没有改变。再次检查电路板、元器件及程序,。输入信号,测试正确,可以显示正确结果。调试完毕。样机所用的基本电源为5V,经测量,其电压值,符合要求。根据硬件电气原理图和装配图检查了样机线路正确。元器件的型号、规格和安装符合要求。在不插入AT89S52芯片的情况下,对样机各插件上的引脚的电压进行了测量,大部分正常,少数由于虚焊所致,断电、重焊、再测,达到要求。 (2)实践:对照电路原理图和装配图将制作出来的实物做全面的检查(例如:芯片和元器件的放置、线路的连接、焊接的情况等等),确认无误后把+5V直流电源正确接入电路,用导线将一个1.2V的电压接入电路,在数码管上可以正确显示为1.2V,但有些闪烁。  5.3.实物的调试 做好板后烧程序进AT89S51单片机中。又换了一个1.5V的电池,数码管可以正确显示,精度为0.1,原先出现的数码管闪烁现象仍旧出现,经过多次测试发现问 快递公司问题件快递公司问题件货款处理关于圆的周长面积重点题型关于解方程组的题及答案关于南海问题 依旧,我们组员一致判定这是由器件受到干扰所致,这种干扰可以是相邻器件的干扰、或是接入电路线过长干扰、若用手去接触ADC0932的CH0通道引脚也会造成干扰。如果操作错误或过多,复位电路就不再起作用,这时数码管不再显示任何数据,即使有信号接入也不会显示数值,此时可通过拔掉电源线使电路进行强制复位,复位后恢复正常,没有介入信号时数码管显示00.00,接入信号正常显示。 参考文献 1. 梅丽风.单片机原理几接口技术.北京: 清华大学出版社 主编王艳秋,2004.2 2. 梅丽凤. 单片机原理及接口技术.北京:清华大学出版社, 2004 3. 张迎新.单片微型记数机原理,应用接口技术.北京:国防工业出版社,1993 4. 李兴富.单片机原理及应用技术.华南理工大学出版社,2001 5.何立民.单片机应用系统设计.北京:北京航空航天大学出版社,2004 6.江思明. PROTEL电路设计教程.北京:清华大学出版社,2003 7.李刚民.单片机原理及实用技术[M].北京:高等教育出版社,2005 附件一 源程序: org 0       CLK  BIT    P3.4         DO    BIT    P3.5         DI    BIT    P3.6       CS    BIT    P3.7         wanwei  equ    30h         qianwei equ    31h         baiwei  equ    32h         shiwei  equ    33h         gewei  equ    34h         MOV    SP,#60H MAIN:         LCALL  ADC         LCALL  PROCESS         LCALL  DISPLAY         SJMP    MAIN ;************************ ;功能:进行一次AD转换 ;入口参数:无 ;占用资源:A,R7 ;返回值:A(转换值) ;************************ ADC:    CLR  CS         MOV  A,#03H; 启动位1,端口设置为10;         MOV  R7,#03H;3次循环 LOOP1:  CLR  CLK         RRC  A         MOV  DI,C         NOP         SETB  CLK         DJNZ  R7,LOOP1         CLR  CLK         NOP         SETB  CLK         MOV  R7,#8;读取8位数据 LOOP2:  SETB  CLK         NOP         CLR  CLK         MOV  C,DO  ;高位先移入         RLC  A         DJNZ  R7,LOOP2       SETB  CS    ;关闭芯片       RET ;************************* ;功能:数据处理 ;入口参数:A ;占用资源:B,HEX_TO_BCD ;返回值:5个单元(同HEX_TO_BCD) ;**************************** PROCESS: MOV  B,#2 ; 转换值*2,即(0.02*100)         MUL  AB         MOV  R7,B         MOV  R6,A         LCALL HEX_TO_BCD; 数位分离         RET ;*************************** ;功能:数码管动态显示 ;入口参数:5个单元 ;占用资源:A,DPTR,P1,P2,DELAY2MS ;返回值:无 ;******************************** DISPLAY:         MOV DPTR,#TAB  ; 数码管显示         MOV A,gewei    ; 显示百分位         MOVC A,@A+DPTR  ; 查段码表            MOV P1,A        ;送段码         MOV P2,#0FEH    ;送位码         LCALL DELAY2MS         MOV P2,#0FFH    ;除残影         MOV A,shiwei    ; 显示十分位         MOVC A,@A+DPTR         MOV P1,A         MOV P2,#0FDH         LCALL DELAY2MS         MOV P2,#0FFH         MOV A,baiwei    ; 显示个位         MOVC A,@A+DPTR         ORL A,#80H      ;小数点         MOV P1,A         MOV P2,#0FBH         LCALL DELAY2MS         MOV P2,#0FFH         MOV A,qianwei    ; 显示十位         MOVC A,@A+DPTR         MOV P1,A           MOV P2,#0F7H           LCALL DELAY2MS           MOV P2,#0FFH           RET ;************************************ ;功能:16位数位分离 ;入口参数:二进制数高8位放R7,低8位放R6 ;占用资源:R1~R7,5个RAM单元,F0 ;返回值:5个RAM单元 ;************************************** HEX_TO_BCD: MOV  R5,#27H             MOV  R4,#10H;10000             LCALL WDIV  ;16位除法子程序             MOV  wanwei,R6;万位             MOV  A,R3  ;余数做被除数             MOV  R7,A             MOV  A,R2             MOV  R6,A             MOV  R5,#03H             MOV  R4,#0E8H;1000             LCALL WDIV             MOV  qianwei,R6;千位             MOV  A,R3             MOV  R7,A             MOV  A,R2             MOV  R6,A             MOV  R5,#00H             MOV  R4,#100;100             LCALL WDIV             MOV  baiwei,R6;百位             MOV  A,R2             MOV  B,#10             DIV  AB             MOV  shiwei,A             MOV  gewei,B             RET ;********************************** ;功能:16位除法子程序 ;入口参数:R7R6为被除数,R5R4为除数 ;占用资源:R1~R7,F0 ;返回值:商放回R7R6,余数放R3R2,除数R5R4不变 ;********************************** WDIV:      MOV    A,R5           JNZ    CHK_DIVIDEND  ; 判断除数是为0             MOV    A,R4             JZ      OVERFLOW  ; 除数为0置F0标志 CHK_DIVIDEND: MOV    A,R7             JNZ    START_WDIV ; 被除数为0返回             MOV    A,R6             JNZ    START_WDIV             RET START_WDIV:  CLR    A             MOV    R2,A             MOV    R3,A             MOV    R1,#16 DIV1:        CLR    C             MOV    A,R6             RLC    A             MOV    R6,A             MOV    A,R7             RLC    A             MOV    R7,A             MOV    A,R2             RLC    A             MOV    R2,A           MOV    A,R3             RLC    A             MOV    R3,A             MOV    A,R2             SUBB    A,R4             MOV    R0,A             MOV    A,R3             SUBB    A,R5             JC      NEXT_DIV             INC    R6             MOV    R3,A             MOV    A,R0             MOV    R2,A NEXT_DIV:    DJNZ    R1,DIV1             RET OVERFLOW:    SETB    F0             RET ;*********************** ;入口参数:无: ;占用资源:R2,R3 ;返回值:无 ;*********************** DELAY2MS:         MOV R2,#2 DE_LOOP: MOV R3,#250         DJNZ R3,$         DJNZ R2,DE_LOOP         RET TAB:DB 3FH,06H,5BH,4FH,66H, 6DH,7DH,07H,7FH,6FH;0~9共阴段码表 END 文档已经阅读完毕,请返回上一页!
本文档为【基于单片机的智能数字电压表的设计】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_337177
暂无简介~
格式:doc
大小:190KB
软件:Word
页数:17
分类:生活休闲
上传时间:2017-09-19
浏览量:44