基于8155的LCD显示存储示波器

  • 格式:docx
  • 大小:596.13 KB
  • 文档页数:25

1 目录 第一部分 实验目的及要求............................................4 1. 实验目的.........................................................4 2. 实验要求.........................................................4 第二部分 实验工具及实验器件........................................5 1. Protues7.7以及Keil2软件的使用...................................5 2. 51单片机AT89c51.................................................5 3. 模数转换芯片ADC0804.............................................7 4. 数模转换芯片DAC0832............................................10 5. SRAM芯片6264...................................................12 6. 可编程并行I/O接口芯片8155H.....................................14 7. 74LS373锁存器..................................................15 8. LCDLM016L.......................................................16 第三部分 实验原理及程序代码.......................................17 第四部分 实验测试结果.............................................31 第五部分 实验小结和体会...........................................34 2

第一部分 实验目的和要求 1、实验目的: 本课程设计是在理论课程的基础上,重点培养学生的动手能力,通过理论计算、实际编程、调试、测试、分析查找故障,解决在实际设计中的问题,使设计好的电路能正常工作,为下一部结合实际的硬件系统设计准备条件。 2、实验要求: 基本要求: 1)用AD转换器采集输入信号,存入SRAM(例6264)芯片中, 2)进行DA转换后回放SRAM中的数据,通过模拟示波器显示。 3)利用键盘控制单步和连续慢放信号波形。 4)波形参数可以用数值或图形在数码管或LCD上显示,或者可以结合示波器进行图形回放显示。 发挥部分: 1)对采样数据平滑滤波处理, 2)对波形回放(图形)的时间缩放调节。 3)对回放波形(图形)的幅度缩放调节。 3

第二部分 实验工具及实验器件 1. Proteus7.7以及Keil 2软件的使用 Proteus软件是英国Labcenter electronics公司出版的EDA工具软件(该软件中国总代理为广州风标电子技术有限公司)。它不仅具有其它EDA工具软件的仿真功能,还能仿真单片机及外围器件。它是目前最好的仿真单片机及外围器件的工具。虽然目前国内推广刚起步,但已受到单片机爱好者、从事单片机教学的教师、致力于单片机开发应用的科技工作者的青睐。Proteus是世界上著名的EDA工具(仿真软件),从原理图布图、代码调试到单片机与外围电路协同仿真,一键切换到PCB设计,真正实现了从概念到产品的完整设计。是目前世界上唯一将电路仿真软件、PCB设计软件和虚拟模型仿真软件三合一的设计平台,其处理器模型支持8051、HC11、PIC10/12/16/18/24/30/DsPIC33、AVR、ARM、8086和MSP430等,2010年即将增加Cortex和DSP系列处理器,并持续增加其他系列处理器模型。在编译方面,它也支持IAR、Keil和MPLAB等多种编译器。 在PROTEUS绘制好原理图后,调入已编译好的目标代码文件:*.HEX,可以在PROTEUS的原理图中看到模拟的实物运行状态和过程。而*.HEX文件则由Keil软件编译后生成。 Keil uVision2是美国Keil Software公司出品的51系列兼容单片机C语言软件开发系统,使用接近于传统c语言的语法来开发,与汇编相比,C语言在功能上、结构性、可读性、可维护性上有明显的优势,因而易学易用,而且大大的提高了工作效率和项目开发周期,他还能嵌入汇编,您可以在关键的位置嵌入,使程序达到接近于汇编的工作效率。KEILC51标准C编译器为8051微控制器的软件开发提供了C语言环境,同时保留了汇编代码高效,快速的特点。C51编译器的功能不断增强,使你可以更加贴近CPU本身,及其它的衍生产品。C51已被完全集成到uVision2的集成开发环境中,这个集成开发环境包含:编译器,汇编器,实时操作系统,项目管理器,调试器。uVision2 IDE可为它们提供单一而灵活的开发环境。 Keil C51软件提供丰富的库函数和功能强大的集成开发调试工具,全Windows界面,使您能在很短的时间内就能学会使用keil c51来开发您的单片机应用程序。 另外重要的一点,只要看一下编译后生成的汇编代码,就能体会到Keil C51生成的目标代码效率非常之高,多数语句生成的汇编代码很紧凑,容易理解。在开发大型软件时更能体现高级语言的优势。 有了proteus和keil 我们就需要在这两个软件中建立我们所需要的工程进行实验,具体步骤如下: 第一步:在Keil2中建立一个新的工程,并命名, 第二步:选择使用的单片机芯片,我们选择80c51, 第三步:将新创建的.c文件添加到Target中。 这样我们就可以在keil2的环境下对单片机的程序进行编译和运行了。

2. 51单片机AT89c51 51单片机是对目前所有兼容Intel 8031指令系统的单片机的统称。该系列单片机的始祖是Intel的8031单片机,后来随着Flash rom技术的发展,8031 4

单片机取得了长足的进展,成为目前应用最广泛的8位单片机之一,其代表型号是ATMEL公司的AT89系列,它广泛应用于工业测控系统之中。目前很多公司都有51系列的兼容机型推出,在目前乃至今后很长的一段时间内将占有大量市场。51单片机是基础入门的一个单片机,还是应用最广泛的一种。需要注意的是52系列的单片机一般不具备自编程能力。 当前常用的51系列单片机主要产品有: *Intel的:80C31、80C51、87C51,80C32、80C52、87C52等; *ATMEL的:89C51、89C52、89C2051等; *Philips、华邦、Dallas、Siemens(Infineon)等公司的许多产品80C51单片机,它是8位高性能单片机。属于标准的MCS-51的HCMOS产品。它结合了HMOS的高速和高密度技术及CHMOS的低功耗特征,标准MCS-51单片机的体系结构和指令系统。80C51内置中央处理单元、128字节内部数据存储器RAM、32个双向输入/输出(I/O)口、2个16位定时/计数器和5个两级中断结构,一个全双工串行通信口,片内时钟振荡电路。但80C31片内并无程序存储器,需外接ROM。此外,80C51还可工作于低功耗模式,可通过两种软件选择空闲和掉电模式。在空闲模式下冻结CPU而RAM定时器、串行口和中断系统维持其功能。掉电模式下,保存RAM数据,时钟振荡停止,同时停止芯片内其它功能。80C51有PDIP(40pin)和PLCC(44pin)两种封装形式。 管脚说明: 8051芯片具有40根引脚,其引脚图如图所示:

40根引脚按其功能可分为四类: 1. 电源线2根 Vcc:编程和正常操作时的电源电压,接+5V。 Vss:地电平。 2. 晶振:2根 XTAL1:振荡器的反相放大器输入。使用外部震荡器是必须接地。 XTAL2:振荡器的反相放大器输出和内部时钟发生器的输入。当使用外部振荡器时用于输入外部振荡信号。 3. I/O口共有p0、p1、p2、p3四个8位口,32根I/O线,其功能如下: 5

1) P0.0~P0.7 (AD0~AD7) 是I/O端口O的引脚,端口O是一个8位漏极开路的双向I/O端口。在存取外部存储器时,该端口分时地用作低8位的地址线和8位双向的数据端口。(在此时内部上拉电阻有效) 2) P1.0~P1.7 端口1的引脚,是一个带内部上拉电阻的8位双向I/O通道,专供用户使用。 3) P2.0~P2.7 (A8~A15) 端口2的引脚。端口2是一个带内部上拉电阻的8位双向I/O口,在访问外部存储器时,它输出高8位地址A8~A15 4) P3.0~P3.7 端口3的引脚。端口3是一个带内部上拉电阻的8位双向I/O端口,该口的每一位均可独立地定义第一I/O口功能或第二I/O口功能。作为第一功能使用时,口的结构与操作与P1口完全相同,第二功能如下示: P3.0 RXD(串行输入口) P3.1 TXD(串行输出口) P3.2 (外部中断) P3.3 (外部中断) P3.4 T0(定时器0外部输入) P3.5 T1(定时器1外部输入) P3.6 (外部数据存储器写选通) P3.7 (外部数据存储器读选通)

3. 模数转换芯片ADC0804。 ADC0804的管脚图如下所示

它的主要电气特性如下: 工作电压:+5V,即VCC=+5V。 模拟输入电压范围:0~+5V,即0≤Vin≤+5V。