9 单片机的外围接口
单片机应用技术(c语言版 第3版)[王静霞]_习题答案
习题 11.1 单项选择题(1) A (2)C (3)C1.2 填空题(1)硬件系统、软件系统(2)时钟电路、复位电路(3)XTAL1、XTAL2、RESET、EA(4)晶振1.3 问答题什么是单片机?它由哪几部分组成?什么是单片机应用系统?答:单片微型计算机(Single Chip Microcomputer)简称单片机,是指集成在一个芯片上的微型计算机,它的各种功能部件,包括CPU(Central Processing Unit)、存储器(memory)、基本输入/输出(Input/Output,简称I/O)接口电路、定时/计数器和中断系统等,都制作在一块集成芯片上,构成一个完整的微型计算机。
单片机应用系统是以单片机为核心,配以输入、输出、显示等外围接口电路和控制程序,能实现一种或多种功能的实用系统。
1.4 上机操作题(1)参考程序:#include <reg51.h> //包含头文件reg51.h,定义了51单片机的专用寄存器//函数名:delay//函数功能:实现软件延时//形式参数:无符号整型变量i,控制空循环的循环次数//返回值:无void delay(unsigned int i) //延时函数{unsigned int k;for(k=0;k<i;k++);}void main() //主函数{while(1){P1=0x00;delay(20000); //调用延时函数,实际参数为20000P1=0xff;delay(20000); //调用延时函数,实际参数为20000}}(2)参考程序:#include <reg51.h> //包含头文件reg51.h,定义了51单片机的专用寄存器//函数名:delay//函数功能:实现软件延时//形式参数:无符号整型变量i,控制空循环的循环次数//返回值:无void delay(unsigned int i) //延时函数{unsigned int k;for(k=0;k<i;k++);}void main() //主函数{while(1){P1=0x55;delay(20000); //调用延时函数,实际参数为20000P1=0xff;delay(20000); //调用延时函数,实际参数为20000}}习题 22.1 单项选择题(1)C (2)A (3)A (4)A (5)A (6)D (7)C (8)A (9)A (10)C 2.2 填空题(1)外部程序存储器、外部数据存储器、内部程序存储器、内部数据存储器(2)程序存储器(3)工作寄存器组、位寻址区、用户RAM(4)1us、2us(5)按键复位、上电复位(6)2、高2.3 回答题(1)P3口的第二功能是什么?答:P3口各引脚的第二功能如下表。
单片机输入输出接口
P3.4/T0 14
P3.5/T1 15
P3.6/WR 16
P3.7/RD 17
XTAL2 18
XTAL1 19
GND 20
40 Vcc 39 P0.0 38 P0.1 37 P0.2 36 P0.3 35 P0.4 34 P0.5 33 P0.6 32 P0.7 31 EA 30 ALE 29 PSEN 28 P2.7 27 P2.6 26 P2.5 25 P2.4
/*“HELLO”的段码, 最高位送
uchar i; uint j; while(1) { P3=0x01; for(i=0;i<5;i++) { if(P17==1)P1=tab1[i]; else P1=tab2[i]; P3<<=1; for(j=0;j<=25000;j++);
}}} 课本习题5.8 *关于液晶显示
归纳四个并行口使用的注意事项如下:
1。如果单片机内部有程序存贮器,不需要扩展外 部存贮器和I/O接口,单片机的四个口均可作 I/O口使用。
2。四个口在作输入口使用时,均应先对其写 “1”,以避免误读。
3。P0口作I/O口使用时应外接10K的上拉电阻,其 它口则可不必。
4。P2可某几根线作地址使用时,剩下的线不能作 I/O口线使用。
用作地址/数据复用总线时,多路开关的控制 信号为1,输出与上方的地址/数据线反向器的输出 相连,由于控制信号为1,上面的场效应管受地址/ 数据信号控制,与下面的场效应管成为推挽输出 形态。外部不再需要上拉电阻,P0口为真正的双 向I/O口。
操作过程:假如要读外部程序存储器中 0x1245单元的指令,首先从P0口输出45H,P2口 输出12H,控制器输出ALE地址锁存信号,再发出 指令输出允许信号PSEN,外部程序存储器 0x1245单元的内容出现在总线上,由CPU读入程 序指令寄存器,译码执行。
嵌入式CPU外围接口电路的CPLD实现
嵌入式CPU 外围接口电路的CPLD 实现ΞA CPLD R ealization of Embedded CPU Peripheral I/O I nterface段可博,贾建援,王卫东(西安电子科技大学机电工程学院 陕西西安710071)【摘 要】 介绍了一种采用CP LD 实现嵌入式CPU 外围电路的方法,将数据总线、译码单元、分频电路及逻辑电路集成于一片CP LD ,大大缩小了印制板的面积并提高了系统可靠性,同时,由于CP LD 的现场可编程特性,整个系统的灵活性显著增强。
关键词:CP LD ,嵌入式CPU ,外围接口【Abstract 】 A realization of embedded CPU peripheral I/O interface based on CP LD is presented in the pa 2per.It integrates data bus ,coding unit ,frequency division unit and logic circuit into a single CP LD chip ,and dra 2matically decreases the area of PC B and increases system reliability ,at the same time the whole system ’s flexibility has been evidently im proved because of the CP LD ’s in 2system programmable characteristic.K eyw ords :CP LD ,embedded CPU ,peripheral I/O interface1 引 言在传统的单片机应用系统中,当需要扩展大量的I/O 时,通常用多片74HC373、82C55等接口芯片及74HC04、74HC06等逻辑门芯片来完成。
AT89C51单片机与PC机串行通信的接口实现
AT89C51单片机与PC机串行通信的接口实现[摘要] 本文介绍了AT89C51单片机与PC机采用RS232C标准进行串行通信的接口实现。
在接口中采用MAX232作电平转换电路,简单的通信协议,PC 机用VB编程,AT89C51单片机采用中断收发方式。
文章给出了相应通信接口电路与程序。
[关键词] 通信协议RS232C 通信接口电路通信接口程序AT89C51是一种带4K字节可编程可擦除只读存储器(FLASH FPEROM)和128字节的存取数据存储器(RAM)的低电压,高性能CMOS8位微处理器。
采用了ATMEL公司的高密度、不容易丢失存储技术,与MCS-51系列的单片机兼容。
具有集成程度高、系统结构简单、价格低廉等优点被广泛应用到控制领域中。
但是在复杂的数据处理、良好的人机交互等方面不能满足需要,常采用PC 机与AT89C51单片机进行通信,AT89C51单片机(下位机)实时采集数据传送给PC机(上位机)处理,然后接收PC机处理的结果,并进行相应的控制的方式来弥补。
本文介绍单片机与PC机进行串行通信的一种接口实现。
一、接口电路的设计(一)接口逻辑电平的转换在PC机系统大都装有异步通信适配器,为标准的RS-232C接口。
RS-232C 为负逻辑,用+3V~+15V表示逻辑“0”, 用-3V~-15V表示逻辑“1”。
AT89C51单片机采用正逻辑TTL电平0和+5V.所以AT89C51与PC机通信时必须进行电平转换。
转换的方法有多种。
常采用MAXIM公司生产的专用的双向电平转换集成电路MAX232。
MAX232引脚排列与外围电路如图1所示。
图1MAX引脚及外围接口图(二)通信接口电路本文采用可靠性高的MAX232作电平转换芯片,选择其中一对发送器与接收器,PC机的串行口与MAX232的电平端口相连,MAX232的逻辑电平端口与单片机的串行口相连,接口电路如图2所示。
图2PC机与AT89C51通信接口图二、通信接口程序(一)通信协议PC机与AT89C51进行通信必须有一定的通信协议,本文采用简单的通信协议。
Keil 的辅助工具和部份高级技巧
Keil 的辅助工具和部份高级技巧在前面的几讲中我们介绍了工程的建立方法,常用的调试方法,除此之外,Keil 还提供了一些辅助工具如外围接口、性能分析、变量来源分析、代码作用分析等,帮助我们了解程的性能、查找程序中的隐藏错误,快速查看程序变量名信息等,这一讲中将对这些功工具作一介绍,另外还将介绍Keil 的部份高级调试技巧。
一、辅助工具这部份功能并不是直接用来进行程序调试的,但可以帮助我们进行程序的调试、程序性能的分析,同样是一些很有用的工具。
1、外围接口为了能够比较直观地了解单片机中定时器、中断、并行端口、串行端口等常用外设的使用情况,Keil 提供了一些外围接口对话框,通过Peripherals 菜单选择,该菜单的下拉菜单内容与你建立项目时所选的CPU 有关,如果是选择的89C51 这一类“标准”的5 1 机,那么将会有Interrupt(中断)、I/O Ports(并行I/O 口)、Serial(串行口)、Timer(定时/计数器)这四个外围设图 1 外围设备之并行端口备菜单。
打开这些对话框,列出了外围设备的当前使用情况,各标志位的情况等,可以在这些对话框中直观地观察和更改各外围设备的运行情况。
下面我们通过一个简单例子看一看并行端口的外围设备对话框的使用。
例4:MOV A,#0FEHLOOP: MOV P1,ARL ACALL DELAY ;延时100 毫秒JMP LOOP其中延时100 毫秒的子程序请自行编写。
编译、连接进入调试后,点击Peripherals->I/O-Ports->Port 1 打开,如图1 所示,全速运行,可以看到代表各位的勾在不断变化(如果看不到变化,请点击View->Periodic Window Updata),这样可以形象地看出程序执行的结果。
注:如果你看到的变化极快,甚至看不太清楚,那么说明你的计算机性能好,模拟执行的速度快,你可以试着将加长延时程序的时间以放慢速度。
基于嵌入式ARM9的USB设计与实现
基于嵌入式ARM9的USB设计与实现引言USB(Universal Serial Bus)是通用串行总线的缩写,因其具有方便易用,动态分配带宽,容错性优越和高性价比等特点,现已成为计算机的主流接口。
随着嵌入式系统的广泛应用,各种小型终端需要开发出与外界联系的USB 接口。
目前,常用的技术有两种。
基于单片机的USB接口,特点是需要外置芯片,电路复杂,留下的CPU资源不多;基于ARM的USB接口,特点是资源丰富,但ARM系列产品较多,如果选型不当,还需要搭接较多的外围电路,且不能很好地发挥CPU性能。
1 USB 接口原理USB1.1 规范[1]将USB 分为5 部分:控制器、控制器驱动程序、USB 芯片驱动程序、USB设备以及针对不同USB 设备的客户端驱动程序。
(1) 控制器(Host Controller)主要负责执行由控制器驱动程序发出的命令。
(2) 控制器驱动程序(Host Controller Driver), 在控制器与USB 设备间建立通信管道(Pipe)。
(3) USB 驱动程序(USB Driver),提供对不同USB 设备及芯片的支持。
(4) USB 设备(USB Device), 有两类USB 设备:一类称为功能设备(Function),另一类是称为USB 集线器(HUB),可以连接多个USB 设备。
(5) USB 设备驱动程序(Client Driver Software)及特定应用程序。
主控制器的驱动软件由操作系统支持,USB 设备开发人员一般只需编写客户驱动程序,实现特定功能,设备端所有功能软件需要全面设计。
USB 的四种数据传输模式分别是:控制型传输、中断型传输、批量型传输、实时型传输。
第一种在缺省通道中传输USB 接口本身的配置等控制信息,后面三种用于功能部件传输数据。
中断型用于键盘等的异步输入输出少量数据传输,批量传输主要用于象硬盘等块设备的数据传输,在中断和批量的传输过程中要传递交互握手信号,确保数据准确无误。
51单片机外部引脚英文全称是什么
引言:51单片机是一种常用的嵌入式系统微控制器,常用于各种电子设备中。
在使用51单片机时,了解其外部引脚的英文全称是非常重要的。
本文将详细介绍51单片机外部引脚的英文全称,探讨其各个引脚的功能和用途。
概述:51单片机外部引脚的英文全称是根据它们在芯片上的物理位置和连接功能来命名的。
这些引脚包括电源引脚、输入输出引脚、复位引脚和其他特殊功能引脚。
了解这些英文全称可以帮助工程师更好地掌握51单片机的使用和应用。
正文:1. 电源引脚(Power Pins)1.1 VCCVCC引脚是指供电引脚,它连接到单片机的正电源。
VCC引脚提供的电压通常是5V,也可以是3.3V或其他电压。
1.2 GNDGND引脚是指接地引脚,它连接到单片机的负电源。
GND引脚用于建立电路的共地参考点。
2. 输入输出引脚(I/O Pins)2.1 P0.0 - P0.7P0引脚是51单片机上的一个8位可编程输入输出引脚组。
P0.0到P0.7分别对应于物理引脚P0.0到P0.7。
这些引脚可以配置为输入或输出,用于与其他设备进行数据交换。
2.2 P1.0 - P1.7P1引脚是51单片机上的另一个8位可编程输入输出引脚组。
P1.0到P1.7分别对应于物理引脚P1.0到P1.7。
这些引脚也可以配置为输入或输出,用于与其他设备进行数据交换。
2.3 P2.0 - P2.7P2引脚是51单片机上的第三个8位可编程输入输出引脚组。
P2.0到P2.7分别对应于物理引脚P2.0到P2.7。
这些引脚同样可以配置为输入或输出,用于数据交换。
2.4 P3.0 - P3.7P3引脚是51单片机上的第四个8位可编程输入输出引脚组。
P3.0到P3.7分别对应于物理引脚P3.0到P3.7。
这些引脚也可以配置为输入或输出。
3. 复位引脚(Reset Pin)3.1 RSTRST引脚是51单片机上的复位引脚。
当RST引脚被拉低时,单片机将被复位。
复位引脚通常通过一个复位电路提供一个确定的复位信号。
SPI接口——精选推荐
SPI接⼝串⾏外设接⼝(Serial Peripheral Interface)是⼀种同步外设接⼝,它可以使单⽚机与各种外围设备以串⾏⽅式进⾏通信以交换信息。
SPI最早是Motorola公司提出的全双⼯三线同步串⾏外围接⼝,采⽤主从模式(Master—Slave)架构,⽀持⼀个或多个Slave设备,由于其简单实⽤、性能优异,因此许多⼚家的设备都⽀持该接⼝,⼴泛应⽤于单⽚机和外设模块之间的连接。
SPI接⼝只需4条线:串⾏时钟线(SCK)、主机输⼊/从机输出数据线(MISO)、主机输出/从机输⼈数据线(MOSI)和低电平有效的从机选择线(SS)。
(1)MISO:主设备输⼊/从设备输出引脚。
该引脚在从模式下发送数据,在主模式下接收数据。
(2)MOSI:主设备输出/从设备输⼊引脚。
该引脚在主模式下发送数据,在从模式下接收数据。
(3)SCK:串⼝时钟,作为主设备的输出,从设备的输⼊。
(4)SS:从设备选择。
这是⼀个可选的引脚,⽤来选择主/从设备。
它的功能是⽤来作为⽚选引脚,让主设备可以单独地与特定从设备通信,避免数据线上的冲突。
SPI是⼀个环形总线结构,MOSI引脚相互连接,MISO引脚相互连接,数据在主和从之间串⾏地传输(MSB位在前),具体如下图所⽰。
SPI有主从两种⼯作模式,在主模式下,SPI为其他节点的CLK引脚提供串⾏时钟,数据从MOSI引脚输出,从MISO引脚输⼊。
在从模式下,数据从MISO引脚移出并由MOSI引脚移⼊,CLK引脚作为串⾏移位时钟的输⼊。
LPC824⽚内设计有SPI接⼝,具体的引脚取决于开关矩阵SWM的配置。
LPC824的SPI接⼝具有以下特点:•直接⽀持1⾄16位的数据发送。
软件⽀持更⼤的帧。
•主机和从机操作。
•⽆需读取输⼊数据即可将数据发送⾄从机,这在设置SPI存储器的时候很有⽤。
•控制信息还可与数据⼀同写⼊,这样便实现了极为丰富的操作,包括任意长度的帧。
•最多4个从机选择输⼊/输出,极性可选且使⽤灵活。
AT89C51单片机的基本结构
单片机内部的存储器分为程序存储器和数据存储器。AT89C51单片机的程序存储器采用4KB的快速擦写存储器Flash Memory,编程和擦除完全是电器实现。
(4)外围接口电路
AT89C51单片机的外围接口电路主要包括:4个可编程并行I/O口,1个可编程串行口,2个16位的可编程定时器以及中断系统等。
当EA信号接地时,对ROM的读操作限定在外部程序存储器,地址为0000H-FFFFH;当EA接VCC时,对ROM的读操作从内部程序存储器开始,并可延续至外部程序存储器。在编程时,该引脚可接编程电压5V或12V。在编程校验时,该引脚可接VCC。
·PSEN 片外程序存储器读选通信号PSEN,低电平有效。在片外程序存储器取指期间,当PSEN有效时,程序存储器的内容被送至P0口;在访问外部RAM时,PSEN 无效。
(2)振荡电路的接法
AT89C51的工作原理:
1.引脚排列及功能
AT89C51的封装形式有PDIP,TQFP,PLCC等,现以PDIP为例。
(1)I/O口线
·P0口 8位、漏极开路的双向I/O口。
当使用片外存储器及外扩I/O口时,P0口作为低字节地址/数据复用线。在编程时,P0口可用于接收指令代码字节;程序校验时,可输出指令字节。P0口也可做通用I/O口使用,但需加上拉电阻。作为普通输入时,应输出锁存器配置1。P0口可驱动8个TTL负载。
ALU是运算电路的核心,实质上是一个全加器,完成基本的算术和逻辑运算。算术运算包括加、减、乘、除、增量、减量、BCD码运算;逻辑运算包括“与”、“或”、“异或”、左移位、右移位和半字节交换,以及位操作中的位置位、位复位等。
暂存器1和暂存器2是ALU的两个输入,用于暂存参与运算的数据。ALU的输出也是两个:一个是累加器,数据经运算后,其结果又通过内部总线返回到累加器;另一个是程序状态字PSW,用于存储运算和操作结果的状态。
广州周立功单片机发展有限公司 P89LV51RD2 微控制器手册说明书
P89LV51RD2器件手册1. 概述P89LV51RD2是一款80C51微控制器,包含64kB Flash和1024字节的数据RAM。
P89LV51RD2的典型特性是它的X2方式选项。
设计者可通过该特性来选择应用程序以传统的80C51时钟频率(每个机器周期包含12个时钟)或X2方式(每个机器周期包含6个时钟)的时钟频率运行,其中,选择X2方式可在相同时钟频率下获得2倍的吞吐量。
从该特性获益的另一种方法是将时钟频率减半来保持特性不变,这样可以极大地降低EMI。
Flash程序存储器支持并行和串行在系统编程(ISP)。
并行编程方式提供了高速的分组编程(页编程)方式,可节省编程花费和推向市场的时间。
ISP允许在软件控制下对成品中的器件进行重复编程。
应用固件的产生/更新能力实现了ISP的大范围应用。
P89LV51RD2也可采用在应用中编程(IAP),允许随时对Flash程序存储器重新配置,即使应用程序正在运行时也不例外。
2. 特性80C51核心处理单元;3V的工作电压,操作频率为0~33MHz;64kB的片内Flash程序存储器,具有ISP(在系统编程)和IAP(在应用中编程)功能;通过软件或ISP选择支持12时钟(默认)或6时钟模式;SPI(串行外围接口)和增强型UART;PCA(可编程计数器阵列),具有PWM和捕获/比较功能;4个8位I/O口,含有3个高电流P1口(每个I/O口的电流为16mA);3个16位定时器/计数器;可编程看门狗定时器(WDT);8个中断源,4个中断优先级;2个DPTR寄存器;低EMI方式(ALE禁能);兼容TTL和CMOS逻辑电平;掉电检测;低功耗模式掉电模式,外部中断唤醒;空闲模式;PDIP40,PLCC44和TQFP44的封装;3. 定购信息表1 定购信息类型号封装名称描述版本P89LV51RD2BAPLCC44 塑料行间芯片运载,44脚 SOT187-2P89LV51RD2FAP89LV51RD2BBC TQFP44塑料小型方块扁平封装;44脚SOT376-1P89LV51RD2BN PDIP40塑料双列直插;40脚SOT129-1表2 定购选项类型号 温度范围 频率P89LV51RDBA 0℃~+70℃ P89LV51RD2FA -40℃~+85℃ P89LV51RD2BBC 0℃~+70℃ P89LV51RD2BN 0℃~+70℃0~33MHz4.功能框图图1 P89LV51RD2功能框图5.1 管脚RSTNCINT0/P3.2T0/P3.4T1/P3.5图2PLCC44管脚配置INT0/P3.2INT1/P3.3图4 TQFP44管脚配置5.2 管脚描述表3 P89LV51RD2管脚描述管脚符号DIP40 TQFP44 PLCC44类型描述P0.0~P0.7 39~32 37~30 43~36 I/O P0口:P0口是一个开漏双向I/O口。
单片机第七章 80C51单片机的典型外围接口技术
第7章单片机的典型外围接口技术7.1键盘接口7.2显示接口7.3DAC接口7.4ADC接口7.1键盘接口(1)独立连接式键盘优点:结构简单、使用方便。
缺点:占用的I/O口线多。
(2)矩阵式键盘⏹键盘上的键按行列构成矩阵,在行列的交点上都对应有一个键。
⏹所谓键实际上就是一个机械开关,被按下则其交点的行线和列线接通。
⏹非编码键键盘接口技术的主要内容就是如何确定被按键的行列位置,并根据此产生键码。
1.键输入过程与软件结构键扫描有无键按下查键号JMP @A+DPTR00#按键应用程序01#按键应用程序NN #按键应用程序A=00H A=01H A=NNH...N Y2.键盘输入接口与软件应解决的任务⏹(1)键开关的可靠输入⏹抖动的处理有硬件处理和软件处理两种。
⏹(2)按键编码与键号定义⏹(3)键盘检测与编制键盘程序3.矩阵式键盘电路的结构及工作原理一个4×4的行、列结构可以构成一个含有16个按键的键盘。
0123106759841114151312+5V X3X2X1X0Y3Y0Y2Y1扫描方法:先令列线Y0为低电平(0),其余3根列线Y1、Y2、Y3都为高电平,读行线状态。
如果X0、X1、X2、X3都为高电平,则Y0这一列上没有键闭合,如果读出的行线状态不全为高电平,则为低电平的行线和Y0相交的键处于闭合状态;如果Y0这一列上没有键闭合,接着使列线Y1为低电平,其余列线为高电平。
用同样的方法检查Y1这一列上有无键闭合,依次类推,最后使列线Y3为低电平,其余列线为高电平,检查Y3这一列有无键闭合。
按键开关的抖动问题组成键盘的按键有触点式和非触点式两种,单片机中应用的一般是由机械触点构成的。
P1.0由于按键是机械触点,当机械触点断开、闭合时,会有抖动,P1.0输入端的波形如图所示。
常用去抖动方法:⏹(1)硬件方法增加去抖动电路。
⏹(2)软件方法采用软件延时(10ms)躲过抖动(3)键盘的接口电路7.2显示接口⏹7.2.1 基本LED 显示原理⏹1.LED显示器的结构与原理d 1234a b c dp f e c dpd e g f b a GND GND abcdefgdp a b c d e f g dp +5v 8R ⨯8R ⨯g 共阴极共阳极2. 十六进制数字形代码表字型共阳极代码共阴极代码字型共阳极代码共阴极代码0C0H3FH990H6FH1F9H06H A88H77H2A4H5BH B83H7CH3B0H4FH C C6H39H 499H66H D A1H5EH 592H6DH E86H79H 682H7DH F84H71H7F8H07H灭FFH00H 880H7FH7.2.2 LED 显示方式在单片机应用系统中使用LED 显示块构成N 位LED 显示器。
《单片机原理与实践》 UART模块介绍
《单片机原理与实践》Cortex-M4 TM4C1294XL微处理器UART模块的介绍摘要:数据传输的接线方式大体上就是两种:一种是并行接口,一种是串行接口。
本组就串行接口展开研究,所谓串行接口是指数据在有限的几个IO上按照顺序,一位一位的进行传输。
UART、IIC、SPI、CAN、USB等只要是串行传输的接口,都是串口的一种,本文重点讨论的是其中的UART口。
一.UART定义通用异步收发器(Universal Asynchronous Receiver/ Transmitter, UART)是一个异步的串行通信接口。
UART模块将处理器内部的并行数据转换为串行数据,通过串行总线UnTX以异步通信的方式发送出去;另一方面它也可以接收UnRX 总线上的串行数据,转换为并行数据后返回给处理器进行处理。
异步模式是一种常用的通信方式,相对于同步模式,异步模式不需要一个专门的时钟信号来控制数据的收发,因此发送数据时位与位的间隙可以任意改变。
UART总线采用双向通信,可以实现全双工的发送和接收。
嵌入式设计中,UART用来与计算机或其他设备进行通信。
二.UART的优点这种通信方式使用的数据线少,在远距离通信中可以节约通信成本,但其传输速度比并行传输低。
它很简单并且能够实现远距离通信。
比如IEEE488定义并行通行状态时,规定设备线总长不得超过20米,并且任意两个设备间的长度不得超过2米;而对于串口而言,长度可达1200米。
通信使用3根线完成:(1)地线,(2)发送,(3)接收。
由于串口通信是异步的,端口能够在一根线上发送数据同时在另一根线上接收数据。
串口通信最重要的参数是波特率、数据位、停止位和奇偶校验。
对于两个进行通信的端口,这些参数必须匹配。
三.UART与IIC、SPI的区别1、UART就是两线,一根发送一根接收,可以全双工通信,线数也比较少。
数据是异步传输的,对双方的时序要求比较严格,通信速度也不是很快。
流水灯设计
摘要:在现在诸多的娱乐场所、理发店、宾馆、饭店、公司等的门外,都可以看到各式各样的广告流水灯。
所谓“广告流水灯”,就是将一系列的有颜色的广告灯串联接在一起,然后令这些灯按一定的次序逐个或者几个的一次点亮和熄灭。
由于各灯点亮和熄灭,产生的效果就像流动的水一样,因此,就称这类广告灯为“广告流水灯”。
生活中广告流水灯的形式和点亮的次序是多种多样的。
有单一颜色的几个灯按固定的次序来点亮的,有多个不同颜色的灯构成某一图案依次点亮的,也有多排广告灯按多种组合好的次序循环点亮的等。
我设计的广告流水灯,就是这些广告灯中的类型。
随着改革的不断深入,社会主义市场经济的不断繁荣和发展,个大中小城市都在进行亮化工程。
个人企业为宣传自己企业的形象和产品,均采用广告手法之一:流水灯来实现这一目的.当我们夜晚走在大街上,马路两旁各色各样的流水灯广告均可以见到,一种是采用霓虹灯管做成的各种形状和多种彩色的灯管,另一种为日光等管或白炽灯管作为光源,另配大型广告语或宣传画来达到宣传的效果。
这些灯的亮灭,闪烁时间及流动方向等均可以通过单片机来达到控制的要求。
关键词:单片机AT89C51;广告灯;循环闪烁一、设计目的、要求(一)设计目的1.通过对广告灯的设计,进一步熟练掌握单片机c语言的编程方法及思想。
2.通过对广告灯的设计,进一步掌握c语言对独立式键盘的编程控制并认识独立式键盘在实际中运用。
3.通过对电子时钟的设计,增强同学们对单片机兴趣及动手能力。
并在此过程中学会对程序的逐步调试。
4.本设计以 AT89C51 单片机为核心并用它来控制发光二极管双灯点亮循环的实验装置,用 AT89C51 单片机控制8个发光二极管发光,实现亮点从高到低位,从左到右,从单到双的循环移动。
通过软件控制发光二极管的思路和技巧。
这次设计重点就在于利用单片机的知识去控制系统的运行。
(二)设计要求1、设计指标(1)控制板用 AT89C51单片机;(2)单片机系统软件、硬件设计,在单片机实验箱上能够运行;2、设计要求(1)软件设计:编制汇编程序系统软件,实现广告灯闪烁功能;(2)硬件设计:设计各功能单元电路,及与单片机的接口电路;(3)单片机系统软件、硬件设计画出各部分原理框图画出各电路原理图(或仿真电路图)二、总体设计(一)系统总体结构我利用单片机的P1.0到P1.7口驱动发光二极管,在AT89C51芯片中载入程序对发光二极管进行点亮。
第七章单片机的典型外围--ADC电路
12位数模转换芯片 AD7542
(2)AD7542与80C51的接口
AD7542 与 80C51 的接口电路非常简单,见图 7-19 。用 P1 口的 P1.3~P1.0 与数据线 D3~D0 相连, P1.5 、 P1.4与A1、A0相连,P1.6用做片选CS,P3.0用做WR信 号。
图7—19 AD7542与80C51的接口电路
D7
输 入 寄 存 器
D0
ILE 1
DAC 寄 存 器
D/A 转 换 器
Vref Iout2 Iout1 Rfb
LE1 & 1
LE2
CS 0 ≥1 WR1 0 WR2 0 ≥1 XFER 0
LE=1,Q 跟随 D
1 1
LE=0,Q 锁存 D
DAC0832 常见的几种用法
D7
输 入 寄 存 器 DAC 寄 存 器 D/A 转 换 器
三角波
同样的编程思路,若要产生 如下的梯形波也很容易:
梯形波
DAC0832 的编程应用举例
SE13:MOV SP,#60H MOV 7EH,#00H 显示 MOV 7DH,#08H 缓冲 MOV 7CH,#03H 区初 MOV 7BH,#02H 值 REPT:MOV R6,#00H JIA1:MOV DPTR,#0FFE0H MOV A,R6 MOVX @DPTR,A;送D/A转换 MOV R0,#79H;显缓最低位 LCALL PTDS ;拆字 MOV R2,#10H XS1:LCALL DIS ;显示 DJNZ R2,XS1 INC R6 ;加1
20 PIN
DIP封装
DAC 0832 引脚定义
D0—D7:8位数字量输入端 /CS: 片选端,低有效 ILE: 数据锁存允许,高有效 /WR1:锁存输入数据写控制信号 /WR2:锁存输入寄存器输出数据的写信号 /XFER: 数据传送控制信号 Iout1: 电流输出端1 Iout2: 电流输出端2 Rfb: 内置反馈电阻端 Vref: 参考电压源,-10~+10V DGND: 数字量地 AGND: 模拟量地 Vcc: +5~+15V单电源供电端 DAC0832
SPI总线协议及SPI时序图详解
SPI总线协议及SPI时序图详解SPI,是英语Serial Peripheral Interface的缩写,顾名思义就是串行外围设备接口。
SPI,是一种高速的,全双工,同步的通信总线,并且在芯片的管脚上只占用四根线,节约了芯片的管脚,同时为PCB的布局上节省空间,提供方便,正是出于这种简单易用的特性,现在越来越多的芯片集成了这种通信协议。
SPI是一个环形总线结构,由ss(cs)、sck、sdi、sdo构成,其时序其实很简单,主要是在sck的控制下,两个双向移位寄存器进行数据交换。
上升沿发送、下降沿接收、高位先发送。
上升沿到来的时候,sdo上的电平将被发送到从设备的寄存器中。
下降沿到来的时候,sdi上的电平将被接收到主设备的寄存器中。
假设主机和从机初始化就绪:并且主机的sbuff=0xaa (10101010),从机的sbuff=0x55 (01010101),下面将分步对spi的8个时钟周期的数据情况演示一遍(假设上升沿发送数据)。
---------------------------------------------------脉冲主机sbuff 从机sbuff sdi sdo---------------------------------------------------0 00-0 10101010 01010101 0 0---------------------------------------------------1 0--1 0101010x 10101011 0 11 1--0 01010100 10101011 0 1---------------------------------------------------2 0--1 1010100x 01010110 1 02 1--0 10101001 01010110 1 0---------------------------------------------------3 0--1 0101001x 10101101 0 13 1--0 01010010 10101101 0 1---------------------------------------------------4 0--1 1010010x 01011010 1 04 1--0 10100101 01011010 1 0---------------------------------------------------5 0--1 0100101x 10110101 0 15 1--0 01001010 10110101 0 1---------------------------------------------------6 0--1 1001010x 01101010 1 06 1--0 10010101 01101010 1 0---------------------------------------------------7 0--1 0010101x 11010101 0 17 1--0 00101010 11010101 0 1---------------------------------------------------8 0--1 0101010x 10101010 1 08 1--0 01010101 10101010 1 0---------------------------------------------------这样就完成了两个寄存器8位的交换,上面的0--1表示上升沿、1--0表示下降沿,sdi、sdo相对于主机而言的。
AT89S51单片机最小系统组成及存储器的扩展
第五章A T89S51单片机最小系统组成及存储器的扩展本章主要讲述了单片机系统的最小组成以及各种存储器电路的扩展方法,特别对GAL译码方法进行了讨论。
5.1 单片机最小系统组成能使单片机工作的最少器件构成的系统称为单片机的最小系统。
对于AT89S51单片机,由于其内部有4K可在线编程的Flash存储器,用它组成最小系统时,不需机外扩程序存储器,只要有复位电路和时钟电路即可,因此,由A T89S51单片机组成的最小系统如图5.1所示:图5.1是一个实际应用的最小系统,74HC14可以提高复位的可靠性;另外,当P0用作I/O口时,需要接10k~20k 的上拉电阻。
5.2 单片机的时序时序就是进行某种操作时,各种数据、控制信号先后出现的顺序。
单片机的工作时序是个很重要的概念,了解时序是进行硬件电路设计的第一步5.2.1 单片机取指和执行时序运行单片机程序时,总是按照取指、译码、执行,再取指、再译码、再执行的顺序进行。
为了说明CPU的时序,把12个振荡周期称为一个机器周期,2个振荡周期被称为一个状态(state),每个状态中,前一个振荡周期被称为相(Phase)1,第二个振荡周期被称为相(Phase)2,这样任何一个振荡周期都可以用SiPj(i=1~6;j=1~2)来表示。
ALE信号总是在一个机器周期的S1P2、S2P1和S4P2、S5P1被激活。
单周期指令总是从S1P2开始取指,当操作码被锁存到指令寄存器时,如果是双字节指令,在同一机器周期的S4读第二个字节代码;如果是个单字节指令,在S4仍会读一次,但这次读到的内容将被忽略或丢弃。
在任何情况下,指令都是在S6P2执行完毕。
单周期、单字节指令和单周期、双字节指令的取指、执行过程如图5.2的(A)、(B)所示。
A T89S51单片机的指令中,大多数指令都是单周期或双机器周期指令,只有乘法指令(MUL,multiply)和除法指令(DIV,divide)需要四个机器周期才能完成。
软硬件的详细说明
单片机课程设计报告篮球计时计分器姓名:×××学号:×××××专业班级:××××指导老师:×××所在学院:××××××××××2007年6月30日1 引言篮球比赛计时计分器是为了解决篮球比赛时计分与计时准确的问题。
此装置利用单片机AT89C51完成了计时和计分的功能。
该设计将介绍系统硬件与软件的设计过程,采用该装置可根据实际情况进行比分修改和时间的准确显示,具有低功耗,可靠性,安全性以及低成本等特点。
1.1背景知识介绍单片机又称单片微控制器,它不是完成某一个逻辑功能的芯片,而是把一个计算机系统集成到一个芯片上。
概括的讲:一块芯片就成了一台计算机。
它的体积小、质量轻、价格便宜、为学习、应用和开发提供了便利条件。
同时,学习使用单片机是了解计算机原理与结构的最佳选择。
单片机自20世纪70年代问世以来,以极其高的性价比受到人们的重视和关注,所以应用很广,发展很快。
单片机的优点是体积小、重量轻、抗干扰能力强,对环境要求不高,价格低廉,可靠性高,灵活性好,开发较为容易。
例如,80C51系列单片机已有十多年的生命期,如今仍保持着上升的趋势,就充分证明了这一点。
单片机以其一系列优点,近几年得到迅猛发展和大范围推广,广泛应用于工业控制系统,数据采集系统、智能化仪器仪表,及通讯设备、日常消费类产品、玩具等。
并且已经深入到工业生产的各个环节以及人民生活的各层次中,如车间流水线控制、自动化系统等、智能型家用电器等。
而美国ATMEL公司开发生产了新型的8位单片机——AT89系列单片机。
他不但具有一般MCS-51单片机的所有特性,而且还拥有一些独特的优点,此次设计中所用到的AT89C51就是其中典型的代表。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
§9-2 -
键盘接口
一,按键开关抖动问题 按键开关在电路中的连接如图所示:
按键未按下时,A点的电平位 +5V; 按下时,A点的电平位低电平; 由于按键是机械的弹性开关,在按下和断开时,触点在闭合 和断开时,会引起A点电位的不稳定,一般有5~10ms的抖动, 导致误信号,使CPU产生错误的处理.
1,硬件去抖动: 常用双稳态电路,单稳态电路和RC积分电路三种方法, 如图.
2,软件去抖动 在首次检测到按键按下后,先执行一段延时子程序,一 般为10ms延时,有程序确认按键是否按下,达到去抖动的目 的. 二,独立式按键及其接口 独立式按键:每个按键占用一根I/O线,相互之间没有影响. 例9-3 如图为三个按键与8031的连接电路,试编制按键扫 描子程序.
流程和程序如下:
2)控制流程,程序
START:MOV SCON,#00H MOV R0, #00H CLR ES ;禁止中断 MOV DPTR,#TABLE LOOP:MOV A, R0 MOVC A, @A+DPTR CLR TI MOV SBUF,A LCALL DELAY INC R0 CJNE R0, #10, LOOP MOV R0, #00H AJMP LOOP TABLE:DB 0FCH,60H,0DAH,0F2H,66H DB 0B6H,0BEH,0E0H,0FEH,0F6H ORG 0100H DELAY:1秒延时程序(略) RET
第9 章
பைடு நூலகம்
常用外围设备接口电路
§9-1 §9-2 LED数码管显示接口 LED数码管显示接口 键盘接口
§9-1 一,LED数码管 1,结构
LED数码管显示接口 LED数码管显示接口
COM:显示器位选线
a~dp:显示器段选线
发光管驱动额定电流:10~40mA,静态取下限. 2,静态显示及其段码 静态显示:利用8位锁存功能的I/O口线驱动一个数码管,多 个数码管同时显示,需增加I/O口线. 段码形成:在COM送入低电平或高电平,然后控制个各笔 段引脚电平,即可形成相应段码. 【例9-1】:利用P1口并行输出控制八段数码管,设小数点暗, 采用共阳顺序,共阴顺序,共阴逆序确定0~9的显示程序为: 解:1)共阳顺序显示硬件结构如图: 2)共阳顺序,共阴顺序,共阴逆序的段码如下:
3)并行输出,循环显示0~9秒的显示程序: DIR: MOV R0,#0 MOV DPTR,#TAB LOOP:MOVA,R0 MOVC A,@A+DPTR MOV P1,A LCALL DELAY INC R0 CJNE R0,#0AH,LOOP AJMP DIR TAB:DB C0H,F9H,A4H DB B0H,99H,92H DB 82H,F8H,80H,90H
�
3,串行口方式0驱动数码管 (1)串行口与并行口转换控制 ① 串入并出移位寄存器74LS164 图(a) ② 并入串出移位寄存器74LS165 图(b)
(2)利用74LS164驱动共阴数码管 【例9-2】:利用8031串行口控制八段数码管,设小数点暗, 采用共阴逆序,设计循环显示0~9秒的程序. 解:1)硬件结构图(共阴逆序,小数点暗)
KEY:MOV P1,#07H MOV A,P1 CPL A ANL A,#07H JZ GRET JB ACC.0,KEY1 JB ACC.1,KEY2 JB ACC.2,KEY3 GRET:RET KEY1:LCALL WORK1 KEY2:LCALL WORK2 KEY3:LCALL WORK3 RET
三,矩阵式键盘及其接口 矩阵式键盘:也称行列式键盘.4×4行列结构,可 安装16个按键,形成一个键盘.如图所示:
列线:P1.4~P1.7; 行线:P1.0~P1.3; 键扫描子程序流程如左图:
本章小结
1,发光二极管,七段显示器原理及段码编制 2 单键与行列式键盘,单键与8031接口电路设计 及程序设计,行列式键盘原理与接口介绍 重点:七段码编制,单键(开关量)电路及程序 设计. 难点:键及显示在实际控制电路中的综合应用
共阳顺序段码:C0H,F9H,A4H,B0H,99H,92H,82H, F8H,80H,90H 共阴顺序段码:3FH,06H,5BH,4FH,66H,6DH,7DH, 07H,7FH,6FH(Dp→a) 共阴逆序段码:FCH,60H,DAH,F2H,66H,B6H,BEH, E0H,FEH,F6H(a→Dp)