串转并转换器1.docx
- 文档编号:11060003
- 上传时间:2023-02-24
- 格式:DOCX
- 页数:19
- 大小:151.78KB
串转并转换器1.docx
《串转并转换器1.docx》由会员分享,可在线阅读,更多相关《串转并转换器1.docx(19页珍藏版)》请在冰豆网上搜索。
串转并转换器1
一、题意分析及解决方案
1、课程设计名称及内容
应用STARES598PCI单板开发机系列接口芯片设计一个串转并转换器,熟悉串转并转换原理,掌握使用串并转换芯片扩展I/O口的实现方法。
设计编写程序,循环点亮8个指示灯瞬间只有一个灯亮。
观察实验结果,验证串并转换数据的正确性。
2、题意需求分析
根据题目给定的内容与要求可得:
本实验需要用到的主要是控制数据输入的芯片、实现串并转换的芯片和用于显示的发光管。
本实验的核心部分是8位移位寄存器74HC164,它可以实现数据的串行输入和并行输出,达到数据从串行转换为并行的目的。
为了方便控制74HC164的输入,考虑运用可编程接口芯片8255连接CPU和74HC164,实现数据的串行输入和CP脉冲的变化。
同时,为了方便观察实验结果,使用74HC164移位寄存器输出接口连接8位发光二极管,显示并行输出结果。
3、解决问题的思路与方法
(1)硬件部分
程序用到的硬件芯片有8255、74HC164、发光二极管:
使用8255作为CPU和移位寄存器之间的接口电路来控制8位串行数据的输入,其本身的接口就可以支持输出的操作。
而且8255的可编程并行接口,具有传输速度快效率高等优点,不需要附加外部电路便可和大多数并行传输数据的外部设备相连,数据的各位同时传送,使用十分方便。
74HC164是8位移位寄存器,当其中一个(或二个)选通串行输入端的低电平禁止进入新数据,并把第一个触发器在下一个时钟脉冲来后复位到低电平时,门控串行输入端(A和B)可完全控制输入数据。
一个高电平输入后就使另一个输入端赋能,这个输入就决定了第一个触发器的状态。
虽然不管时钟处于高电平或低电平时,串行输入端的数据都可以被改变,但只有满足建立条件的信息才能被输入。
时钟控制发生在时钟输入由低电平到高电平的跃变上。
为了减小传输线效应,所有输入端均采用二极管钳位。
时钟(CP)每次由低变高时,数据右移一位,输入到Q0,Q0是两个数据输入端(DSA和DSB)的逻辑与,它将上升时钟沿之前保持一个建立时间的长度。
主复位(MR)输入端上的一个低电平将使其它所有输入端都无效,同时非同步地清除寄存器,强制所有的输出为低电平。
此外,选择发光二极管指示灯作为输出设备,发光二极管亮度高、工作电压低、功耗小、微型化、易与集成电路匹配、驱动简单、寿命长、耐冲击、性能稳定。
在电工仪器及控制设备中广泛用作信号、状态指示、数码显示以及各种图形显示等。
(2)软件部分
首先要对8255进行初始化。
将8255的工作方式设定为方式0,使PC口能够进行输入输出操作。
由于移位寄存器需要一个时钟信号控制数据移位,可以用PC口的的一个端口在高、低电平之间转化来编程实现,对某位由低电平跳跃至高电平一次表示一个上升沿时钟信号(电位由低到高的跃变)的输入。
二、硬件设计
1、选择芯片8255
(1)芯片8255在本次实验中的作用
8255主要用作数据的输入和输出接口,将所要执行串并转换的数据接收进来并输出到移位寄存器,通过PC口输出数据和CP时钟信号。
(2)8255的引脚及功能分析
8255是可编程并行接口,内部有3个相互独立的8位数据端口,即A口、B口和C口。
三个端口都可以作为输入端口或输出端口。
A口有三种工作方式:
即方式0、方式1和方式2,而B口只能工作在方式0或方式1下,而C口通常作为联络信号使用。
8255的工作只有当片选CS有效时才能进行。
而控制逻辑端口实现对其他端口的控制。
8255采用40脚双列直插式封装单一+5V电源,全部输入/输出均与TTL电平兼容,为可编程通用并行接口芯片。
它有24条可编程的I/O引脚,与Intel系列微处理器完全兼容,直接的位清0或置1功能,简化了接口控制。
本实验中将8255设置为方式0,PC口作为输入口,与移位寄存器相连,提供需要串并转换的数值和CP脉冲信号。
在方式0下,CPU可以采用无条件读/写方式与8255交换数据。
图1
(3)8255的技术参数
8255A的方式控制字如图所示:
图28255的方式控制字
方式0的工作特点
这种方式通常不用联络信号,不使用中断,三个通道中的每一个都有可以由程序选定作为输入或输出。
其功能为:
①两个8位通道:
通道A、B。
两个四位通道:
通道C高4位和低四位;
②任何一个通道可以作输入/输出;
③输出是锁存的;
④输入是不锁存的;
⑤在方式0时各个通道的输入/输出可有16种不同的组合。
置位/复位控制字如图所示:
图3置位/复位控制字
芯片8255A的技术参数如下图所示:
图48255A的技术参数
标识符
最小
最大
测试条件
输入低电平(VIL)
-0.5V
0.8V
输入高电平(VIH)
2.0V
5V
输出低电平(VOL)DB
0.45V
IOL=2.5mA
输出低电平(VOL)PER
0.45V
IOL=1.7mA
输出高电平(VOH)DB
2.4V
IOH=-400μA
输出高电平(VOH)PER
2.4V
IOH=-200μA
驱动电流
-1.0mA
-4.0mA
EXT=750Ω
VEXT=1.5V
供应电流
120mA
IIL(INPUTLOADCURRENT
±10μA
VIN=0V~5V
IOFL(Outputfloatleakage
±10μA
VOUT=0.45~5V
其中PER为peripheralport的缩写,
输入最低电压:
min-0.5V,max0.8V,输入最高电压:
2.0V。
输出最低电压:
0.45V
输出最高电压:
2.4V。
8255的基本操作如下表所示。
表18255的基本操作
2、芯片选择74HC164
(1)芯片74HC164在本次实验中的作用
移位寄存器74HC164在本实验中主要用来接收接口电路传递来的串行数据并将其并行输出。
(2)芯片74HC164的功能分析
串并转换原理:
把若干个触发器串接起来,就可以构成一个移位寄存器。
数据从串行输入端输入,左边触发器的输出作为右邻触发器的数据输入。
假设移位寄存器的初始状态为00000000,现将数码D7D6D5D4D3D2D1D0(11010001)从高位(D7)至低位依次送到D0端,经过第一个时钟脉冲后,Q0=D7。
由于跟随数码D7后面的数码是D6,则经过第二个时钟脉冲后,即Q1=D7,Q0=D6。
依此类推,可得8位右向移位寄存器的状态。
输入数码依次地由低位触发器移到高位触发器,作右向移动。
经过8个时钟脉冲后,8个触发器的输出状态Q7Q6Q5Q4Q3Q2Q1Q0与输入数码D7D6D5D4D3D2D1D0相对应。
这样,就可将串行输入的数码转换为并行输出的数码。
(3)芯片74HC164的技术参数
1)引脚信息
符号
引脚
说明
DSA
1
数据输入
DSB
2
数据输入
Q0~Q3
3~6
输出
GND
7
地(0V)
CP
8
时钟输入(低电平到高电平边沿触发)
/MR
9
中央复位输入(低电平有效)
Q4~Q7
10~13
输出
VCC
14
正电源罗
图574HC164引脚图
2)功能图和功能表
图674HC164功能图
图774HC164功能表
H---高电平(稳态)
L---低电平(稳态)
X---高或低
↑-----上升沿
Q0,Q1⋯Q7----在CLK时钟上升沿到来之后,寄存器输出的稳态值。
Q0n,Q1n⋯Q7n----在CLK时钟上升沿到来之前,寄存器输出的稳态值。
3、芯片选择发光管
(1)发光二极管在实验中的作用
LED发光二极管在本实验中的作用是显示移位寄存器中八个触发器的状态,显示串行数据移位后输出的结果。
(2)发光二极管的功能分析
共阳极发光管和共阴极发光管的区别:
共阳极公共端接阳极,低电平有效(灯亮),共阳极数码管内部发光二极管的阳极(正极)都联在一起,此数码管阳极(正极)在外部只有一个引脚。
共阴极公共端接阴极,高电平有效(灯亮),共阴极数码管内部发光二极管的阴极(负极)都联在一起,此数码管阴极(负极)在外部只有一个引脚。
本实验中选择共阴极发光二极管。
(3)发光二极管的技术参数
发光二极管的压降一般为1.5~2.0V,其工作电流一般取10~20mA为宜。
4.硬件总逻辑图及其说明
三、控制程序设计
1.控制程序设计思路说明
本实验是利用控制程序通过改变输出的数据来控制灯的闪烁量及闪烁次序,8255A设置为方式0,因此关键在于通过8255A将原始的数据通过PC口传达个74HC164,即串转并转换器。
在实验中8255A的PA和PB口都用做输入,PC口用作输出数据,74HC164芯片相连,提供数据输入。
2.程序流程图
8255向74HC164中传串行数据
向8255中置数
开始
8255端口初始化
74HC164移位,并行输出数据到发光二极管
结束
图8实验电路连接原理图
3、试验源程序
.MODELTINY
PCIBAR3EQU1CH;8位I/O空间基地址(它就是实验仪的基地址,也为DMA&32BITRAM板卡上的8237提供基地址)
Vendor_IDEQU10EBH;厂商ID号
Device_IDEQU8376;设备ID号
.STACK100
.DATA
IO_Bit8_BaseAddressDW?
msg0DB'BIOS不支持访问PCI$'
msg1DB'找不到StarPCI9052板卡$'
msg2DB'读8位I/O空间基地址时出错$'
COM_ADDDW00F3H;控制口偏移量
PA_ADDDW00F0H;PA口偏移量
PB_ADDDW00F1H;PB口偏移量
PC_ADDDW00F2H;PC口偏移量
.CODE
START:
MOVAX,@DATA
MOVDS,AX
NOP
CALLInitPCI
CALLModifyAddress;根据PCI提供的基地址,将偏移地址转化为实地址
MOVDX,COM_ADD
MOVAL,80H;PA、PB、PC为基本输出模式
OUTDX,AL
START1:
MOVDX,PC_ADD
MOVCX,8
T:
MOVAL,0FFH
OUTDX,AL
MOVAL,00H
OUTDX,AL
LOOPT
CALLYIDENG
CALLQUANGDENG
CALLYIJIAN
CALLERJIAN
CALLSANJIAN
CALLSIJIAN
CALLWUJIAN
CALLLIUJIAN
MOVAH,06H
MOVDL,0FFH
INT21H
JZSTART1
JMPExit
YIDENGPROCNEAR
MOVCX,2
T5:
PUSHCX
MOVAL,0FH
OUTDX,AL
MOVAL,0F0H
OUTDX,AL
MOVCX,8
T1:
MOVAL,0FFH
OUTDX,AL
MOVAL,00H
OUTDX,AL
CALLDL500ms
LOOPT1
POPCX
LOOPT5
RET
YIDENGENDP
QUANGDENGPROCNEAR
MOVCX,2
T6:
PUSHCX
MOVCX,8
T2:
MOVAL,0FH
OUTDX,AL
MOVAL,0F0H
OUTDX,AL
CALLDL500ms
LOOPT2
MOVCX,8
T4:
MOVAL,0FFH
OUTDX,AL
MOVAL,00H
OUTDX,AL
LOOPT4
POPCX
LOOPT6
RET
QUANGDENGENDP
YIJIANPROCNEAR
MOVCX,10
T3:
MOVAL,0FH
OUTDX,AL
MOVAL,0F0H
OUTDX,AL
CALLDL500ms
MOVAL,00H
OUTDX,AL
MOVAL,0FFH
OUTDX,AL
CALLDL500ms
LOOPT3
RET
YIJIANENDP
ERJIANPROCNEAR
MOVCX,5
T7:
MOVAL,0FH
OUTDX,AL
MOVAL,0F0H
OUTDX,AL
CALLDL500ms
MOVAL,00H
OUTDX,AL
MOVAL,0FFH
OUTDX,AL
CALLDL500ms
MOVAL,00H
OUTDX,AL
MOVAL,0FFH
OUTDX,AL
CALLDL500ms
LOOPT7
RET
ERJIANENDP
SANJIANPROCNEAR
MOVCX,5
T8:
PUSHCX
MOVAL,0FH
OUTDX,AL
MOVAL,0F0H
OUTDX,AL
CALLDL500ms
MOVCX,3
T9:
MOVAL,00H
OUTDX,AL
MOVAL,0FFH
OUTDX,AL
CALLDL500ms
LOOPT9
POPCX
LOOPT8
RET
SANJIANENDP
SIJIANPROCNEAR
MOVCX,5
T10:
PUSHCX
MOVAL,0FH
OUTDX,AL
MOVAL,0F0H
OUTDX,AL
CALLDL500ms
MOVCX,4
T11:
MOVAL,00H
OUTDX,AL
MOVAL,0FFH
OUTDX,AL
CALLDL500ms
LOOPT11
POPCX
LOOPT10
RET
SIJIANENDP
WUJIANPROCNEAR
MOVCX,5
T12:
PUSHCX
MOVAL,0FH
OUTDX,AL
MOVAL,0F0H
OUTDX,AL
CALLDL500ms
MOVCX,5
T13:
MOVAL,00H
OUTDX,AL
MOVAL,0FFH
OUTDX,AL
CALLDL500ms
LOOPT13
POPCX
LOOPT12
RET
WUJIANENDP
LIUJIANPROCNEAR
MOVCX,5
T14:
PUSHCX
MOVAL,0FH
OUTDX,AL
MOVAL,0F0H
OUTDX,AL
CALLDL500ms
MOVCX,6
T15:
MOVAL,00H
OUTDX,AL
MOVAL,0FFH
OUTDX,AL
CALLDL500ms
LOOPT15
POPCX
LOOPT14
RET
LIUJIANENDP
DL500msPROCNEAR
PUSHAX
PUSHDX
MOVDX,500;延时500ms
MOVAH,0FFH;星研公司提供的软中断
INT21H
POPDX
POPAX
RET
DL500msENDP
InitPCIPROCNEAR
MOVAH,00H
MOVAL,03H
INT10H;清屏
MOVAH,0B1H
MOVAL,01H
INT1AH
CMPAH,0
JZInitPCI2
LEADX,msg0
InitPCI1:
MOVAH,09H
INT21H
JMPExit
InitPCI2:
MOVAH,0B1H
MOVAL,02H
MOVCX,Device_ID
MOVDX,Vendor_ID
MOVSI,0
INT1AH
JNCInitPCI3;是否存在StarPCI9052板卡
LEADX,msg1
JMPInitPCI1
InitPCI3:
MOVDI,PCIBAR3
MOVAH,0B1H
MOVAL,09H
INT1AH;读取该卡PCI9052基地址
JNCInitPCI4
LEADX,msg2
JMPInitPCI1
InitPCI4:
ANDCX,0FFFCH
MOVIO_Bit8_BaseAddress,CX
RET
InitPCIENDP
ModifyAddressPROCNEAR
ADDCOM_ADD,CX
ADDPA_ADD,CX
ADDPB_ADD,CX
ADDPC_ADD,CX
RET
ModifyAddressENDP
Exit:
MOVAH,4CH
INT21H
ENDSTART
PS:
应该有调试过程,如何解决问题,总结和收获,不足,改进。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 转换器