(论文)16X16点阵广告牌论文(2013年优秀毕业设计论文)_第1页
(论文)16X16点阵广告牌论文(2013年优秀毕业设计论文)_第2页
(论文)16X16点阵广告牌论文(2013年优秀毕业设计论文)_第3页
(论文)16X16点阵广告牌论文(2013年优秀毕业设计论文)_第4页
(论文)16X16点阵广告牌论文(2013年优秀毕业设计论文)_第5页
已阅读5页,还剩22页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第1章 绪论1.1课题背景1.1.1 单片机的基础知识 单片机结构包括:输入设备,运算器,输出设备,控制器,内存。1.1.2 单片机的产生与发展 1946年第一台计算机诞生 经历了电子管、晶体管、集成电路、大规模集成电路、超大规模集成电路的过程 计算机产生的目的:为了解决日益复杂的计算问题 如今,计算机已经深入到社会的各个领域 随着计算机的普及,计算机在不同的领域、不同的行业的应用。是计算机在结构上发生了深刻的变化,其表现在以下几个方面: (1)针对控制领域的特点,即高可靠性,灵活的控制能力,再加上要求体积小、价格低。出现了将微处理器与外围器件集成在一块芯片上计算机单片机(single-chip Microcomputer)。它具有灵活的指令系统和位处理能力,抗干扰能力强,功耗低。由于它主要用于控制领域,例如,智能控制设备与仪表机电一体化产品,家电产品等。因此又叫Microcontroling unit.(MCU) (2)针对信号处理过程中需要大量的复杂计算,例如,语音、图像的处理,编解码处理。信号的提取与恢复等,出现了以密集型计算见长的单片机,即DSP(Digital signal Processor). (3)满足功能多样化的目的,将微处理器,半导体存贮器,I/O接口和中断电路及装在一块印刷电路板上,或几块电路板上,形成单板机或多板机,再加上外设和系统软件,就构成了通用的PC机。 单片机和PC机在结构上的区别: PC机采用了Ven Neumann结构 DSP采用了Havard结构 MCU采用类似Havard结构单片机的发展历史、趋势历史: 1974年12月,美国仙童(Fairchild)公司推出了世界上第一台8位单片机F8。单片机的发展过程分为以下几个发展阶段。 第一代单片机(19741976年) 单片机发展的起步阶段。集成度也较低,并且采用了双片形式。 代表产品有Fairchild公司的F8和Mostek公司的3870等。 第二代单片机(19761978年) 是单片机的发展阶段。 最典型的产品有Intel公司的MCS-48系列单片机。 第三代单片机(1979一1982年) 是8位单片机的成熟阶段。 代表产品有Intel公司的MCS-51系列机、Motorola公司的MC6801系列机、Zilog公司的Z8系列机等。 第四代单片机(1983年以后)1983年以后是16位单片机和8位高性能单片机并行发展的时代。趋势:目前,单片机正朝着高速度、高性能和多品种方向发展,单片机的发展趋势具体体现在以下四个方面:(1)位、位、位、位单片机共存,并各有自己的生存空间。(2) CPU功能不断增强、运行不断速度提高。(3)内部资源增多,增加存储器容量、片内外设如AD、DA、LEDLCD驱动、DMA、PWM、WDT 。()引脚的多功能化 ()低电压和低功耗 ()结合ASIC和RISC技术,使单片机的应用范围进一步扩大。1.1.3 单片机的应用 单片机具有集成度高、结构简单、可靠性高、控制功能强、应用灵活方便和价格低等优点,因此广泛应用于国民经济的各个领域。单片机的应用提高了机电设备的技术水平和自动化程度,对各行各业的技术改造和产品更新换代起到了重要的推动作用。 1单片机特别适用于机、电、仪一体的智能产品 (1)单片机在日常生活中的应用 (2)单片机在数据处理方面的应用 (3)单片机在智能化的仪器仪表中应用 2单片机在工业控制中的应用 单片机成功地应用于玩具、游戏机、无绳电话、充电器、按摩器、IC卡电话、IC卡水表、IC卡煤气表、IC卡电度表、流量温控仪表、家庭自动化、电子锁、电子秤、步进电机、防盗报警、电子日历时钟等这些日常生活的产品中。 图形终端、彩色黑白复印机、软盘及硬盘驱动器、磁带机、打印机的内部都采用单片机进行控制。 在各类仪器仪表中(包括医疗器械、色谱仪、温度、湿度、流量、流速、电压、频率、功率、厚度、角度、长度、硬度、元素测定等)引入单片机,使仪器仪表数字化、智能化、微型化,功能大大提高 3单片机在通讯方面的应用 例如:电视机,人造卫星,手机,收音机,电话,等等。1.1.4 单片机的主要生产厂家和机型 目前世界上比较著名的部分8位单片机的生产厂家和部分主要机型如下:Intel(美国英特尔)公司:MCS-51/96及其增强型列。NS(美国国家半导体)公司:NS8070系列。RCA(美国无线电)公司:CDP1800系列。TI(美国得克萨斯仪器仪表)公司:TMS700系列。Cypress(美国Cypress半导体)公司:CYXX系列。Rockwell(美国洛克威尔)公司:6500系列。Motorola(美国摩托罗拉)公司:6805系列。Fairchild(美国仙童)公司:FS系列及3870系列。Zilog(美国齐洛格)公司:Z8系列及SUPER8系列。Atmel(美国 Atmel)公司:AT89系列。National(日本松下)公司:MN6800系列。Hitachi(日本日立)公司:HD6301、HD65L05、HD6305系列。NEC(日本电气)公司:UCOM87、(UPD7800)系列。Philips(荷兰菲利浦)公司:P89C51XX系列。 其中INTEL公司的MCS-51系列及其增强型系列在意位单片机市中占的份额最大,达50%左右。PIC单片机: 是MICROCHIP公司的产品,其突出的特点是体积小,功耗低,精简指令集,抗干扰性好,可靠性高,有较强的模拟接口,代码保密性好,大部分芯片有其兼容的FLASH程序存储器的芯片. EMC单片机:是台湾义隆公司的产品,有很大一部分与PIC 8位单片机兼容,且相兼容产品的资源相对比PIC的多,价格便宜,有很多系列可选,但抗干扰较差. ATMEL单片机(51单片机):ATMEl公司的8位单片机有AT89、AT90两个系列,AT89系列是8位Flash单片机,与8051系列单片机相兼容,静态时钟模式;AT90系列单片机是增强RISC结构、全静态工作方式、内载在线可编程Flash的单片机,也叫AVR单片机. PHLIPIS 51PLC系列单片机(51单片机):PHILIPS公司的单片机是基于80C51内核的单片机,嵌入了掉电检测、模拟以及片内RC振荡器等功能,这使51LPC在高集成度、低成本、低功耗的应用设计中可以满足多方面的性能要求. HOLTEK单片机:台湾盛扬半导体的单片机,价格便宜,种类较多,但抗干扰较差,适用于消费类产品. TI公司单片机(51单片机):德州仪器提供了TMS370和MSP430两大系列通用单片机.TMS370系列单片机是8位CMOS单片机,具有多种存储模式、多种外围接口模式,适用于复杂的实时控制场合;MSP430系列单片机是一种超低功耗、功能集成度较高的16位低功耗单片机,特别适用于要求功耗低的场合。1.2 MCS-51系列单片机介绍1.2.1 MCS-51 单片机的基本组成 MCS-51单片机芯片有许多种: 如8051、8031、8751、80C51、80C31等。 它由8个部件组成, 1、中央处理器(CPU)核心 2、时钟电路 12MHz 3、程序存储器(ROM/EPROM) 4KB 4、数据存储器(RAM) 128B+128B SFR 5、并行I/O口(P0P3口)P0和P2兼作外总线 6、串行口 全双工串行口 7、定时器/计数器 2个16位 8、中断系统 5个中断源,高级和低级两级优先级别 它们都是通过单一总线连接,并被集成在一块半导体芯片上,为单片微型计算机(Single-Chip Microcomputer) Microcontroling unit1.2.2 MCS-51单片机的应用特性 由于MCS-51系列单片机具有体积小、功能全、价廉、面向控制、应用软件丰富、技术在不断更新、开发应用方便等优点,可以适应各个应用领域的不同需要,因而具有极强的竞争力和生命力,应用前景广阔。今后它仍将是科技界、工业界广泛选择应用的8位微控制器,仍将是单片机应用的主流机种。各高校实验室大多都配备了MCS-51系统仿真实验装置。所以,它今后仍将是高等院校教材的首选内容之一。.1.2.3 MCS-51单片机系列 两大系列:MCS-51子系列和MCS-52子系列。其中51子系列是基本型,而52子系列属于增强型。 各子系列配置如表2-1所示。(P46) 片内ROM形式 51 无 ROM EPROM 子 8031 8051 8751 系统 80C31 80C51 87C51 52子 8032 8052 8752 系统 80C32 80C52 87C521.2.4 MCS-51系列单片机基本特性 51单片机的概述: 21世纪,以计算机为代表的IT产业迅速发展,各类计算机的应用在工业、农业、国防、科研及日常生活等领域发挥着越来越重要的作用,成为当今世界各国工业发展水平的重要标志之一,从世界上第一台电子计算机问世以来,计算机的发展日新月异,在短短的几十年间,已由电子管数字计算机发展到今天的超大规模集成电路计算机,运算速度由5000次每秒提高到今天的上百亿次每秒。计算机的发展一方面向着高速、智能化的巨型机方向发展,另一边向着微型机方向发展。作为微型机的一个分支单片机,由于其具有体积小。功耗低这两个特点,使单片机在工业控制、智能仪表、通信系统、家用电器、智能玩具以及LED显示控制屏方面得到越来越广泛的应用。51单片机起源于Intel公司20世纪80年代初推出的MCS-51系类单片机,MCS-8051是其中最基础的单片机型号。经过近30年的发展,现在Philips,Dallas,Siemens,Atmel,华邦、LG和RAMTRON等公司都以MCS-51中的8051内核为基本结构,并推出了许多各具特色,用途不同的单片机。习惯上把这些以8051为内核推出的各种型号的兼容型单片机统称为51单片机。1.3仿真机系统简介 Keil C51是美国Keil Software公司出品的51系列兼容单片机C语言软件开发系统,与汇编相比,C语言在功能上、结构性、可读性、可维护性上有明显的优势,因而易学易用。用过汇编语言后再使用C来开发,体会更加深刻。1.3.1系统概述 Keil C51软件提供丰富的库函数和功能强大的集成开发调试工具,全Windows界面。另外重要的一点,只要看一下编译后生成的汇编代码,就能体会到Keil C51生成的目标代码效率非常之高,多数语句生成的汇编代码很紧凑,容易理解。在开发大型软件时更能体现高级语言的优势。下面详细介绍Keil C51开发系统各部分功能和使用。 1.3.2 Keil C51单片机软件开发系统的整体结构 C51工具包的整体结构,uVision与Ishell分别是C51 for Windows和for Dos的集成开发环境(IDE),可以完成编辑、编译、连接、调试、仿真等整个开发流程。开发人员可用IDE本身或其它编辑器编辑C或汇编源文件。然后分别由C51及C51编译器编译生成目标文件(.OBJ)。目标文件可由LIB51创建生成库文件,也可以与库文件一起经L51连接定位生成绝对目标文件(.ABS)。ABS文件由OH51转换成标准的Hex文件,以供调试器dScope51或tScope51使用进行源代码级调试,也可由仿真器使用直接对目标板进行调试,也可以直接写入程序存贮器如EPROM中。 使用独立的Keil仿真器时,注意事项 * 仿真器标配11.0592MHz的晶振,但用户可以在仿真器上的晶振插孔中换插其他频率的晶振。 * 仿真器上的复位按钮只复位仿真芯片,不复位目标系统。 * 仿真芯片的31脚(/EA)已接至高电平,所以仿真时只能使用片内ROM,不能使用片外ROM;但仿真器外引插针中的31脚并不与仿真芯片的31脚相连,故该仿真器仍可插入到扩展有外部ROM(其CPU的/EA引脚接至低电平)的目标系统中使用。 Keil C51生成的目标代码效率非常之高,多数语句生成的汇编代码很紧凑,容易理解。在开发大型软件时更能体现高级语言的优势。优点:Keil C51生成的目标代码效率非常之高,多数语句生成的汇编代码很紧凑,容易理解。在开发大型软件时更能体现高级语言的优势。版本目前keil的版本已经出到keil uVision4。keil软件常与proteus仿真软件相配合使用。第2章 系统硬件设计 本16x16汉字连续显示点阵采用以AT89C51单片机为核心芯片的电路来实现,主要由AT89C51芯片、时钟电路、复位电路、列扫描驱动电路(74HC154)、1616 LED点阵5部分组成,利用AT89S51单片机、三极管放大电路和1616LED显示屏,制作汉字显示广告牌。要求汉字连续向左滚动。显示多个汉字。利用按钮开关,可改变显示汉字内容。图1工作原理图 图1工作原理:LED显示屏控制系统实现显示信息的刷新技术有动态扫描和静态锁存两种方式。方案一:动态扫描,即一行发光二极管共用一行驱动寄存器,根据共用一行驱动寄存器的发光二极管像素数目,分为1/4,1/16扫描等;方案二:静态锁存,即每一个发光一极管都对应有一个驱动寄存器,无需时分工作,从而保证了每一个发光一极管的亮度占空比为100%;动态扫描法可以大大减少控制器的I/O口,不但符合本设计的要,求而且应用较广,因此选用方案一。LED显示屏的数据传输方式主要有串行和并行两种。日前普遍采用串行控制技术,显示屏每个单元内部的不同驱动电路和各级联单元之间,每个时钟仅传送一位数据。采用这种方式的驱动IC种类较多,不同显示单元之间的联线较少,可减少显示单元的数据传输驱动元件,从而提高整个系统的可靠性和性价比,具体工程实现也较为容易。因此本设计采用串行控制技术。2.1 基本电路 2.1.1 复位电路 图2 单片机在启动时都需要复位,以使CPU及系统各部件处于确定的初始状态,并从初态开始工作。89系列单片机的复位信号是从RST引脚输入到芯片内的施密特触发器中的。当系统处于正常工作状态时,且振荡器稳定后,如果RST引脚上有一个高电平并维持2个机器周期(24个振荡周期)以上,则CPU就可以响应并将系统复位。单片机系统的复位方式有:手动按钮复位和上电复位。本次采用的是手动复位。动按钮复位需要人为在复位输入端RST上加入高电平(图1)。一般采用的办法是在RST端和正电源Vcc之间接一个按钮。当人为按下按钮时,则Vcc的+5V电平就会直接加到RST端。手动按钮复位的电路如所示。由于人的动作再快也会使按钮保持接通达数十毫秒,所以,完全能够满足复位的时间要求。2.1.2 晶振电路 图3 每个单片机系统里都有晶振,全程是叫晶体震荡器,在单片机系统里晶振的作用非常大,他结合单片机内部的电路,产生单片机所必须的时钟频率,单片机的一切指令的执行都是建立在这个基础上的,晶振的提供的时钟频率越高,那单片机的运行速度也就越快。 晶振用一种能把电能和机械能相互转化的晶体在共振的状态下工作,以提供稳定,精确的单频振荡。在通常工作条件下,普通的晶振频率绝对精度可达百万分之五十。高级的精度更高。有些晶振还可以由外加电压在一定范围内调整频率,称为压控振荡器(VCO)。 晶振的作用是为系统提供基本的时钟信号。通常一个系统共用一个晶振,便于各部分保持同步。有些通讯系统的基频和射频使用不同的晶振,而通过电子调整频率的方法保持同步。 晶振通常与锁相环电路配合使用,以提供系统所需的时钟频率。如果不同子系统需要不同频率的时钟信号,可以用与同一个晶振相连的不同锁相环来提供。2.1.3 电源电路 图4输出+5V直流电压的稳压电源电路。2.1.4 硬件设计电路原理图 图52.2 单片机的选用根据上述硬件原理图,本系统预计采用AT89S51单片机。2.2.1 AT89S51单片机结构框图及引脚 AT89S51是一个低功耗,高性能CMOS 8位单片机,片内含4k Bytes ISP(In-system programmable)的可反复擦写1000次的Flash只读程序存储器,器件采用ATMEL公司的高密度、非易失性存储技术制造,兼容标准MCS-51指令系统及80C51引脚结构,芯片内集成了通用8位中央处理器和ISP Flash存储单元,功能强大的微型计算机的AT89S51可为许多嵌入式控制应用系统提供高性价比的解决方案。AT89S51具有如下特点:40个引脚,4k Bytes Flash片内程序存储器,128 bytes的随机存取数据存储器(RAM),32个外部双向输入/输出(I/O)口,5个中断优先级2层中断嵌套中断,2个16位可编程定时计数器,2个全双工串行通信口,看门狗(WDT)电路,片内时钟振荡器。 此外,AT89S51设计和配置了振荡频率可为0Hz并可通过软件设置省电模式。空闲模式下,CPU暂停工作,而RAM定时计数器,串行口,外中断系统可继续工作,掉电模式冻结振荡器而保存RAM的数据,停止芯片其它功能直至外中断激活或硬件复位。同时该芯片还具有PDIP、TQFP和PLCC等三种封装形式,以适应不同产品的需求。AT89S51单片机的基本结构和外部引脚如图6所示图6 AT89S51引脚图AT89S51单片机的各引脚功能如下:VCC:供电电压。GND:接地。P0口:P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。当P1口的管脚第一次写1时,被定义为高阻输入。P0能够用于外部程序数据存储器,它可以被定义为数据/地址的低八位。在FIASH编程时,P0 口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须被拉高。P1口:P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。在FLASH编程和校验时,P1口作为低八位地址接收。P2口:P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。并因此作为输入时,P2口的管脚被外部拉低,将输出电流。这是由于内部上拉的缘故。P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。P2口在FLASH编程和校验时接收高八位地址信号和控制信号。P3口:P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。P3.0 RXD(串行输入口)P3.1 TXD(串行输出口)P3.2 /INT0(外部中断0)P3.3 /INT1(外部中断1)P3.4 T0(记时器0外部输入)P3.5 T1(记时器1外部输入)P3.6 /WR(外部数据存储器写选通)P3.7 /RD(外部数据存储器读选通)P3口同时为闪烁编程和编程校验接收一些控制信号。I/O口作为输入口时有两种工作方式即所谓的读端口与读引脚读端口时实际上并不从外部读入数据而是把端口锁存器的内容读入到内部总线经过某种运算或变换后再写回到端口锁存器只有读端口时才真正地把外部的数据读入到内部总线上面图中的两个三角形表示的就是输入缓冲器CPU将根据不同的指令分别发出读端口或读引脚信号以完成不同的操作这是由硬件自动完成的不需要我们操心1然后再实行读引脚操作否则就可能读入出错为什么看上面的图如果不对端口置1端口锁存器原来的状态有可能为0Q端为0Q为1加到场效应管栅极的信号为1该场效应管就导通对地呈现低阻抗,此时即使引脚上输入的信号为1也会因端口的低阻抗而使信号变低使得外加的1信号读入后不一定是1若先执行置1操作则可以使场效应管截止引脚信号直接加到三态缓冲器中实现正确的读入由于在输入操作时还必须附加一个准备动作所以这类I/O口被称为准双向口89S51的P0/P1/P2/P3口作为输入时都是准双向口接下来让我们再看另一个问题从图中可以看出这四个端口还有一个差别除了P1口外P0P2P3口都还有其他的功能 RST:复位输入。当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。ALE/PROG:当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。在FLASH编程期间,此引脚用于输入编程脉冲。在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。因此它可用作对外部输出的脉冲或用于定时目的。然而要注意的是:每当用作外部数据存储器时,将跳过一个ALE脉冲。如想禁止ALE的输出可在SFR8EH地址上置0。此时, ALE只有在执行MOVX,MOVC指令是ALE才起作用。另外,该引脚被略微拉高。如果微处理器在外部执行状态ALE禁止,置位无效。/PSEN:外部程序存储器的选通信号。在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。/EA/VPP:当/EA保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。注意加密方式1时,/EA将内部锁定为RESET;当/EA端保持高电平时,此间内部程序存储器。在FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。XTAL1:反向振荡放大器的输入及内部时钟工作电路的输入。XTAL2:来自反向振荡器的输出。2.2.2 AT89S51单片机主要功能部件 8位的CPU,8031 CPU与MCS-51 兼容 4K字节可编程FLASH存储器(寿命:1000写/擦循环) 全静态工作:0Hz-24KHz 三级程序存储器保密锁定 128*8位内部RAM 32条可编程I/O线 两个16位定时器/计数器 6个中断源 可编程串行通道 低功耗的闲置和掉电模式 片内振荡器和时钟电路第三章 系统电路设计3.1 74LS154 是将4 个二进制编码输入译成16 个彼独立的输出之一 将数据从一个输入线分配到16 个输出的任意一个而实现解调功能 输入箝位二极管简化了系统设计 与大部分TTL 和DTL电路完全兼容 原理:这种单片4 线16 线译码器非常适合用于高性能存储器的译码器。当两个选通输入G1 和G2 为低时, 它可将4 个二进制编码的输入译成16 个互相独立的输出之一。实现解调功能的办法是:用4 个输入线写出输出线的地址,使得在一个选通输入为低时数据通过另一个选通输入。当任何一个选通输入是高时,所有输出都为高。引脚图及逻辑图(图8) 图8功能表:A、B、C、D 译码地址输入端(低电平有效)G1、G2 选通端(低电平有效)015 输出端(低电平有效) 说明:H高电平 L低电平 X任意3.2稳压芯片概述稳压芯片H7805 系列为 3 端正稳压电路,TO-220 封装,能提供多种固定的输出电压,应用范围广。内含过流、过热和过载保 护电路。带散热片时,输出电流可达 1A。虽然是固定稳压电 路,但使用外接元件,可获得不同的电压和电流。外形图及引脚排列如图3.16所示。 图9它的主要特点:输出电流可达 1A输出电压有:5V过热保护短路保护输出晶体管 SOA 保护功能框图如图10所示。 图103.3 8X8点阵显示模块的硬件设计及工作原理8X8LED点阵显示模块是LED显示屏设计的关键部分,共阴和共阳接法设计的好坏直接关系到LED显示屏的亮度,稳定度等重要指标。图11为8X8点阵LED外观及引脚图,其等效电路如图12所示,只要其对应的X、Y轴顺向偏压,即可使LED发亮。例如,如果想使左上角LED发亮,则Y0=1,X0=0即可。应用时限电阻可以放在X轴或Y轴。图11 图12 8X8点阵显示器内部结构图第4章 系统软件设计4.1 各功能模块软件程序设计4.1.1 控制系统总体程序框图 4.2具体程序在16x16点阵显示“开心每一天” ORG 0000HSTART: MOV A,#00H ;开机初始化,清除画面 MOV P1,A ;清除P0口 ANL P2,#00H ;清除P2口 MOV R2,#200 D1: MOV R3,#0F8H DJNZ R3,$ DJNZ R2,D1 MOV 20H,#00H ;取码指针的初值L1: MOV R1,#80 ;每个字的停留时间L2: MOV R6,#16 ;每个字16个码 MOV R4,#00H ;扫描指针清零 MOV R0,20H ;取码指针存入R0L3: MOV A,R4 ;扫描指针存入A MOV P3,A ;扫描输出 INC A ;扫描指针加1,扫描下一个 RL A RL A MOV R4,A MOV A,R0 MOV DPTR,#TABLE ;取数据表的上半部分的代码 MOVC A,A+DPTR CPL A MOV R7,A MOV P1,A ; 输出到P1 INC R0 ;取码指针加1,取下一个码 MOV A,R0 MOV DPTR,#TABLE ;取数据表下半部份的代码 MOVC A,A+DPTR CPL A MOV R7,A MOV P2,A ;输出到P2口 INC R0 MOV R3,#02H D2: MOV R5,#0F8H DJNZ R5,$ DJNZ R3,D2 MOV A,#00H MOV P1,A ANL P2,#00H DJNZ R6,L3 ;一个字16个码是否完成? DJNZ R1,L2 ;每个字的停留时间是否到了? MOV 20H,R0 ;取码指针存入20H MOV A,R7 CJNE A,#1BH,L1 JMP START ;反复循环TABLE :DB 00H,00H,00H,00H,00H,00H,00H,00HDB 00H,00H,00H,00H,00H,00H,00H,00HDB 00H,00H,00H,00H,00H,00H,00H,00HDB 00H,00H,00H,00H,00H,00H,00H,00HDB 01H,00H,41H,01H,41H,02H,41H,0CHDB 7FH,0F0H,41H,00H,41H,00H,41H,00HDB 41H,00H,41H,00H,7FH,0FFH,41H,00HDB 41H,00H,41H,00H,01H,00H,00H,00HDB 00H,08H,00H,30H,01H,0C0H,00H,00HDB 00H,00H,07H,0FCH,40H,02H,20H,02HDB 18H,02H,00H,02H,00H,02H,00H,1EHDB 02H,00H,01H,80H,00H,70H,00H,00HDB 04H,80H,08H,80H,30H,0F8H,0CFH,88HDB 48H,88H,48H,88H,4AH,0A8H,49H,98HDB 48H,8AH,48H,89H,48H,8AH,4FH,0FCHDB 40H,88H,40H,88H,00H,80H,00H,00HDB 01H,00H,01H,00H,01H,00H,01H,00HDB 01H,00H,01H,00H,01H,00H,01H,00HDB 01H,00H,01H,00H,01H,00H,01H,00HDB 01H,00H,01H,00H,01H,00H,00H,00HDB 02H,01H,02H,01H,42H,02H,42H,04HDB 42H,08H,42H,30H,42H,0C0H,7FH,00HDB 42H,0C0H,42H,30H,42H,08H,42H,04HDB 42H,02H,02H,01H,02H,01H,00H,00HDB 00H,00H,00H,00H,00H,00H,00H,00HDB 00H,00H,00H,00H,00H,00H,00H,00HDB 00H,00H,00H,00H,00H,00H,00H,00HDB 00H,00H,00H,00H,00H,00H,00H,00HEND 第五章 系统软硬件联合调试5.1 系统调试软件Keil C51使用Keil C51的开发工具,其项目开发周期和其他软件开发项目都大致一样,要按下列步骤编程:创建C或汇编语言的源程序;编译或汇编源文件运算符;纠正源文件中的错误;从编译器和汇编器连接目标文件;测试连接的应用程序。Keil C51给用户提供了下列主要开发工具:C51优化编译器;8051工具连接器;目标文件转换器库管理器;Windows版dScope源程序级调试/模拟器;Windows版Vision集成开发环境。 Keil C51不但可以仿真模拟一般的程序运行,同时还可以仿真模拟I/O口、定时/计数器、串行口及中断等单片机特有的功能部件,其功能非常强大。5.1.1 Keil c51主界面及菜单功能启动Keil C51时的屏幕。进入Keil C51后,几秒钟后出现编辑界。5.1.2 程序的调入及调试进入Keil C51后的编辑界面(1)建立一个新项目单击项目菜单,在弹出的下拉菜单中选中新项目选项如图4. 2图4.2 新建项目(2)然后选择你要保存的路径,输入工程文件的名字,比如保存到C51目录里,工程文件的名字为C51。如然后点击保存。(3)这时会弹出一个对话框,要求你选择单片机的型号,你可以根据你使用的单片机来选择,keil c51几乎支持所有的51核的单片机,我这里还是以大家用的比较多的Atmel的AT89c51来说明,如图4.3所示,选择AT89c52之后,右边一栏是对这个单片机的基本的说明,然后点击确定。图4.3选择芯片(4) 单击“文件”菜单,再在下拉菜单中单击“新建”选项。此时光标在编辑窗口里闪烁,这时可以键入用户的应用程序了。注意,如果用语言编写程序,保存时则扩展名为(.c);如果用汇编语言编写程序保存时则扩展名必须为(.asm)。(5) 用鼠标对准项目工作区的目标1,点击右键在弹出的菜单中选择“为目标目标1设置选项”。在为“为目标目标1设置选项”中,点击“调试”菜单,在此菜单中可选择使用硬件仿真还是软件仿真,若

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论