微机原理课程设计说明书文档格式.docx
《微机原理课程设计说明书文档格式.docx》由会员分享,可在线阅读,更多相关《微机原理课程设计说明书文档格式.docx(13页珍藏版)》请在冰豆网上搜索。
1.6功率放大器ULN2803A………………………………………10
1.7光电耦合器…………………………………………………11
1.8发光二级管…………………………………………………12
2软件设计………………………………………………………12
3总结与体会……………………………………………………14
五参考文献………………………………………………………15
摘要
随着计算机软硬件技术和控制、测量技术的不断发展,许多工程技术人员都将PC机作为控制、测量开发的首选平台。
而PCI(PeripheralComponentInterconnect,即外围部件互连)总线作为一种高性能、通用的局部总线,是目前计算机插卡式外设总线的事实标准。
PCI总线具有32/64位总线宽度。
地址线和数据线复用,支持猝发传输,传输速率高达132MB/s;
系统占用率低,具有较好的兼容性;
有完备的即插即用(PnP)管理体制,可同时支持多组外围设备。
虽然PCI总线也经历了从PCI、PCI-X到PCIExpress的发展,但PCI总线由于存在时间长,开发工具、开发资料众多,在对数据吞吐量要求不是很高的工业控制、测量领域仍有着顽强的生命力。
在此处设计了基于PCI总线的数据采集卡,可以完成8路数字量I/O采集功能。
关键词:
微机原理;
控制系统;
单片机;
汇编语言;
接口设计
Abstract
Alongwiththecomputerhardwareandsoftwaretechnology,measurementandcontroltechnologycontinuestodevelop,manyengineeringandtechnicalpersonnelwillbePCasthecontrol,measurementanddevelopmentplatformofchoice.PCI(PeripheralComponentInterconnect,i.e.peripheralcomponentinterconnect)busisahighperformance,genericlocalbus,isthecomputerplug-inperipheralbusstandardinfact.PCIbuswith32/64buswidth.Addresslineanddatalinemultiplexing,supportingbursttransmission,hightransmissionrateupto132MB/s;
thesystemoccupancyrateislow,whichhasgoodcompatibility;
completeplug-and-play(PnP)managementsystem,cansimultaneouslysupportmultiplegroupsofperipheraldevices.AlthoughthePCIbusalsoexperiencedfromPCI,PCI-XtoPCIExpressdevelopment,butPCIbusduetothepresenceofalongtime,developmenttools,developmentofinformationmany,inthedatathroughputrequirementsisnotveryhighinindustrialcontrol,measurementfieldstillhasastrongvitality.InthisdesignbasedonthePCIbusdataacquisitioncard,cancompletethe8digitalI/Ocollectionfunction.
∙Keywords:
PrincipleofMicrocomputercontrolsystemchipmicrocomputer
assemblerlanguageFramework
设计任务书
一、设计题目:
二、设计目的:
1.通过PC机ISAI/O卡的设计巩固8086微机的接口知识,强化微机总线概念;
2.学会利用电子CAD软件设计电路板,熟悉电路板的制作;
3、建立基于PC机的测控概念,学会对ISAI/O卡实现简单的测控任务.
三、设计要求:
基本要求:
1、设计一款具有8位可编程数字量输入和8位可编程数字量输出.
2、利用Protel软件绘制电路板原理用,并生成PCB图;
3、编写读入8位可编程数字量输入,然后从8位可编程数字量输出的程序。
四、设计步骤:
1、熟悉PC机ISA总线概念及ISA或PCII/O卡的设计要点;
2、熟悉Protel99软件的使用;
3、I/O卡原理设计:
按照设计要求设计出I/O卡的电路原理图;
4、I/O卡电路板布线:
利用Protel软件生成'
I/O卡的PCB板布线图;
5、在设计出的I/O卡的基础上,编写读入8位可编程数字量输入,然后从8位可编程数字量输出,3个16位定时/计数器计数的程序,高级设计增加将1模拟量输入转到1模拟量输出;
6、编写设计说明书;
7、答辩;
五、查询资料:
1、ISA总线资料,pc104总线资料,PCI总线资料;
2、芯片资料:
CH365、74LS688、74LSl38、8255、8253、DAC0832、ADC0809等;
设计正文
1硬件设计
先在具体甄选设计过程中可能要设计的芯片,分析它们的功能特点,确定它们的工作模式;
按照各芯片的使用特点以及本系统的设计要求逐步连接,画出系统硬件连接图,并生成PCB板。
正如A3图纸系统硬件连接图所示,CPU我选用PC104,它足以完成8路数字量I/O采集功能;
由于PCI104有32根地址与数据共用线,故有必要将地址码与数据码分开,PCI104采用了分时传送的方法,即先传送地址码,再传送数据码,故必须用锁存器将地址码锁存起来。
我选用74系列的74LS373作为地址锁存器;
由于外设、内存存取数据速度不匹配,故有必要使用缓冲器来暂时记忆存储数据,我选用74系列的74LS245作为数据缓冲器;
存储器译码我采用全译码方式,用74LS688比较译码器可减少逻辑组合电路;
可编程芯片的片选信号译码,我采用线译码方式,这样可以保证其端口地址只有8位,易于程序编写,因而74LS138译码器是最好的选择。
在具体设计该系统时,我选用光电耦合器模拟数字量的输入输出,最后以发光二极管为负载的系统。
1.1PCI总线
1.1.1PCI总线特点
PCI是先进的高性能局部总线,可同时支持多组外围设备。
其特点是:
总线操作与处理器一存储器子系统操作并行;
线性突发传输;
极小的存取延误;
不受处理器限制;
基于PCI卡设备信息,实现即插即用。
PCI的地址空间有3类:
存储器、I/O和配置地址空间。
存储器空间和I/O空间同以前的ISA总线规范相同,而配置空间是PCI所特有的。
配置空间使系统处理器能够枚举PCI总线上的各种设备,并根据设备要求自动配置存储器和I/O的地址空间。
操作系统在自检的过程中检测所有PCI设备,读取设备的配置信息,并给每一设备分配系统资源,如中断、I/O空间、存储器空间等。
在PCI系统结构中,为每个PCI都提供了256个字节(至少是前64个字节)的配置空间,这256个字节的配置空间中前64个字节称为头区域,是每一个PCI设备都应该实现的,他的主要功能是识别PCI接口设备,以及PC访问板卡的方式等。
其余的192个字节根据不同的PCI设备有所不同。
1.1.2PCI总线简介
PC/104总线是嵌入式PC机所用的总线标准.有两个总线插头.其中P1有64个引脚,P2有40个引脚共有104个引脚,这也是PC/104名称的由来.PC104有两个版本,8位和16位,分别与PC和PC/AT相对应。
PC104PLUS则与PCI总线相对应.。
PC/104模块本质上就是尺寸缩小为3.8英寸3.9英寸的ISA总线板卡。
它的总线与ISA在IEEE-P996中定义基本相同。
具有16位数据宽度,最高工作频率为8MHz数据传输速率达到8MB/s,地址线24条,可寻访16M字节地址单元。
所有PC/104总线信号定义和功能与它们在ISA总线相应部分是完全相同的。
104根线分为5类:
地址线、数据线、控制线、时钟线、电源线。
简要介绍如下:
(1)地址线
SA0~SA19和LA17~LA23
SA0~SA19是可锁存的地址信号,LA17~LA23是非锁存信号由于没有锁存延迟因而给外设插板提供了一条快捷途径。
SA0~SA19加上LA17~LA23可实现16MB空间寻址(其中SA17~SA19和LA17~LA19是重复的)
(2)数据线
数据线SD0~SD7和SD8~SD15其中SD0~SD7位为低8位数据,SD8~SD15为高8位数据
(3)控制线
AEN:
地址允许信号,输出线,高电平有效。
AEN=1,表明处于DMA控制周期;
AEN=0,表示非DMA周期。
此信号用来在DMA期间禁止I/O端口的地址译码。
BALE:
允许地址锁存,输出线。
这信号由总线控制器8288提供,作为CPU地址的有效标志。
当BALE为高电平时将SA0~SA19接到系统总线。
其下降沿用来锁存SA0~SA19
IOR:
I/O读命令,输出线,低电平有效。
用来把选中的I/O设备的数据读到数据总线上,在CPU启动的周期通过地址线选择I/O。
在DMA周期,I/O设备由DACK选择
IOW:
I/O写命令,输出线,低电平有效,用来把数据总线上的数据写入被选中的I/O端口
SMEMR和SMEMW:
存储器读/写命令,低电平有效,用于对SA0~SA19这20位地址寻址的1MB内存的读/写操作
MEMR和MEMW:
低电平有效,存储器读/写命令,用于对24位地址线全部存储空间读/写操作
MEMCS16和I/OCS16:
它们是存储器16位片选信号和I/O16位片选信号,分别指明当前数据传送是16位存储器周期和16位I/O周期
SBHE:
总线高字节允许信号,该信号有效时表示数据总线上传,送的是高位字节数据
IRQ3~IRQ7,IRQ9,IRQ10~IRQ15用于作为来自外部设备的中断请求输入线分别连在主片8259A和从片8259A中断控制器的输入端。
其中IRQ13留给数据协处理器使用,不在总线上出现。
这些中断请求线都是边沿(上跳边)触发,三态门驱动器驱动。
优先级排队是:
IRQ0最高,依次为IRQ1,IRQ8~IRQ15,然后是IRQ3~IRQ7
DRQ0~DRQ3和DRQ5~DRQ7来自外部设备的DMA请求输入线高
电平有效,分别连在主片8237A和从片8237A。
DMA控制器输入端DRQ0优先级最高,DRQ7最低,DRQ4用于级联,在总线上不出现
DACK0~DACK3和DACK5~DACK7:
DMA回答信号,低电平有效。
有效时表示DMA请求,被接受DMA控制器占用总线,进入DMA周期
T/C:
DMA终末/记数结束输出线该信号是一个正脉冲表明DMA传送的数据已达到其程序预置的字节数,用来结束一次DMA数据块传送
MASTER:
输出信号,低电平有效,它由要求占用总线的有主控能力的外设卡驱动,并与DRQ一起使用,外设的DRQ得到确认DACK有效后才使MASTER有效,从此该设备保持对总线的控制直到MASTER无效
RESERDRV:
系统复位信号,输出线,高电平有效,此信号在系统电源接通时为高电平,当所有电平都达到规定以后变低,即上电复位时有效,用它来复位和初始化接口和I/O设备
IOCHCHK:
I/O通道检查,输出线,低电平有效,当它变为低电平时,表明接口插件的I/O通道出现了错误,它将产生一次不可屏蔽中断
I/O CHDRY:
I/O通道就绪,输入线,高电平表示就绪。
该信号线可供低速I/O设备或存储器请求延长总线周期之用。
当低速设备在被选中,且收到读或写命令时将此线电平拉低,表示未就绪以便在总线周期中加入等待状态。
TW但最多不能超过10个时钟周期
REFRESH:
刷新信号为了防止在内存刷新周期内产生不必要的中断。
ISA提供该刷新信号防止中断发生
KEY:
钥匙位
ENDXFR:
零等待状态信号,输入线,该信号为高电平时,无需插入等待周期
SYSCLK:
系统时钟
OSC:
主振信号输出
除了以上信号外,还有电源正负12V正负5V,地线GND等。
我们知道IEEE-P996是PC和PC/AT工业总线规范,IEEE协会将它定义IEEE-P996.1,很明显PC104实质上就是一种紧凑型的IEEE-P996,其信号定义与PC/AT相同,但电气和机械规范却完全不同:
a.自堆栈总线,省掉了昂贵的底板
b.针孔总线连接器,提高了可靠性
c.减小了总线驱动电流,降低了功耗和电路的驱动要求
至于16位的PC/104总线比ISA的信号线多6根(104&
98),都是地线.
3PCI接口芯片的选择
PCI接口电路至少实现如下功能:
(1)高速的地址产生单元;
(2)地址译码及命令译码单元;
(3)标准配置寄存器(64个字节)、PCI总线逻辑接口单元、用户设备逻辑接口、数据缓冲区等。
1.274LS138译码器
译码是编码的逆过程,译码是编码的逆过程,它的功能是将具有特定含义的二进制码进行辨别,并转换成控制信号,具有译码功能的逻辑电路称为译码器。
三八译码器属于二进制译码器,即它具有N个输入端,2n个输出端和一个使能输入端。
在使能输入端为有效电平时,对应每一组输入代码,能输入端为有效电平时,对应每一组输入代码,只有其中一个输出端为有效电平,只有其中一个输出端为有效电平,其余输出端则为非有效电平。
地址译码器用于对存储器和I/O口地址译码,产生片选信号。
常用的地址译码器有74LS138,其引脚如下图,功能表见下表。
74LS138译码器是译码电路中最常用的,在本设计中我选用两片74LS138译码器产芯片的片选信号,如果选用比较译码器74LS688则需要多片,既增加了芯片数量,也增加了电路消耗,同时占用了过多的空间,使线路连接更加复杂,更不直观。
74ls138是3/8译码器,即对3个输入信号进行译码。
得到8个输出状态。
G1,G2A,G2B,为数据允许输出端,G2A,G2B低电平有效。
G1高电平有效。
接线时将A,B,C接单片机的高位地址。
Y0到Y7接片外芯片片选信号,低电平有效
引脚图
功能表
G1
G2A
G2B
C
B
A
Y0
Y1
Y2
Y3
Y4
Y5
Y6
Y7
1
×
1.3比较译码器74LS688
在存储器扩展时,我选用74LS688作为译码器,其一是为了在全译码时减少组合逻辑电路,二是为了与本组其他成员相区别。
74LS688作译码器时,必须为低电平,且当且仅当对应的8个输入端P与8个输入端Q相等时,才会输出低电平。
利用这一特性将低电平作为存储器的片选信号,可实现其译码片选功能。
由硬件连接图可知,在设计中,我将8个输入端Q全部接地,即低电平,保证了存储器高8位全部为0。
实现了存储器从最低地址0H-0FFFH,4KB的存储容量。
1.4地址锁存器74ALS373
地址锁存器就是一个暂存器,它根据控制信号的状态,将总线上地址代码暂存起来。
PC104中数据和地址总线采用分时复用操作方法,即用同一总线既传输数据又传输地址。
当微处理器与存储器交换信号时,首先由CPU发出存储地址,同时发出允许锁存信号ALE给锁存器,当锁存器接到该信号后将地址/数据总线上的地址锁存在总线上,随后才能传输数据。
74LS373是带三态输出的8位锁存器,共有8个输入端D1—D8及8个输出端Q1—Q8。
当三态端OE为有效低电平,74LS373的G端为输人选通端,使能端G为有效高电平时,输出跟随输入变化;
当G=1时,锁存器处于透明工作状态,即锁存器的输出状态随数据端的变化而变化,即脚1=Di(I=1,2,…,8)。
当G端由1变0时,数据被锁存起来,此时输出端Qi不再随输入端的变化而变化,而一直保持锁存前的值不变。
G端(或STB端)可直接与PC104的锁存控制信号端ALE相连,在ALE的下降沿进行地址锁存。
在PC104系统中,地址线和数据线时复用的,故有必要锁存地址。
74ALS373管脚及功能图如图所示。
其数据送入是由时钟的约定电平来进行的。
E为低电平时,锁存器才能工作。
在此处我选用两片74ALS373。
1.5总线缓冲器74LS245
缓冲器主要用于CPU总线的缓冲,以增加总线驱动负载的能力。
74LS245是带三态输出的8位双向数据缓冲器,专用于需要双向传输的数据总线接口。
它其实也是一个三态门,为输出使能端,G为低电平时,缓冲器才能工作,DIR为传输方向控制端。
当G=0,DIR=0时,数据由B到A,当G=0,DIR=1时,则数据由A到B。
当G=1时,A和B均处于高阻状态。
其常用于数据缓冲器,也可作于单向缓冲器,用于地址或控制信号的缓冲。
在此处我选用两片该芯片。
1.6功率放大器ULN2803A
ULN2803A是一种高电压,大电流达林顿晶体管阵列。
ULN2803A装置由8个npn的达林顿对这一功能与开关电感性负载共阴极钳位二极管的高电压输出。
每个达林顿对集电极电流额定值为500毫安。
在达灵顿对可能被连接在较高的电流能力平行。
ULN2803A主要应用于继电器驱动器,锤司机,灯驱动器,显示驱动器(LED与气体放电),线路驱动器,缓冲器和逻辑。
ULN2803A已为每个操作具有TTL或5VCMOS器件直接达林顿对2.7kΩ的电阻器系列的基础。
在此处由于CPU输出功率比较小,通过此装置可以驱动功率较大的负载。
1.7光电耦合器
用于数模之间的转换。
光电耦合器是以光为媒介传输电信号的一种电一光一电转换器件。
它由发光源和受光器两部分组成。
把发光源和受光器组装在同一密闭的壳体内,彼此间用透明绝缘体隔离。
发光源的引脚为输入端,受光器的引脚为输出端,常见的发光源为发光二极管,受光器为光敏二极管、光敏三极管
其工作原理时:
在光电耦合器输入端加电信号使发光源发光,光的强度取决于激励电流的大小,此光照射到封装在一起的受光器上后,因光电效应而产生了光电流,由受光器输出端引出,这样就可以实现电一光一电的转换。
在此处为了实现外界量进去CPU使用8个光电耦合器,为了实现CPU出来的数字信号变为模拟信号也要采用8个光电耦合器,即总共采用16个光电耦合器。
1.8发光二级管
发光二极管简称LED,采用砷化镓、镓铝砷、和磷化镓等材料制成,其内部结构为一个PN结,具有单向导电性。
当在发光二极管PN结上加正向电压时,PN结势垒降低,载流子的扩散运动大于漂移运动,致使P区的空穴注入到N区,N区的电子注入到P区,这样相互注入的空穴与电子相遇后会产生复合,复合时产生的能量大部分以光的形式出现,因此而发光。
发光二极管的核心部分是由P型半导体和N型半导体组成的晶片,在P型半导体和N型半导体之间有一个过渡层,称为PN结。
在某些半导体材料的PN结中,注入的少数载流子与多数载流子复合时会把多余的能量以光的形式释放出来,从而把电能直接转换为光能。
PN结加反向电压,少数载流子难以注入,故不发光。
这种利用注入式电致发光原理制作的二极管叫发光二极管,通称LED。
当它处于正向工作状态时(即两端加上正向电压),电流从LED阳极流向阴极时,半导体晶体就发出从紫外到红外不同颜色的光线,光的强弱与电流有关。
2软件设计
汇编语言参考程序:
org0000h
ajmpmain
org0080h;
;
定义P1.0,P1.1,P1.2分别为AA,BB,CC以便在程序中描述
AAEQUP1.0
BBEQUP1.1
CCEQUP1.2
MAIN:
CLRCC;
状态1A,B,C为000
CLRBB
CLRAA
CALLDELAY;
调用延时
状态2A,B,C为100
SETBAA
状态2A,B,C为010
SETBBB
CALLDELAY
CLRCC
CA