keil单片机P晶振为12MHz,编程实现P2.0产生5kHz方波(T1,方式2,查询方式),P3.0产生4kHz方波(T0,方式1,中断)

版权声明:本文为博主原创文章未经博主允许不得转载。 /baidu_/article/details/

为51单片机P设计程序已知89C51单片机P的晶振频率为12MHz,
要求用T1定时在P1.0和P1.1 引脚分别输出周期为2ms和500微秒的方波。

  程序语句应该怎样写才能精确达箌呢


38KHz估计不能达到精确


 哦,说错了更正一下

 精度范围在 43~38KHz 以内就行,因为有的资料说红外管在这个频率下的发射距离最远


如果使鼡89C2051分频应该是12,用定时器计算时要注意使用的是哪个频率

用定时器实现吧,需要=6842105us,用16位的定时器就可以了,如果用8位定时器,还要设置一变量累加計数.

不过你的中断服务程序只能用汇编写了,执行时间不得超过 12us估计很难了。

虽然中断执行时间仍不能超过 12us,但可以多执行一倍的指令叻

2051不知道有没有定时器2,一般定时器2可以用P1.0口输出一个方波

如果定时器不能用的话建议你用指令延时的方法不过要计算指令的周期

按12M主频率分出使用timer来产生38khz的频率

用定时器0或1都可以产生,将定时器设定为方式2,即常数自动重新载入的8位定时器/计数器并设置为定时中断。為了方便计算单片机P晶振选用12M,产生的频率为38K则其周期为26微秒,因为在定时器中断里要进行电平翻转因此定时器时间是周期时间的┅半,应为13微秒(取整)则初始值为256-13=243,然后在定时器中断里只管作翻转电平就行(如:CPL P1.0)因定时器中断时间总共才13微秒,除去进入中斷(2uS)翻转电平时间(1uS),退出中断的时间(2uS)所剩的时间已经没几个微秒了,所以不能在中断里作其他程序的运行

匿名用户不能发表回复!

毕业设计的全部资料下载:

大学夲科生毕业设计(论文)

单片机P液位检测及显示电路设计

专业:电气工程及其自动化

随着社会的进步生产工艺和生产技术的发展,人们對液位检测提出了更高的要求由于新型电子技术、微电子技术和微型计算机被广泛的应用,单片机P控制系统以其控制精度高性能稳定鈳靠,设置操作方便造价低等诸多特点,被应用到液位系统的控制中来

本文介绍了以LM型液位传感器,A/D转换芯片ADC0809以及AT89C51单片机P作为主控え件的液位检测系统的设计方法。本文分别从液位检测A/D转换,数码管显示超限报警等几个方面对硬件电路进行了比较详细的介绍,然後对A/D转换程序数码管显示程序,超限报警程序等做了比较详细的阐述并用流程图做进一步的解释。

通过软件和硬件的联合调试实现叻在一定范围内对液位的调节,动态显示出液位结果实现报警,完全实现了任务书上的要求

大学本科生毕业设计(论文)

第1章 绪论………………………………………………………………1

1.1 液位检测系统的概况………………………………………………1

1.2 国内外研究动态…………………………………………………… 1

1.3 本次毕业设计的意义……………………………………………… 2

1.4 本次毕业设计的任务……………………………………………… 2

第2章 硬件电路设计………………………………………………………3

2.1 硬件电路工作原理………………………………………………… 3

2.2 硬件电路设计……………………………………………………… 3

2.2.1 系统总体设计框图…………………………………………… 3

2.2.2 核惢芯片的介绍……………………………………………… 4

2.3 硬件电路各模块设计………………………………………………10

2.3.1 电源电路设计…………………………………………………10

2.3.2 单片机P最小系统电路设计……………………………………10

2.3.3 显示电路设计…………………………………………………11

2.3.4 液位传感器的接口电路设计…………………………………12

2.3.6 报警电路设计…………………………………………………14

2.4 硬件电路總结………………………………………………………14

第3章 软件设计………………………………………………………… 17

3.1 AT89C51的I/O口应用…………………………………………… 17

3.1.1 P0口的信号输入…………………………………………… 17

3.1.2 P1口的信号输入…………………………………………… 17

3.1.3 P2口的信号输入…………………………………………… 17

3.1.4 P3口的信号输入…………………………………………… 18

3.2 软件模块设计………………………………………………………19

3.2.1 主程序的设计…………………………………………………19

3.2.2 A/D转换的设计………………………………………………20

3.2.3 显礻子程序的设计……………………………………………21

3.2.4 报警子程序的设计……………………………………………24

3.3 软件设计总结………………………………………………………25

第4章 联机调试…………………………………………………………28

4.1 仿真电路调试…………………………………………………… 28

4.2 硬件电路调试…………………………………………………… 29

4.3 硬件电路调试出现的问题及解决方法………………………… 30

4.4 软件程序调试………………………………………………………30

4.5 软件程序调试出现的问题及解决方法………………………… 31

4.6 联机调试总結…………………………………………………… 31

第5章 结论………………………………………………………………32

致谢……………………………………………………………………… 33

参考文献………………………………………………………………… 34

附录……………………………………………………………………… 36

大学本科生毕业设计(论文)

随着人们生活水平和工业标准的提高,液位的检测越来越受到人们重视检测的精度和实时性要求也越来越高,另外还要求系统能提供对液位的自动控制功能今后液位的监测和控制系统的研究将是一个重要嘚课题。

1.1 液位检测系统的概况

在日常生产和生活中经常遇到液位的检测和控制问题尤其在许多工业生产系统中,需要对系统的液位或物料位进行检测和控制特别是对具有腐蚀性的液体液位的测量,传统的电极法是采用差位分布电极通过给电脉冲来检测液面,电极长期浸泡在液体中极易被腐蚀、电解、失去灵敏性,因而对测试设备的抗腐蚀性要求较高LM型液压传感器采用316L不锈钢膜片及PVC塑料螺纹头相结匼,可测量水、其它液体及气体液位LM型液压传感器采用拥有专利技术的低成本不锈钢传感器,其安装在PVC塑料过程接头内监控工程实施方便、迅速、易做到实时控制,而且测量精度又能达到工业实用的要求所以有广泛的应用前景。为了降低工人的劳动强度改善工人的笁作环境,节省财力、物力避免资源的浪费,特别是对一些具有高温、高压、低温、低压、有辐射性、毒性、易挥发易爆等液体就要對液位进行检测,而且液位的检测显得尤为重要今后液位的监测和控制系统的研究将是一个重要的课题。

1.2 国内外研究动态

随着工业生产洎动化高速发展, 对液位检测和控制技术的要求也越来越高为解决生产中的测量问题, 一方面是采用新的测量原理, 开发新的液位检测仪表, 扩夶检测的手段, 另一方面需要朝着实现微机化和智能化的方向发展。近些年来, 微电子技术的发展使得液位检测技术发生了根本性的变化新嘚检测原理与电子部件的应用使得液位计更趋向小型化和微型化, 特别是一些小型现场液位开关发展极快, 如光纤液位计, 由于没有可动部件, 所鉯可靠性高, 不仅可现场显示, 而且可以发出控制信号。与此同时, 液位检测和控制也正向着智能化方向发展, 在液位测量领域内广泛应用微处理技术, 以实现故障诊断和报警功能, 提高测量的精确度、可靠性、安全性和多功能化在应用和设计液位计时尽量实现精确测量,提高液位检测系统对恶劣环境的抵抗能力, 以便在恶劣环境下准确、可靠地工作。

1.3 本次毕业设计的意义

目前市面上进行液位测量的仪表种类繁多,但是哃时具有测量、监控、数据记录及处理的液位测量装置并不多在某些工业控制系统中,数据的测量这一基本功能已不能满足现代工业的偠求往往需要对大批数据进行记录,对其进行后期处理分析实现差错控制、工艺改善、资源优化等一系列工作。在液位测量这一领域Φ如江河湖海、城市用水等方面,大量数据长时间多网点的采集记录分析具有普遍的意义。液位的变化分析有助于人们进一步对自嘫环境、天气变化甚至是灾害预警提供可靠的支持。单片微机在许多过程控制设备和产品中都得到广泛的应用由于其体积小,价格低具有逻辑判断、定时计数、程序控制等多种功能,在各个领域、各个行业都得到了广泛应用不仅有常用的8位机,而且4位单片机P和16位单片機P也得到了普及随着过程控制精度要求的增加和运算速度的增快,单片机P得到了进一步的应用

1.4 本次毕业设计的任务

本文的主要任务是鉯单片机P为主控制器,开发一个基于液位传感器的液位监控系统可测量并显示液位高度。设定最高液位和最低液位当液位高于最高液位或低于最低液位时发出报警信号,提醒工作人员液位信息研究设计内容包括:

(一)液位检测的基本原理与方法;

(二)液位检测系統的整体方案设计;

(三)模数转换电路的设计;

(五)系统软件流程设计;

(六)电源电路的设计;

(七)PCB布线及硬件抗干扰设计。

设計完成之后提供一个可以应用于一般工业的液位检测及显示系统的设计方案测量范围和测量精度满足一般工业应用需要。通过毕业设计嘚整个过程可以综合运用传感器、单片机P、电子电路和程序设计等方面的知识,锻炼和提高科研的能力

2.1 硬件电路工作原理

该系统以AT89C51作為核心控制部件,外加传感器一片A/D转换芯片和数码管来完成系统的预期任务,即液位的检测、显示和超限报警传感器实现液位信号到電压信号的转换,再由8位A/D转换芯片ADC0809将模拟信号转换为数字信号实现液位信息的输入,AT89C51从ADC0809读取液位信息后进行数据处理和超限判断随后將处理过的数据输出到数码管显示,设置最高液位和最低液位若液位超限则由单片机P报警。

图2—1 系统总体设计框图

  • 电源部分提供+5V电压供系统各部分使用
  • LM传感器实现液位信息到电压信号的转换。
  • ADC0809将传感器输出的电压信号经A/D转换后送到单片机P
  • AT89C51为处理器,实现液位信息的接收、数据处理、和输出到数码管
  • 蜂鸣器部分在单片机P检测到液位超限是由单片机P驱动LED灯亮灭报警。
  • 单片机P对液位数据处理后输出数码管显示。

单片机P应用系统的基本构成:

图2—2 单片机P应用系统的基本构成

AT89C51含 E2PROM电可编闪速存储器有两级或三级程序存储器保密系统,防止E2PROM中嘚程序被非法复制不用紫外线擦除,提高了编程效率程序存储器E2PROM容量可达20K字节。

AT89C51是一种带4K字节闪烁可编程可擦除只读存储器的低电压高性能CMOS8位微处理器,俗称单片机P该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容由于将功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。

与MCS-51兼容4K字节可編程闪烁存储器,寿命:1000写/擦循环全静态工作:0HZ-24HZ,三级程序存储器锁定8位CPU;振荡频率1.2-12MHz;128个字节的片内数据存储器(片内RAM);21个专用寄存器;4KB嘚片内程序存储器;8位并行I/O口P0,P1,P2,P3;一个全双工串行I/O口;2个16位定时器/计数器;5个中断源分为2个优先级。

a:P0口双向8位三态I/O口,此口为地址总线(低8位)及数据总线分时复用;

c:p2口8位准双向I/O口,与地址总线(高8位)复用;

d:P3口8位准双向I/O口,双功能复用

A/D转换芯片ADC0809为8路模拟信号的分时采集,片内有8路模拟选通开关以及相应的通道抵制锁存用译码电路,其转换时间为100μs左右

图中多路开关可选通8个模拟通道,允许8路模擬量分时输入共用一个A/D转换器进行转换,这是一种经济的多路数据采集方法地址锁存与译码电路完成对A、B、C 3个地址位进行锁存和译码,其译码输出用于通道选择其转换结果通过三态输出锁存器存放、输出,因此可以直接与系统数据总线相连

分辨率为8位;最大不可调誤差小于+_1LSB;单一+5V供电,模拟输入范围0~5V;具有锁存控制的8路模拟开关;可锁存三态输出输出与TTL兼容;功耗为15mw;不必进行零点和满度调整;轉换速度取决芯片的始终频率,它的时钟为10kHZ~1.2MHZ.当时钟为500KHZ转换速度为100us。

ADC0809是一款8位AD转换器数据获取的关键部分是它的8位模/数转换器。这个部汾主要由N位逐次逼近寄存器SAR,D/A转换器比较器,置数选择电路组成转换过程如下:

A.选选置数电路置SAR的最高位为“1”,其余位为“0”经D/A轉换器转换成的模拟电压Uo与输入模拟电压Ui在电压比较器进行比较,若Ui大于等于Uo,则保留最高位“1”若Ui小于Uo,则最高位为“0”

B.置次高位為“1”,低位全为“0”按上述步骤进行转换,比较判断。

C.重复此过程直到确定SAR的最低位的值取“1”,还是“0”为止此时,SAR内容僦是对应的输入模拟电压转换后的数字量

3)LM型液压传感器

LM系列液压传感器采用316L不锈钢膜片及PVC塑料螺纹头相结合,可测量水、其它液体忣气体液位LM系列液压传感器采用拥有专利技术的低成本不锈钢传感器安装在PVC塑料过程接头内。该设计可使传感器具有多种外形方便客戶应用于需要高性能、小尺寸的压力和真空系统。传感器标准输出为0.5~4.5V供电为5V。

特    点: 螺纹接口式-20~85℃工作温度范围,±0.1%非线性±3.0%總误差,固态结构

应    用: 灌溉系统RV和船舶水位保持,蓄水和水循环系统小型罐体液位,冷却器&蒸气冷凝设备

工作温度: -35℃~85℃

特   点: 低成本微量程(最佳量程1Psi~15Psi),适于OEM客户批量应用

典型应用: 灌溉,RV和船用邮箱液位水存储和水回收系统,小罐体液位冷凝器,蒸发冷却塔


2.3 硬件电路各模块设计

本系统供电为市电AC220v经变压器TR1降为交流6v,经整流桥堆BR1整流后得到脉动直流电压6v再经三端稳压器LM7805得到VCC(+5v) ,其中電解电容C4、C6、起滤波作用,C5、C7是旁路电容起抑制干扰的作用。

RST:复位输入在单片机P工作期间,当此引脚上出现连接2个机器周期的高电岼时可实现复位操作复位电路除了具有上电复位功能外,还可通过复位键迫使RESET为高电平当系统通电时,RESET引脚获得高电平随着电容的充电,RESET引脚的高电平将逐渐下降RESET的高电平只有保持足够的时间(2个机械周期),单片机P才可以进行复位操作

时钟电路采用12MHz的晶振,因為ADC0809的工作时钟最高允许值为12MHz,单片机PALE管脚2分频后为500KHz,可以作为ADC0809转换器的时钟信号CLKXTAL1:反向放大振荡器的输入及内部时钟工作电路的输入。XTAL2:来自反姠振荡器的输出XTAL1脚是内部反相放大器的输入端,而XTAL2脚是该放大器的输出端在晶体振荡中,晶体工作于基本响应模式它作为一个感抗與外部电容形成并联谐振,使正反馈放大器维持震荡所选电容为瓷片电容22PF,因为22PF对于工作于1MHZ以上的晶振都能获得良好的效果

本设计由P1ロ控制七段发光二极管亮或灭,使用共阴极8段数码管由图2.9可知,要使七段显示器的某一段亮则应该是与该段相连的段选寄存器即P1口的某位线输出为1。若使某段熄灭则必须输出0。例如要显示数字4则应使P1口的P1.7-P1.0输出为B,若用一个字节表示该输出值即字形代码为66H,依此类嶊可以得到0—9一共10个十进制数的字形代码依次为3FH,06H5BH,4FH66H,6DH7DH,07H7FH,6FH

本设计由P2.0,P2.1P2.2,P2.3做位选以控制哪一位七段数码管显示,例如偠求第一位数码管显示,则应设置P2.0为“1”P2.1,P2.2,P2.3为“0”

PNP型三极管9012起到增加驱动电流的目的。电阻R12~R19控制通过数码管的电流R20~R23控制通过三极管9012嘚电流,R4~R11为单片机PP1口的上拉电阻

设计所选LM型液位传感器能够根据不同的液位产生不同的电压,电压值大小范围为0.5~4.5V且能够便于远距离传輸。由于芯片ADC0809的输入为0~5V的电压仿真时需要将输入信号转换为电压信号,为此外接一电位器R=1kΩ,把电压转换成0~5V电压在设计中,把电位器嘚13脚接+5V电压和地线,调节滑钮2能够很好的得到0~5V电压因此可以用电位器模拟液位传感器。

ADC0809与AT89C51相连接ADC0809中的START与ALE相连通,ALE——地址锁存允许信号对应ALE上跳沿,A、B、C地址状态送入地址锁存器中START——转换启动信号。START上升沿时复位ADC0809;START下降沿时启动芯片,开始进行A/D转换;在A/D转换期间START应保持 低电平。当ALE上升沿时ALE锁存数据,A/D转换截止当ALE下降沿时,START低电平ALE低电平,不锁存A/D转换开始。P2.4P2.5,P2.6P2.7分别控制CLK,START和ALEEOC,OE信号其控制A/D转换的开始和截止。CLK使用AT89C51内部时钟信号

Vref——参考电源参考电压用来与输入的模拟信号进行比较,作为逐次逼近的基准其典型值为+5V(Vref(+)=+5V, Vref(-)=0V)。

本电路的P3.0P3.1作为高位和低位的报警控制线,通过设置高低液位报警线来实现报警功能如果当前液位高于设置的高位报警线时,P3.0置低电平高位报警灯亮。如果当前液位低于于设置的低位报警线时P3.1置低电平,低位报警灯亮如果当前液位低于设置的高位液位且高于低位液位时,高位报警灯和低位报警灯灭

在本章中主要讲述了硬件电路的结构,电路原理和部分芯片的功能根据电路组成情况分荿六个电路模块,分别介绍了各个电路模块的工作原理和功能通过本次设计掌握了更多的基本硬件电路设计原理及其工作特点。并自行繪制电路原理图PCB封装图,为做PCB板做准备下面是电路的一些照片。

AT89C51共有P0,P1,P2,P34个8位的并行双向I/O口。各个I/O口实现不同的功能详细情况如下。

茬程序中将P0口做为段选口使用显示十位数字的段选信号,下例为显示十位数字的指令:

在程序中将P0口作为输入口用来读A/D转换值。设计Φ要求选通通道0,并把转化后得到数字量存入内部RAM的35H单元中下例为把转化后的数字量存入内部RAM中的指令:

P2.0,P2.1,P2.2,P2.3做数码管的位选信号用,要哪个数码管亮则置相应位高电平,就可将其选中例如要求显示第一个数码管,端口设置指令为:

P3.0、P3.1、P3.7作为通用I/O口使用,与LED灯和蜂鸣器相連输出报警信号,如果当前液位高于设置的高位报警线时P3.0置低电平,高位报警灯亮如果当前液位低于于设置的低位报警线时,P3.1置低電平低位报警灯亮。如果当前液位低于设置的高位液位且高于低位液位时高位报警灯和低位报警灯灭。

系统分为初始化A/D转换,十进淛转换LED显示,电机控制和报警电路因此整个程序需要包含上述六个子程序。

其中LED_0   定义地址30H,以存放显示十进制的小数点后十位数字

LED_1   定义地址31H,以存放显示十进制的小数点后个位数字

ADC0809芯片实现A/D转换的时间为0.1ms左右,A/D转换后得到的数字量应及时传送到单片机P进行处理

OE——输出允许信号。用于控制三态输出锁存器向单片机P输出转换得到的数据OE=0,输出数据线呈高阻;OE=1输出转换得到的数据。

ALE——地址锁存允许信号对应ALE上跳沿,A、B、C地址状态送入地址锁存器中

START——转换启动信号。START上升沿时复位ADC0809;START下降沿时启动芯片,开始进行A/D转换;茬A/D转换期间START应保持 低电平。本信号有时简写为ST

CLK——时钟信号。ADC0809的内部没有时钟电路所需时钟信号由外界提供,因此有时钟信号引脚通常使用频率为500KHz的时钟信号。

EOC——转换结束信号EOC=0,正在进行转换;EOC=1,转换结束。使用中该状态信号即可作为查询的状态标志又可作为中斷请求信号使用。

设计中采用动态扫描法实现四位数码管的数值显示,并显示小数点数码管动态显示接口是单片机P中应用最为广泛的┅种显示方式之一,动态驱动是将所有数码管的8个显示笔划"a,b,c,d,e,f,g,dp"的同名端连在一起另外为每个数码管的公共极COM增加位选通控制电路,位选通甴各自独立的I/O线控制当单片机P输出字形码时,所有数码管都接收到相同的字形码但究竟是那个数码管会显示出字形,取决于单片机P对位选通COM端电路的控制只要将需要显示的数码管的选通控制打开,该位就显示出字形没有选通的数码管就不会亮。通过分时轮流控制各個数码管的的COM端就使各个数码管轮流受控显示,这就是动态驱动在轮流显示过程中,每位数码管的点亮时间为1~2ms由于人的视觉暂留現象及发光二极管的余辉效应,尽管实际上各位数码管并非同时点亮但只要扫描的速度足够快,给人的印象就是一组稳定的显示数据鈈会有闪烁感,动态显示的效果和静态显示是一样的能够节省大量的I/O端口,而且功耗更低

通过逐次选通P2.0P2.1 ,P2.2,P2.3依次送十进制的相应字段码給P1口并延时5ms完成显示。

本电路的P3.0P3.1作为高位和低位的报警控制线,通过设置高低液位报警线来实现报警功能本设计要求为:液位在小於1.5米时低位报警灯亮进行低位报警,液位在1.5~4米时灯都不亮液位在大于4米时高位报警灯亮进行高位报警。

在本章中主要讲述了软件设计嘚一些情况对软件的一些功能进行了解释,根据程序组成情况分成六个程序模块分别介绍了各个程序模块的工作原理和功能,对部分程序进行了简单的注释通过流程图直观的表现出各个模块的作用及程序运行过程。在本次的软件设计中运用Keil进行编程,将编辑好的程序进行编译查看是否语法错误,如果没有错误设置晶振频率,编译生成.Hex文件进行仿真。在此过程中我收益良多,熟悉了单片机P汇編语言的使用对单片机P的编程有了进一步的理解,通过和同学的交流学会了很多以前自己不能解决的问题。

在仿真程序中通过模块编程用Proteus软件与Keil软件相结合进行调试,(调试程序见附录I)

2)然后选择要保存的路径,输入工程文件的名字,比如保存到论文目录里,工程文件的名芓为yang.uv2.

3)这时会弹出一个对话框,选择单片机P的型号,你可以根据你使用的单片机P来选择,keil c51几乎支持所有要求你的51核的单片机P,这里选AT89S51

这时要新建一個源程序文件,建立一个汇编文件,输入编写好的程序

保存。选择要保存的路径,在文件名里输入文件名,注意一定要输入扩展名,这里有汇编語言文件名为:yang.asm。

(4)单击“Project”菜单再在下拉菜单中单击“Built Target”选项(或者使用快捷键F7),编译成功后再单击“Project”菜单,在下拉菜单中单擊“Start/Stop Debug Session”(或者使用快捷键Ctrl+F5)硬件仿真原理图如下图

通过改变电位器阻值的变化来模拟液位的变化,液位数值在数码管上显示液位在小於1.5米时低位报警灯报警,液位在1.5米到4.0米时不报警液位大于4.0米时高位报警灯报警。芯片ADC0809的转换精度为1/256所以本电路的最小分辨率为0.05V。

1.焊接电路时注意布局是否合适芯片摆放是否正确,元器件是否齐全

2.焊接好电路后,用万用表检测电路是否有短路、断路现象发生检測地线和电源线是否短路。

3.用万用表按照电路原理图重新检查电路检查是否有焊接错误的情况发生,检查元器件是否虚焊

4.插上芯爿,注意管脚方向是否与PCB设计一致

5.连通电源,检查电路在没有程序时是否与仿真结果一致

4.3 硬件电路出现的问题及解决方法

1.电源接通后,发现ADC0809芯片发烫

解决过程:开始考虑是否是电源接错了,导致接在ADC0809两端的电压过大导致的用万用表检测后发现电源正确,后经老師指导找出问题是使用双电源供电两个电源电压有偏差,导致芯片发烫后改正后芯片正常工作。

2.调试电路时数码管有第一个不显礻。

解决过程:开始考虑是否是程序的问题导致数码管不显示仔细检查程序后,经proteus仿真证明程序没有问题后考虑是不是数码管出现问題,交换数码管控制信号线后发现第一个数码管的信号线能使其他数码管显示,后用万用表检测发现它的两个管脚短路证明第一个数碼管已损坏,不能显示于是重新换取数码管后,数码管显示正常

本设计调试程序使用的是Keil编译软件和Proteus仿真软件。先将编辑好的程序进荇编译检查程序是否有语法上的错误。在编译、连接无错误和警告后把程序进行分块调试。然后用单步调试的方法进行检查寄存器中嘚内容是否与预期结果一致例如:显示部分,在调试中可以用相关窗口查看相应寄存器的内容,35H单元存放采样值30H,31H32H,33H单元内容则為其转换值再对比显示的数据就可以知道是否正确。

运行编译生成.hex文件然后在Proteus中加入.hex文件,进行仿真查看显示是否正确,能否达到偠求进行单步调试,查看硬件电路的电平是否和预期结果一致

用STC_ISP_V3.1软件将.hex文件烧写进单片机P中,与硬件相连接通电后,用万用表检查電路的电压是否与仿真图中的电压一致用仿真结果验证硬件电路是否正确。

4.5 软件程序调试出现的问题及解决方法

1.在仿真时ADC0809不能进行汸真。

解决方法:在仿真时使用Proteus软件芯片ADC0809不能进行仿真,系统提示是没有模型于是仿真时采用ADC0808芯片进行。由于ADC0809与ADC0808的区别在于:ADC0808的输出數据线D0~D7是从高位依次到低位ADC0809的输出数据线D0~D7是从低位依次到高位。于是采用ADC0808进行仿真ADC0809用在实物电路上。

2.在Keil中编辑程序时程序出现有錯误,其不能运行

解决方法:在Keil中运行后双击出现的错误,错误行被指出来根据程序的上下文,改正出现的错误由于在程序中START后少添加了“:”,使得程序不能运行改正后程序运行正常。

联机调试是做硬件电路中的一个很重要的环节它的调试结果直接体现出对硬件和软件的熟悉程度,对任务的理解

在整个调试过程中对Keil编译软件,STC_ISP_V3.1烧写软件和Proteus仿真软件有了进一步的认识和理解对AT89C51单片机P的汇编语訁有了更进一步的了解,和同学的交流更进一步的提高自己通过对调试软件和硬件时出现的一些问题的讨论,使我能更好的对电路、程序有个更深的认识使我学会了分析电路的方法和技巧。

在本次毕业设计中完成了电路原理图设计PCB板设计,电路焊接程序的设计,软、硬件的联机调试硬件电路的各个模块,包括单片机P最小系统电路A/D转换电路,数码管显示电路报警电路等都能够正常工作。在与软件进行联机调试时通过改变电位器阻值的变化来模拟液位的变化,液位数值在数码管上显示液位在小于1.5米时低位报警灯报警,液位在1.5米到4.0米时不报警液位大于4.0米时高位报警灯报警。芯片ADC0809的转换精度为1/256所以本电路的最小分辨率为1/256V。

本次毕业设计完成了任务书下达的所囿任务实现了液位的检测及液位的显示,并实现了超限报警显示液位范围为0~5m,显示的最小分辨率为1/256V。它是一个可以应用于一般工业的液位检测及显示系统的设计方案测量范围和测量精度满足一般工业应用需要。

本次毕业设计是在宁耀斌老师的悉心指导下完成的在论文設计期间受到宁老师很大的帮助和指导,在这里衷心的感谢宁老师在本次毕业设计中给予的关心和支持

同时,在这次设计过程中还受到姬军鹏老师的指导和帮助在此,谨向他们在百忙当中给予的指导和帮助表示衷心的感谢

同时,本课题能顺利完成还得到了孟杰、彭世業、白礼绒、孟环等同学的大力帮助感谢他们在本课题的设计过程中给予了许多宝贵意见和帮助,在此一并向他们致谢!

  • 单片机PC语言应鼡程序接口技术及实例[M].航天工业出版社.2003.2
  • PIC单片机P原理与接口技术[M].北京:电子工业出版社,2001:
  • 张毅刚. MCS-51单片机P应用设计[M].哈尔滨:哈尔滨工业大学出版社 2003:
  • 孙姠东,李守智等.电气生产实习指导手册[J].西安:理工大学电气工程系
  • 黄正瑾.电子设计竞赛[M].东南大学出版社,2001
  • 蒋廷彪. 单片机P原理及应用(MCS-51[M].重庆大学絀版社,2003
  • 肖婧. 单片机P系统设计与仿真---基于proteus [M].北京航空航天大学出版
  • 蒋廷彪,刘电霆,高富强,方华 单片机P原理及应用(MCS-51[M].重庆大学出版社
  • 彭军.传感器與检测技术[M].西安:西安电子科技大学出版社,2003.

我要回帖

更多关于 单片机P 的文章

 

随机推荐