计算机控制实验报告 过程接口板设计

合集下载

计算机接口技术实验报告优选全文

计算机接口技术实验报告优选全文

最新精选全文完整版(可编辑修改)《计算机接口技术》实验报告专业:电信息科学与技术班级:姓名:学号:年月日实验一:8255A并行口实验实验目的:掌握通过8255A并行口传输数据的方法,以控制发光二极管的亮与灭。

实验内容:一、实验原理实验原理图如图5-9所示,PB4 ~ PB7和PC0 ~ PC7分别与发光二极管电路L1~ L12 相连,本实验为模拟交通灯实验。

交通灯的亮灭规律如下:设有一个十字路口,1、3为南北方向,2、4为东西方向,初始为四个路口的红灯全亮,之后,1、3路口的绿灯亮,2、4路口的红灯亮,1、3路口方向通车;延时一段时间后,1、3路口的绿灯熄灭,而1、3路口的黄灯开始闪烁,闪烁若干次以后,1、3 路口红灯亮,而同时2、4路口的绿灯亮,2、4路口方向通车;延时一段时间后,2、4 路口的绿灯熄灭,而黄灯开始闪烁,闪烁若干次以后,再切换到1、3路口方向,之后重复上述过程。

8255A的PB4~ PB7对应黄灯,PC0 ~ PC3对应红灯,PC4~ PC7对应绿灯。

8255A 工作于模式0,并置为输出。

由于各发光二极管为共阳极,使其点亮应使8255A相应端口清0。

二、实验线路连接(1) CS-8255插孔连译码输出Y7插孔。

(2) L1 - PC4 L4 - PC5 L7 - PC6 L10 - PC7L2 - PB4 L5 - PB5 L8 - PB6 L11 - PB7L3 - PC0 L6 - PC1 L9 - PC2 L12 - PC3三、实验软件清单见随机光盘,文件名为H8255-2.ASM四、实验步骤1、按图5-9连好实验线路2、运行实验程序在DVCC-8086JHN上显示"8255-2"。

同时L1~L12 发光二极管模拟交通灯显示。

CODE SEGMENTASSUME CS:CODEIOCONPT EQU 0073H ;设置控制端常量IOAPT EQU 0070H ;设置数据端口A地址常量IOBPT EQU 0071H ;设置数据端口B地址常量IOCPT EQU 0072H ;设置数据端口C地址常量IOBDATA EQU 0500HCONTPORT EQU 00DFHDA TAPORT EQU 00DEHDA TA1 EQU 0640HSTART: JMP IOLEDIOLED: CALL FORMATCALL LEDDISPMOV AX,0HMOV DS,AXMOV AL,82HMOV DX,IOCONPT ;写8255控制字,三个口均工作于方式0OUT DX,AL ;往控制端口写控制字,设置A口工作在方式0输入,B方式0输出MOV DX,IOBPT ;读PB口数据存0601H单元IN AL,DXnot almov al,00hnopnopMOV BYTE PTR DS:[0501H],ALMOV DX,IOCONPT ;写方式控制字均为输出MOV AL,80HOUT DX,ALMOV DX,IOBPT ;置PB0,PB4~PB6为1,其余为0MOV AL,DS:[0501H]OR AL,0FH ;使PB0~PB3为1,PB4~PB7为0OUT DX,AL ;即熄灭红灯,点亮绿灯MOV DX,IOCPT ;使PC1,PC4~PC6为1,其余为0MOV AL,0FH ;使PC0~PC3为1,PC4~PC7为0OUT DX,ALCALL DELAY1 ;延时IOLED0: MOV AL,01011010B ;使2,4路口绿灯亮,1,3口红灯亮MOV DX,IOCPTOUT DX,ALCALL DELAY1CALL DELAY1and AL,0FH ;灭2,4路口绿灯OUT DX,ALMOV CX,8H ;只计数器值为8IOLED1: MOV DX,IOBPTMOV AL,DS:[0501H]or AL,01011111B ;点亮2,4路口黄灯OUT DX,ALCALL DELAY2 ;短暂延时and AL,00000000B ;灭掉黄灯OUT DX,ALCALL DELAY2LOOP IOLED1 ;黄灯闪烁8次MOV DX,IOCPTMOV AL,0FH ;点亮4个绿灯,灭掉4个红灯OUT DX,ALCALL DELAY2MOV AL,10100101B ;点亮1,3口红灯和2,4路口绿灯OUT DX,ALCALL DELAY1CALL DELAY1and AL,0FH ;灭掉红灯OUT DX,ALMOV CX,8HIOLED2: MOV DX,IOBPTMOV AL,DS:[0501H]or AL,10101111B ;点亮1,3路口黄灯OUT DX,ALCALL DELAY2and AL,00000000B ;灭掉黄灯OUT DX,ALCALL DELAY2LOOP IOLED2MOV DX,IOCPTMOV AL,0FH ;点亮4个绿灯,灭掉4个红灯OUT DX,ALCALL DELAY2JMP IOLED0 ;循环DELAY1: PUSH AXPUSH CX ;延时子程序MOV CX,0030HDELY2: CALL DELAY2LOOP DELY2POP CXPOP AXRETDELAY2: PUSH CXMOV CX,8000HDELA1: LOOP DELA1POP CXRETLEDDISP:MOV AL,90HMOV DX,CONTPORTOUT DX,ALMOV BYTE PTR DS:[0600H],00LED1: CMP BYTE PTR DS:[0600H],07H JA LED2MOV BL,DS:[0600H]MOV BH,0HMOV AL,CS:[BX+DATA1]MOV DX,DATAPORTOUT DX,ALADD BYTE PTR DS:[0600H],01HJNZ LED1LED2: RETFORMAT: MOV BX,0MOV WORD PTR DS:[BX+0640H],405BHADD BX,2MOV WORD PTR DS:[BX+0640H],4040HADD BX,2MOV WORD PTR DS:[BX+0640H],6D6DH ADD BX,2MOV WORD PTR DS:[BX+0640H],7F5BHRETCODE ENDSEND START实验二:定时/计数器实验目的:1. 学会8253芯片和微机接口原理和方法。

计算机控制课程实验实验报告

计算机控制课程实验实验报告

计算机控制课程实验实验报告姓名:学号:班级:实验一输入与输出通道1.A/D转换实验1.1实验内容:编写实验程序,将-5V ~ +5V的电压作为ADC0809的模拟量输入,将转换所得的8位数字量保存于变量中。

1.2实验原理:实验设备中的ADC0809芯片,其输出八位数据线以及CLOCK线已连到控制计算机的数据线及系统应用时钟1MCLK (1MHz)上。

其它控制线根据实验要求可另外连接 (A、B、C、STR、/OE、EOC、IN0~IN7)。

根据实验内容的要求,可以设计出如图1所示的实验线路图。

上图中,AD0809的启动信号“STR”是由控制计算机定时输出方波来实现的。

“OUT1”表示386EX内部1#定时器的输出端,定时器输出的方波周期=定时器时常。

图中ADC0809芯片输入选通地址码A、B、C为“1”状态,选通输入通道IN7;通过单次阶跃单元的电位器可以给A/D转换器输入-5V ~ +5V的模拟电压;系统定时器定时1ms输出方波信号启动A/D转换器,并将A/D转换完后的数据量读入到控制计算机中,最后保存到变量中。

1.3程序流程:1.4实验步骤及结果:(1) 打开联机操作软件,参照流程图,在编辑区编写实验程序。

检查无误后编译、链接。

(2) 按图1接线 (注意:图中画“o”的线需用户自行连接),连接好后,请仔细检查,无错误后方可开启设备电源。

(3) 装载完程序后,系统默认程序的起点在主程序的开始语句。

用户可以自行设置程序起点,可先将光标放在起点处,再通过调试菜单项中设置起点或者直接点击设置起点图标,即可将程序起点设在光标处。

(4) 加入变量监视,具体步骤为:打开“设置”菜单项中的“变量监视”窗口或者直接点击“变量监视”图标,将程序中定义的全局变量“AD0~AD9”加入到变量监视中。

在查看菜单项中的工具栏中选中变量区或者点击变量区图标,系统软件默认选中寄存器区,点击“变量区”可查看或修改要监视的变量。

计算机接口课程设计实验报告

计算机接口课程设计实验报告

计算机接口技术课程设计报告班级:专业:学号:姓名:报告目录结构:一、实验目的二、实验要求三、课程设计使用的设备(环境)四、实验原理:五、实验内容及大概步骤六、实验结果七、总结分析与心得一、实验目的1.在实验机上设计实现机器指令及对应的微指令(微程序)并验证,从而进一步掌握微程序设计控制器的基本方法并了解指令系统与硬件结构的对应关系;2.通过控制器的微程序设计,综合理解计算机组成原理课程的核心知识并进一步建立整机系统的概念;3.培养综合实践及独立分析、解决问题的能力。

二、实验要求针对COP2000实验仪,从详细了解该模型机的指令/微指令系统入手,以实现乘法和除法运算功能为应用目标,在COP2000的集成开发环境下,设计全新的指令系统并编写对应的微程序;之后编写实现乘法和除法的程序进行设计的验证。

三、课程设计使用的设备(环境)1.硬件COP2000实验仪 PC机2.软件COP2000仿真软件四、实验原理:1.该模型机指令系统的特点:①总体概述COP2000模型机包括了一个标准CPU所具备所有部件,这些部件包括:运算器ALU、累加器A、工作寄存器W、左移门L、直通门D、右移门R、寄存器组R0-R3、程序计数器PC、地址寄存器MAR、堆栈寄存器ST、中断向量寄存器IA、输入端口IN、输出端口寄存器OUT、程序存储器EM、指令寄存器IR、微程序计数器uPC、微程序存储器uM,以及中断控制电路、跳转控制电路。

其中运算器和中断控制电路以及跳转控制电路用CPLD来实现,其它电路都是用离散的数字电路组成。

微程序控制部分也可以用组合逻辑控制来代替。

模型机为8位机,数据总线、地址总线都为8位,但其工作原理与16位机相同。

模型机的指令码为8位,根据指令类型的不同,可以有0到2个操作数。

指令码的最低两位用来选择R0-R3寄存器,在微程序控制方式中,用指令码做为微地址来寻址微程序存储器,找到执行该指令的微程序。

而在组合逻辑控制方式中,按时序用指令码产生相应的控制位。

微型计算机原理及接口技术实验报告

微型计算机原理及接口技术实验报告
MUL
CL
ADD
AL, CH
;高4位加低4位
POP
CX
RET
BCD2BIN
ENDP
CODE
ENDS
END
START
编辑后:
编译后:
点击运行后:
运行后:
4.实验总结:
本次实验中:三个结构中数据段datasegment定义数据,堆栈段stacksegment要求存取空间,代码段codesegment编写主程序代码,用寄存器CX将,入口参数AL中存放两位BCD码,出口参数AL 中存放转换后的二进制数。首先调取存取空间,并且调用子程序,CALL指令,HLT是8086处理器处于停止状态,不执行指令,定义过程的伪指令PROC,子程序中push将把CX的值压入堆栈段,SHR逻辑右移指令,MUL的乘法指令,子程序BCD2BIN中的RET是返回指令。本实验通过对子程序的调用,以及返回等操作来实现将BCD码转换成二进制数。
ENDS
END
START
将问号改成0后编译源程序得到错误如下:
清除错误后得到
点击run
运行后得到
2. 代码转换实验
从键盘输入2个十进制数组合成压缩BCD码存入DL,再将压缩BCD码转换成ASCII码送CRT显示。
源程序:
CODE
SEGMENT
ASSUME
CS:CODE
ST:
MOV
AH, 01H
INT
4、实验总结
通过本实验:可以知道在不同的环境下运行emu8086是要注意某些问题,比如xp环境下的问号在win7下要改成0,编辑程序的框架分为三个部分数据段datasegment堆栈段stacksegment代码段codesegment。编辑好以后要点击编译必须无误后才能运行。点击运行后可以在下一个界面单步观察,AX BX CX DX CS IP SS SP BP SI DI DS ES的值的情况以便更好的了解emu8086。

微机接口实验报告8255并口控制器实验

微机接口实验报告8255并口控制器实验

微机接口实验报告8255并口控制器实验8255并口控制器实验一.实验目的:1,掌控8255的工作方式和应用领域编程;2,掌控8255的典型应用领域电路三相。

二.实验设备pc微机一台,td―pit+实验系统一套。

三.实验内容:编写程序,并使8255的a口味输入b口为输出,顺利完成敲击控制器至数据等的数据传输。

建议:只要敲击控制器,数据灯的现实就可以发生改变。

四.实验原理:并行接口就是以数据的字节为单位与i/o设备或被掌控对象之间传输信息。

cpu和USB之间的数据传输总是循序的。

8255并行控制器具有abc三个并行接口,用+5v但电源供电,能在一下三种方式下工作:方式一:基本输出|出来方式方式二:选道输出|出来方式方式三:双向选项工作方式五.实验步骤:1.证实从pc着急带出的两根扁平电缆已经相连接在实验平台上。

2.相连接实验先例参照右图:3.运行check成功内需,查看i/o空间始地址。

4.利用查出的地址编写程序,然后便于链接。

5.运行程序,拨动开关,看数据灯显示是否正确。

六.编程与调试:1.使用ckeck程序找到ioyo空间始址:dcooh2.编写程序:ioyoequodcoohaaequioyo+0*4bbequioyo+1*4ccequioyo+2*4modeequioyo+1*4stack1seqme ntstackdw256dup(?)stack1endscodeseqmentassumecs:code,ss:stack1stack:movbx,odcoohnext:movdx,bbinal,dxoutdx,almovah,1in t16hjznextmovah,40hint21hcodeendsendsstart3.编程,链接,运转程序七.实验结果:运转程序后,数据灯随着控制器的变化而变化,即为控制器拨打时,数据灯亮,控制器断裂时,数据灯攻灭。

八.实验总结:通过本次实验,对8255并口控制器存有了一定的介绍,掌控了掌控8255的工作方式和应用领域编程,掌控8255的典型应用领域电路三相。

计算机控制系统实验报告

计算机控制系统实验报告

一、实验目的1. 理解计算机控制系统的基本原理和组成;2. 掌握计算机控制系统的基本操作和调试方法;3. 通过实验,加深对计算机控制理论的理解和应用。

二、实验仪器1. PC计算机一台;2. 计算机控制系统实验箱一台;3. 传感器、执行器等实验设备。

三、实验内容1. 计算机控制系统组成与原理;2. 传感器信号采集与处理;3. 执行器控制与调节;4. 计算机控制系统调试与优化。

四、实验步骤1. 熟悉实验设备,了解计算机控制系统实验箱的组成及功能;2. 连接实验设备,检查无误后启动实验软件;3. 根据实验要求,进行传感器信号采集与处理;4. 根据实验要求,进行执行器控制与调节;5. 对计算机控制系统进行调试与优化,观察系统响应和性能;6. 记录实验数据,分析实验结果。

五、实验结果与分析1. 计算机控制系统组成与原理实验过程中,我们了解了计算机控制系统的基本组成,包括传感器、控制器、执行器等。

传感器用于采集被控对象的物理量,控制器根据采集到的信号进行计算、处理,然后输出控制信号给执行器,执行器对被控对象进行调节。

2. 传感器信号采集与处理在实验中,我们使用了温度传感器采集环境温度信号。

通过实验,我们掌握了如何将模拟信号转换为数字信号,以及如何对采集到的信号进行滤波处理。

3. 执行器控制与调节实验中,我们使用了继电器作为执行器,根据控制器输出的控制信号进行开关控制。

通过实验,我们学会了如何设置执行器的参数,以及如何对执行器进行调节。

4. 计算机控制系统调试与优化在实验过程中,我们对计算机控制系统进行了调试与优化。

通过调整控制器参数,使得系统在满足控制要求的同时,具有良好的动态性能和稳态性能。

六、实验总结本次实验使我们对计算机控制系统有了更深入的了解,掌握了计算机控制系统的基本原理和操作方法。

通过实验,我们提高了动手能力和实际操作能力,为今后从事相关领域工作奠定了基础。

七、实验报告1. 实验名称:计算机控制系统实验2. 实验日期:XXXX年XX月XX日3. 实验人员:XXX、XXX4. 实验指导教师:XXX5. 实验内容:计算机控制系统组成与原理、传感器信号采集与处理、执行器控制与调节、计算机控制系统调试与优化6. 实验结果与分析:详细描述实验过程中遇到的问题、解决方法及实验结果7. 实验心得体会:总结实验过程中的收获和体会(注:以上实验报告仅供参考,具体实验内容和结果可能因实际情况而有所不同。

计算机接口课设报告

计算机接口课设报告

简易电子琴一、设计目标运用本学期学过的接口芯片,设计一个8086微机应用系统,要求系统中除CPU以外包含三个以上芯片。

具体题目为简易电子琴,用小键盘演奏简单乐曲。

即点击对应按键,可发出不同的音阶,从而演奏音乐。

二、设计所用仪器和器件1.外设:按键扬声器示波器2.芯片:8086芯片×18253芯片×18255芯片×174HC373芯片×274HC138芯片×1三、设计内容简易电子琴,用小键盘演奏简单乐曲。

四、设计过程1.设计说明芯片对应的功能为:8255A:作为键盘接口、扬声器接口、8253芯片接口。

利用8255控制扬声器的开关状态,通过按键模拟电子琴的按键,接受按键的输入,设置不同的计数值,输出到8253中,给8253芯片设置不同的计数值。

8253:使用其分频功能,产生乐音。

接受不同的计数值,产生不同频率的波形,从而使得扬声器产生不同的频率。

此处用到其方式2。

2个74HC373芯片,1个74HC138芯片,分别作为锁存器、译码器。

它们是IO端口译码电路的重要组成成分。

2.设计方案(1)逻辑框图4×4按键8255芯片8253芯片扬声器示波器(2)程序流程图NY3.设计系统的硬件电路图硬件图设计与连接如下图延时关扬声器开始芯片初始化读取按键有无按键按下?取出音阶值设置8255口输出开扬声器4.代码设计#define TCONTRO 0A006H#define TCON0 0A000H#define TCON1 0A002H#define TCON2 0A004H#define IOCON 8006H#define IOA 8000H#define IOB 8002H#define IOC 8004H//#define feq 1000000//以下是C调低音的音频宏定义#define l_dao 382 //将“l_dao”宏定义为低音“1”的频率262Hz#define l_re 350 //将“l_re”宏定义为低音“2”的频率286Hz#define l_mi 322 //将“l_mi”宏定义为低音“3”的频率311Hz#define l_fa 287 //将“l_fa”宏定义为低音“4”的频率349Hz#define l_sao 254 //将“l_sao”宏定义为低音“5”的频率392Hz #define l_la 227 //将“l_a”宏定义为低音“6”的频率440Hz#define l_xi 202 //将“l_xi”宏定义为低音“7”的频率494Hz//以下是C调中音的音频宏定义#define dao 191 //将“dao”宏定义为中音“1”的频率523Hz#define re 170 //将“re”宏定义为中音“2”的频率587Hz#define mi 152 //将“mi”宏定义为中音“3”的频率659Hz#define fa 143 //将“fa”宏定义为中音“4”的频率698Hz#define sao 128 //将“sao”宏定义为中音“5”的频率784Hz#define la 114 //将“la”宏定义为中音“6”的频率880Hz#define xi 101 //将“xi”宏定义为中音“7”的频率523H //以下是C调高音的音频宏定义#define h_dao 96 //将“h_dao”宏定义为高音“1”的频率1046Hz #define h_re 85 //将“h_re”宏定义为高音“2”的频率1174Hz #define h_mi 76 //将“h_mi”宏定义为高音“3”的频率1318Hz #define h_fa 72 //将“h_fa”宏定义为高音“4”的频率1396Hz #define h_sao 64 //将“h_sao”宏定义为高音“5”的频率1567Hz #define h_la 57 //将“h_la”宏定义为高音“6”的频率1760Hz #define h_xi 51 //将“h_xi”宏定义为高音“7”的频率1975Hzvoid outp(unsigned int addr, char data) {// Write a byte to the specified I/O port__asm{mov dx, addrmov al, dataout dx, al}}char inp(unsigned int addr) {// Read a byte from the specified I/O portchar result;__asm{mov dx, addrin al, dxmov result, al}return result;}void delay(){unsigned char i,j;for(i=0;i<250;i++)for(j=0;j<50;j++);}unsigned chartable[16]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0x88,0x83,0xc6,0xa 1,0x86,0x8e};//按键对应的频率unsigned intcf[]={l_dao,l_re,l_mi,l_fa,l_sao,l_la,l_xi,duo,re,mi,fa,sao,la,xi,h_dao,h_re,h_ mi,h_fa,h_sao,h_la,h_xi};void display(int i){outp(IOA,table[i]);int a = cf[i];outp(TCONTRO,0x36);int ch=cf[i]/256;int cl=cf[i]%256;outp(TCON0,cl);outp(TCON0,ch);int j;for(j=0;j<4;j++)//控制节拍数delay();//延时1个节拍单位}void main(void){unsigned char i,j,k,tmp;unsigned int count; //储存定时器的定时常数unsigned int ch, cl; //储存定时器的定时常数// Write your code hereoutp(TCONTRO,0x36);//计数器0,只写计算值低8位,方式3,二进制计数outp(IOCON,0x88);outp(IOA,0xFF);while (1){j=0x0e;tmp = 0;for(k=0;k<4;k++){j-=k;if(j==0x08)j=0x07;outp(IOC,j);i=inp(IOC);i=inp(IOC);i=inp(IOC);//重复几次i|=0x0f;switch(i){//键盘演奏case 0xef:display(4*k);break;case 0xdf:display(4*k+1);break;case 0xbf:display(4*k+2);break;case 0x7f:display(4*k+3);break;}}}}5.使用说明打开文件后运行仿真。

《计算机接口与通信技术》综合实验报告

《计算机接口与通信技术》综合实验报告

《计算机接口与通信技术》综合实验报告《计算机接口与通信技术》综合实验报告院系部:专业班级:组长:组员:实验台号:指导教师:成绩:实验日期:实验1 8255A小键盘实验一. 实验目的(1)掌握8255A编程原理。

(2)了解键盘结构,学会读取键盘输入的方法。

二. 实验内容用8255A来实现一个小键盘的输入识别(用行扫描法或反转法均可)。

(1)基于图再完成下述连接,即将8255A的CS端与218~21F插孔相连,此时:8255A的端口A地址为218H端口B地址为219H端口C地址为21AH控制口地址为21BH(2)编写程序,使得在小键盘上按键后,微机屏幕上有相应字符显示出来。

三. 仪器用具四.实验接线图五. 程序设计流程图:程序代码:DA TA SEGMENTTABLE1 DW 0101H,0102H,0104H,0108H,0110H,0120H,0140H,0180HDW 0201H,0202H,0204H,0208H,0210H,0220H,0240H,0280HDW 0401H,0402H,0404H,0408H,0410H,0420H,0440H,0480H CHAR DB 'CDEFBA9845673210WXYSRPMG'MESS DB 'PRESS A KEY ON THE SMALL KEYBOARD!',0AH,0DH DB 'IT WILL DISPLAY ON THE SCREEN ! ',0AH,0DHDB 'PRESS R KEY, RETURN TO DOS !',0AH,0DH,'$' IOPORT EQU 0DC00H-200HIO8255A EQU IOPORT+218H ;8255A口IO8255B EQU IOPORT+219H ;8255B口IO8255C EQU IOPORT+21BH ;8255控制端口DA TA ENDSCODE SEGMENTASSUME CS:CODE,DS:DA TA,SS:STACKSSTART: MOV AX,DA TAMOV DS,AXMOV DX,OFFSET MESSMOV AH,09INT 21H ;显示提示信息Q1: MOV AL,82H ;送8255控制字,A出口,B入口MOV DX,IO8255COUT DX,ALQ2: MOV AL,00MOV DX,IO8255AOUT DX,AL ;A口输出行值MOV DX,IO8255BIN AL,DX ;B口读入列值AND AL,0FFHCMP AL,0FFHJZ Q2MOV BL,AL ;有键入,保存键值MOV DI,0040 ;延迟,等待释放BB: MOV CX,6000HAA: LOOP AADEC DIJNZ BBMOV DX,IO8255C ;送8255控制字,B口出,A口入MOV AL,90HOUT DX,ALMOV DX,IO8255BMOV AL,BLOUT DX,AL ;B口输出列值MOV DX,IO8255AIN AL,DX ;A口读入行值CMP AL,0FFHJNZ KEYNKEYN: PUSH AX ;去抖MOV DX,IO8255ARELEA: IN AL,DXCMP AL,0FFHJNZ RELEAPOP AXMOV AH,BL ;AH=列值,BH=行值NOT AX ;键值AX求反MOV SI,OFFSET TABLE1 ;送键值表指针MOV DI,OFFSET CHAR ;送字符表指针MOV CX,24Q4: CMP AX,[SI] ;键值查表JZ Q5ADD SI,02 ;未查到,修改表指针INC DILOOP Q4JMP Q1Q5: MOV DL,[DI] ;查到,显示该字符CMP DL,'R'JZ Q6MOV AH,02HINT 21HJMP Q1Q6: MOV AX,4C00H ;键值='R',返回DOSINT 21HCODE ENDS六.试验方法与步骤1.按实验要求连线将8255A的CS端与218~21F插孔相连2.编程,程序如上3.运行程序七.实验结果八.讨论与结论操作实验板上的小键盘按键会在计算机屏幕上进行显示,对键盘上的WXYS键都以空格响应,R退出,其余显示对应字符。

计算机工业控制实验报告

计算机工业控制实验报告

学生实验报告实验课程名称计算机工业控制技术开课实验室CAD/CAM计算机实验室《 AD和DA接口实验》实验报告四、实验步骤1.打开Keil软件,新建一个工程project2.新建一个文件,在新建文件中新建这个工程。

3. 选择Atmel中的AT98C51 。

4. 新建一个text文件并保存为C语言格式5.调整Target的Options,其中target的Xtal调整为11.0592兆赫兹,ouput中选上creat HEX File6.添加刚建好的文本文件到组(Add File to Group “Source Group 1”)7.输入程序并进行检测是否有错误或警告,直到无错误无警告为止。

8. 打开驱动器,选择STC89C52RC,打开程序文件Step1:选择单片机型号为STC89C52RCStep2:打开程序文件Step3:选择串行口为COM3,最高波特率为默认值Step4:默认选项Step5:下载,打开芯片上的开关《人机交互接口技术实验》实验报告1.打开Keil软件,关掉之前的工程,新建一个工程project2.选择Atmel中的AT89C513.新建一个Text文本,并保存为“.c”格式3.更改Target 的选项 Target 中 Xtal 为11.0592 MHZ,以及Output 中的选项4.添加刚建立的“.c”文件到组5.编写程序,然后检测程序时候有错,有错便修改程序至无错误6.打开驱动器,选择STC89C52RC,打开程序文件Step1:选择单片机型号为STC89C52RCStep2:打开程序文件Step3:选择串行口,最高波特率为默认值Step4:默认选项Step5:下载,打开芯片上的开6.按下实验芯片上的键,看显示结果是否正确,不正确在进行调试程序,修改程序等。

六、实验程序(源程序)#include<reg52.h>#define uint unsigned int //宏定义#define uchar unsigned charsbit duan=P2^6; //定义段选sbit wei=P2^7; //定义位选uchar code table[]={ //0--F显示代码case 0x77:num=16;break;}while(temp!=0xf0){temp=P3;temp=temp&0xf0;}}}return num ; /*返回num用数组代码显示出来*/}七、实验结果记录及分析答:实验程序传入芯片后,按芯片上的不同键,会显示不同的数。

计算机控制原理实验报告

计算机控制原理实验报告

计算机控制原理实验报告一、实验目的本实验旨在通过计算机控制系统的模拟,深入理解计算机控制原理,掌握计算机控制系统的基本组成、工作原理及实现方法。

通过实验,培养我们的动手能力、分析问题和解决问题的能力,为后续学习和工作打下坚实的基础。

二、实验原理计算机控制系统是一种利用计算机实现自动控制的系统,它由计算机、输入输出设备、传感器和执行器等组成。

计算机通过接收来自传感器的输入信号,根据预设的控制算法进行计算,输出控制信号到执行器,从而实现对被控对象的控制。

三、实验步骤1. 准备实验设备:计算机、传感器、执行器、被控对象等。

2. 连接实验设备:将传感器、执行器与计算机连接,并将传感器和执行器与被控对象进行连接。

3. 编写控制程序:根据实验要求,编写控制程序,实现计算机对被控对象的控制。

4. 运行实验:启动计算机,运行控制程序,观察被控对象的响应。

5. 数据记录与分析:记录实验数据,分析实验结果,评估控制性能。

四、实验结果与分析1. 数据记录:在实验过程中,记录了不同输入信号下被控对象的输出响应,以及计算机输出的控制信号。

2. 数据分析:根据记录的数据,分析被控对象的行为特性,以及控制信号对被控对象的影响。

3. 结果展示:通过图表等形式展示实验结果,对比理论分析与实践结果的一致性。

五、结论总结通过本次实验,我们深入了解了计算机控制系统的组成与工作原理,掌握了计算机控制系统的实现方法。

实验过程中,我们不仅锻炼了动手能力,还培养了分析问题和解决问题的能力。

通过数据记录与分析,我们进一步认识到了计算机控制在工业生产和生活中的应用价值。

在未来的学习和工作中,我们将继续深入研究计算机控制原理及其应用领域的相关知识,为推动科技进步和社会发展做出更大的贡献。

同时,我们也应该意识到计算机控制技术的快速发展和应用范围的广泛性,需要不断学习和掌握新技术、新方法,以适应时代的发展和社会的需求。

此外,我们也可以从实验过程中发现一些潜在的问题和挑战。

io口实验报告

io口实验报告

io口实验报告IO口实验报告引言:IO口(Input/Output Port)是计算机硬件中的一种通信接口,用于与外部设备进行数据交互。

本实验旨在通过对IO口的实际应用,深入了解IO口的原理和使用方法。

一、实验目的通过本次实验,我们的目标是掌握IO口的基本原理和操作方法,了解IO口在计算机系统中的重要性,并能够熟练地使用IO口进行数据输入和输出。

二、实验装置本次实验所需的装置包括一台计算机、IO口接口板、连接线和外部设备(如LED灯、按钮等)。

三、实验过程1. 连接IO口接口板将IO口接口板与计算机通过连接线连接好,并确保连接稳固。

接口板上通常会有标识,根据标识将连接线插入正确的接口。

2. 配置IO口参数打开计算机,并进入操作系统。

根据计算机型号和操作系统的不同,配置IO口参数的具体步骤可能会有所不同。

一般来说,可以通过设备管理器或者控制面板中的设备设置选项来进行配置。

3. 进行IO口输入实验将一个按钮连接到IO口接口板的输入端口上。

通过编写简单的程序代码,实现当按钮按下时,计算机能够读取到IO口的输入信号,并作出相应的反应,如显示一个提示信息或者改变屏幕上的图像。

4. 进行IO口输出实验将一个LED灯连接到IO口接口板的输出端口上。

通过编写程序代码,实现当计算机发出IO口的输出信号时,LED灯能够亮起。

可以尝试不同的输出信号模式,如闪烁、渐变等,以观察LED灯的不同反应。

5. 拓展实验除了按钮和LED灯,还可以尝试连接其他外部设备,如蜂鸣器、温度传感器等,以进一步探索IO口的应用。

通过编写相应的程序代码,实现与这些设备的交互,并观察其效果。

四、实验结果与分析通过以上实验操作,我们可以得到以下实验结果:1. IO口输入实验:当按下按钮时,计算机能够读取到IO口的输入信号,并作出相应的反应。

这说明IO口能够实现数据的输入,为计算机提供外部信息。

2. IO口输出实验:当计算机发出IO口的输出信号时,LED灯能够亮起。

接口课程设计实验报告(孙强)

接口课程设计实验报告(孙强)

微机接口课程设计报告——宿舍安全系统班级:计算机学院0202班姓名:孙强学号:012002013408小组成员:汪野、周远、孙强、张仲容、徐亮华中科技大学一.系统功能本系统用来验证身份。

用户从下位机刷卡进入,并录入用户名和密码。

下位机分别将用户名和密码发送给主控机,主控机验证之后,发送相应的反馈信息给下位机。

只有当用户名和密码都被确认,用户身份才合法。

合法时下位机控制发光部件亮灯提示,不合法则下位机控制发声部件鸣声警报。

二.系统设计上图中,8255是下位机控制部件的接口单元。

A口的8个引脚和控制板上的8个显示灯相连,其输出决定灯的状态;B口8个引脚和控制板上的拨码开关的8位相连,编码开关的状态可由B口读入下位机;C口的PC0,PC1,PC3分别和控制板上的SW1,SW2,S24相连,可由下位机读入各开关的状态,PC6则和喇叭相连,由PC6输出方波控制喇叭发声。

三.程序设计本次课程设计的过程中,我主要负责主控机和下位机的通讯,以及下位机对功能部件的控制这两部分的程序设计工作。

系统的模块框图由系统设计的内容可知,即8255芯片以上的部分是本系统的通讯模块框图,以下为本程序的功能模块框图。

系统的程序设计是紧密围绕系统功能进行的,程序要实现的功能就是系统的功能。

本报告开篇就指明了系统的功能,由此可知本程序的大致流程,我这里不再赘述,下面给出流程框图。

1.主控机程序流程图程序设计过程中,为了模拟用户的刷卡进入,让下位机测试控制板上的开关sw4,其按下表示有用户刷卡进入,这时就可以发送插卡信号给主控机,上图中“接收用户插卡信号”就是指这个信号。

2.下位机程序流程图下位机部分需要操作控制板,这里要用到控制板上的8为编码开关,以及开关sw1,sw2,sw4。

按下sw4表示用户插卡进入,此时拨动控制板上的编码开关,设置用户名编码,按下sw1发送给主控机,若被主控机确认,则重新拨动控制板上的编码开关设置密码,再按下sw2发送给主控机,等待主控机确认。

东南大学计算机系接口实验报告样板

东南大学计算机系接口实验报告样板

东南大学接口实验报告09006110 090061112008-12-17实验2-11.将8253计数器0设置为方式0,计数器初值设置为N(N≤0FH)。

将实验台上单脉冲接到CLK0 上,用手动逐个输入单脉冲,编程使计数值在计算机屏幕上显示(查询方式),并同时用逻辑笔观察OUT0电平变化(当输入N+1个脉冲后OUT0变高电平)。

2.实验电路3.实验程序流程图及代码#include <stdio.h>#include <conio.h>#include "ApiEx.h"#pragma comment(lib,"ApiEx.lib")void main(){BYTE data;printf("----------EXP2_1-----------\n");printf("Press any key to begin!\n\n");getch();printf("Press any key to exit!\n");if(!Startup()){printf("ERROR:Open Device Error!\n");return;}//8253片选地址为0x280PortWriteByte(0x283,0x10); //给计算器0写控制字00010000 B = 10 H PortWriteByte(0x280,0x0A); //计算器0置初值0A Hwhile(!kbhit()) //判断是否有键按下{PortReadByte(0x280,&data); //读计数器0的值Sleep(1000); //延迟一秒钟printf("%d\n",data);}Cleanup();}实验2-21. 将计数器0,计数器1分别设置为方式3,利用这两个计数器,将实验台上的一个1MHz 的方波信号分频为1Hz的方波(做好8253初始化工作),并将此方波接到L7上,观察L7 以周期为1秒的频率闪烁。

计算机接口实验报告

计算机接口实验报告

计算机组成原理与体系结构课程设计报告成评语:绩教师:年月日班级:130812学号:13081175姓名:崔愉地点:G楼524时间:11~12月周三晚实验一 51核发光二极管及按键实验一实验题目FPGA中8051核原理介绍,51核发光二极管及按键实验二实验环境G楼五层机房 Windows XP操作系统 QuartusII软件,51单片机三实验要求本实验分为两部分,首先进行51核的介绍,包含通常使用的51单片机及FPGA 中51核的原理,通过对比,了解两者的异同。

在了解了51原理后结合51核在FPGA中进行原理实现,再基于FPGA中使用工具进行51核的编程。

在开发板中进行发光二极管实验,按键实验。

具体步骤如下:1. 下载发光二极管电路图。

2. 用medwin写程序并生成目标代码。

3. 在quartus II 中下载程序运行。

4. 编写相应的程序,联合发光二极管及数码管显示。

四实验设计1.基本实验电路图:2.外部发光二极管接口电路图如下所示:3.FPGA内发光二极管引脚连接P3O[7]-----PIN 9P3O[6]-----PIN 8P3O[0]-----PIN142五实验仿真与测试1. FPGA中51核的编绎及下载(1)编绎工程。

(2)连接下载JTAG口,进行下载,点击工具条上的图标,进行下载。

(3)点Hardware Setup选择下载器,只勾上program/configure,其它不选,选start进行下载。

2. keil下51单片机编程(1) 环境建立。

打开medwin.exe,点模拟仿真项进入编程环境.(2) medwin调用keil软件的编绎器和链接器(设置-》设置编绎目录),如下图所示:(3) 新建.c文件进行程序编写(不用建立工程)。

3. keil编程语言(1)定义管脚 sbitsbit LED_0=P3^0;sbit LED_1=P3^6;sbit LED_2=P3^7;(2)定义常用unsigned char ,定义8位的字节类型数据,范围为0到255.(3)延时子程序作用(4)主程序中while(1){}控制4. 程序调试(1)编绎C程序,生成目标代码hex文件。

微机接口实验报告-8255并口控制器实验 (1)-基本输入输出实验

微机接口实验报告-8255并口控制器实验 (1)-基本输入输出实验

姓名院专业班年月日实验内容8255并口控制器实验(1) ——基本输入输出实验指导老师【实验目的】掌握8255 的工作方式及应用编程。

掌握8255的典型应用电路接法。

【试验设备】PC微机一台、TD-PIT+实验系统一套。

【实验内容】基本输入输出实验。

编写程序,使8255的A口为输出,B口为输入,完成拨动开关到数据灯的数据传输。

要求只要开关拨动,数据灯的显示就改变。

【实验原理】并行接口是以数据的字节为单位与I/O设备或被控制对象之间传递信息。

CPU和接口之间的数据传送总是并行的,即可以同时传递8位、16位、32位等。

8255可编程外围接口芯片是Intel公司生产的通用并行I/O接口芯片,它具有A、B、C三个并行接口,用+5V单电源供电,能在以下三种方式下工作:方式0--基本输入/出方式、方式1--选通输入/出方式、方式2--双向选通工作方式。

8255的内部结构及引脚如图8-1所示,8255工作方式控制字和C口按位置位/复位控制字格式如图8-2所示。

图8-1 8255的内部结构及引脚【实验说明及步骤】本实验使8255端口A工作在方式0并作为输出口,端口B工作在方式0并作为输入口。

用一组开关信号接入端口B,端口A输出线接至一组数据灯上,然后通过对8255芯片编程来实现输入输出功能。

参考程序流程如图8-3所示。

实验步骤如下。

1.确认从PC机引出的两根扁平电缆已经连接在实验平台上。

姓名院专业班年月日实验内容8255并口控制器实验(1) ——基本输入输出实验指导老师2.参考图8-4所示连接实验线路。

3.首先运行CHECK程序,查看I/O空间始地址。

4.利用查出的地址编写程序,然后编译链接。

5.运行程序,拨动开关,看数据灯显示是否正确。

(a)工作方式控制字(b)C口按位置位/复位控制字8-2 8255控制字格式姓名院专业班年月日实验内容8255并口控制器实验(1) ——基本输入输出实验指导老师图8-3 8255并口应用实验(1)参考程序流程图图8-4 8255并口应用实验(1)参考接线图【汇编源程序】CODE SEGMENT姓名院专业班年月日实验内容8255并口控制器实验(1) ——基本输入输出实验指导老师ASSUEM CS:CODESTART:MOV DX,0DC0CHMOV AL,10000010BOUT DX,ALPP:MOV DX,0DC04HIN AL,DXMOV DX,0DC00HOUT DX,ALMOV AH,1INT 16HJZ PPQUIT:MOV AH,4CHINT 21HCODE ENDSEND START【实验结果】在基本的输入输出实验中,A口的工作方式作为输入,接到开关上作为控制输入信号,而B口作为输出端连接到LED灯上可以通过灯的点亮和熄灭来判断输出信号。

计算机接口技术实验报告

计算机接口技术实验报告
movax,36h;计数器0,方式3
outdx,ax
movdx,04a0h
movax,7Ch
outdx,ax
movax,92h
outdx,ax;计数值927Ch
movdx,04a6h
movax,76h;计数器1,方式3
outdx,ax
movdx,04a2h
movax,32h
outdx,ax
movax,0;计数值32h
3.通过本实验,掌握嵌入式系统的基础开发方法,掌握本实验平台的基本开发步骤,熟悉开发软、硬件平台的使用,学会程序的单步调试运行。
二、实验设备
CPU挂箱、8086CPU模块
三、实验内容
逻辑电平开关的状态输入74LS244,然后通过74LS273锁存输出,利用LED显示电路作为输出的状态显示。
四、实验原理
2、程序框图
3、源程序
assume cs:code
code segment public
org 100h
start:movdx,04a6h;控制寄存器地址
movax,90h;设置为A口输入,B口输出
outdx,ax
start1:movdx,04a0h;A口地址
inax,dx;输入
movdx,04a2h;B口地址
实验地点
综合楼七层702室
指导教师
王峥
XXXX大学学生实验报告
学院名称
计算机科学与技术
专业班级
计算机0701
学号
07001433
学生姓名
实验日期
2010-5-11
成绩
课程名称
计算机接口技术
实验题目
8255并行口实验
一、实验目的
掌握8255A的编程原理

中山大学计算机原理-接口技术实验报告模板-实验一-实验二

中山大学计算机原理-接口技术实验报告模板-实验一-实验二

实验报告实验人:学号:日期:院(系):专业(班级):实验题目:I/O地址译码实验、简单并行接口[实验一] I/O地址译码一. 实验目的掌握I/O地址译码电路的工作原理;了解实验台结构功能及其I/O译码电路的使用方法;复习D触发器的工作原理。

二. 实验原理实验电路如图所示,其中74LS74为D触发器,可直接使用实验台上数字电路实验区的D触发器,74LS138为地址译码器。

译码输出端Y0~Y7在实验台上“I/O 地址”输出端引出,每个输出端包含8个地址,Y0:280H~287H,Y1:288H~28FH,……当CPU执行I/ O指令且地址在280H~2BFH范围内,则译码器选中,必有一根译码线输出负脉冲。

例如:执行下面两条指令MOV DX,2A0HOUT DX,AL(或IN AL,DX)Y4输出一个负脉冲。

利用这个负脉冲控制L7闪烁发光(亮、灭、亮、灭、……),时间间隔通过软件延时实现。

注意:命令中的端口地址是根据PCI卡的基址再加上偏移量计算出来的,不同的微机器PCI卡的基址可能不同,需要事先查找出来,查找方法见本书相关部分中的介绍。

三. 实验内容1、按要求连接实验台数据线,并打开TPC-USB实验机。

注意检查硬件是否连接以及驱动是否正常安装。

2、在TPC-USB集成开发环境下编写控制程序,并调试。

注意:要使译码器电路输出一个负脉冲,必须使用输入或输出指令,并且其地址为译码器输出的对应地址。

对于Y5为2A8H;实验电路中D触发器CLK端输入脉冲时,上升沿使Q 端输出高电平L7发光,CD端加低电平L7灭;为实现亮、灭、亮、灭、……程序必须循环,而且亮和灭的间隔取决于软件延迟时间(延迟通过一段循环程序实现,通过控制循环次数,使在实验所用的主机频率下,使亮灭显示非常明显清晰)程序中最好检查是否有键按下,若有,则停止循环,返回DOS。

可以通过改变连至D触发器的译码输出线以检验译码电路的输出。

四. 实验器材实验所用器材1、TPC-USB通用微机接口实验系统(包含TPC-USB实验台及对应的TPC-USB实验系统集成开发环境)2、若干导线五. 实验分析与设计编程分析:一般的CPU频率在2.0-3.0MHz左右,即处理一个数据大概花费10-7s,而人的肉眼至少要在0.1s以上才能分辨出两次闪烁,而一个ffffH的循环才仅仅是0.05s 左右,所以必须要有多个ffffH的循环,才能使得两次闪烁间隔可以被分辨。

计算机接口技术实验报告

计算机接口技术实验报告

计算机接口技术实验报告数学与计算机学院《计算机接口技术》实验报告专业: 班级: 学号: 姓名: 指导老师:实验1 定时与中断接口程序设计一实验目的1了解定时器/计数器8253、并行I/O接口8255A在PC机中的电路连接方法;2.学习使用TURBO C++对8253、8255进行编程操作;3(熟悉拦截PC机中断向量的TC++ 编程方法。

二实验内容1(8253、8255在PC/XT机中的电路连接介绍1, 8088 8253 2,D7…D0 OUT0 D7…D0 至8259 IRQ0,中断类型=8 3, RD GATE0 +5V IOR4, WR CLK0 IOW5, A0 OUT1 A0 至8237的DRAM刷新请求6, A1 GATE1 A1 +5V7, CLK18,地址OUT2 IO/M & 放大 9,译码CS GATE2 A9…A210, CLK0,1,2 40H~43H1.19MHz地址PB0译码 CS PB160H~63H 8255PC机启动后,系统设置的初始状态为:芯片有关工作方式初值运行情况通道0#:方式3(方波计数初值:OUT输出55ms方波至0000H 发生器) 8259的IRQ0 8253 通道2#:,(1KHz) 计数初值:,,(1KHz方波) (1190)PB0、PB1:方式0(简控制蜂鸣器发声。

0:不发8255 单输出) 声,1:发声 8259 IRQ0:允许中断中断类型号:8 CPU响应8号中断 2(程序要求(1)程序启动时,要求输入定时时间,以秒为单位。

(2)按秒计时,每秒到达时,在屏幕上显示当前为第几秒,同时蜂鸣器发出短促叫声;(3)当定时时间到,则显示“Time Up!”,结束程序。

三. 实验步骤1(建立源文件:启动TURBO C++3.0,建立Timer.CPP。

保存到D:\ ×(学号)\Timer.CPP;2(设置TC工作目录:选菜单Options/Directories,第1、2栏保持不变,第3、4栏填写您的文件存放目录,OK。

计算机控制实验报告过程接口板设计

计算机控制实验报告过程接口板设计

实验一:《过程接口板设计》上机报告一、设计内容设计一个32路的数据采集系统二、设计要求1、输入信号为正负5V;用查询法读取A/D的转换数;2、用Protel软件画出该数据采集板的原理线路图。

三、设计过程1、设计原理系统总框图如图所示:系统原理框图根据系统原理框图得到设计的主要组成如下:(1)多路数据输入单元。

(2)采样保持电路的A/D转换单元。

(3)硬件和单片机的连接电路。

(4)单片机输出的数据锁存和D/A转换单元。

其中设计包括:①模拟多路开关电路②运算放大电路③采样保持电路④模数转换电路⑤硬件和单片机的连接电路⑥数模转换电路⑦转换开关保护电路2、设计步骤32路数据采集系统的硬件部分:分为多路数据输入部分、采样保持部分、A/D转换部分、硬件和单片机的连接电路部分、D/A转换部分。

1)多路开关的选择多路转换开关在模拟输入通道中的作用是实现多选一操作,即利用多路转换开关将多路输入中的一路接至后续电路中。

切换过程可在CPU或数字电路的控制下完成。

常用的模拟开关大都采用CMOS工艺,如8选1开关CD4051、双4选1开关CD4052、三3选1开关CD4053等。

本实验要实现32路数据采集,则选择4片8选1的模拟开关CD4051。

CD4051由电平转换电路、译码驱动电路和CMOS模拟开关电路三部分组成。

开关部分的供电电压为V EE (低端)和V DD (高端),因此需要的控制电压为 V EE ~V DD ,电平转换电路将输入的逻辑控制电压(A 、B 、C 、INH 端)从V SS ~V DD 转换到V EE ~V DD 以满足开关控制的需要。

2)前置放大电路传感器检测出的信号一般是微弱的,不能直接用于显示、记录、控制或进行A/D 转换。

因此,在进行非电量到电量转换之后,需要将信号放大。

由于前置放大器要求输入阻抗高,漂移低、共模抑制比大,所以选用高阻抗、低漂移的运算放大器AD521作为前置放大器。

AD521的外部接线图3)采样/保持电路当输入信号为缓慢变化的信号时,在A/D 转换期间的变化量小于A/D 转换器的误差,且不是多通道同步采样时,则可以不用采样/保持电路。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

实验一:《过程接口板设计》上机报告
一、设计内容
设计一个32路的数据采集系统
二、设计要求
1、输入信号为正负5V ;用查询法读取A/D 的转换数;
2、用Protel 软件画出该数据采集板的原理线路图。

三、设计过程
1、设计原理
系统总框图如图所示:
系统原理框图 根据系统原理框图得到设计的主要组成如下: (1)多路数据输入单元。

(2)采样保持电路的A/D 转换单元。

(3)硬件和单片机的连接电路。

(4)单片机输出的数据锁存和D/A 转换单元。

其中设计包括: ① 模拟多路开关电路 ② 运算放大电路 ③ 采样保持电路 ④ 模数转换电路
⑤ 硬件和单片机的连接电路 ⑥ 数模转换电路
⑦ 转换开关保护电路 2、设计步骤
32路数据采集系统的硬件部分:分为多路数据输入部分、采样保持部分、A/D 转换部分、硬件和单片机的连接电路部分、D/A 转换部分。

1)多路开关的选择
多路转换开关在模拟输入通道中的作用是实现多选一操作,即利用多路转换开关将多路输入中的一路接至后续电路中。

切换过程可在CPU 或数字电路的控制下完成。

常用的模拟开关大都采用CMOS 工艺,如8选1开关CD4051、双4选1开关CD4052、三3选1开关CD4053等。

本实验要实现32路数据采集,则选择4片8选1的模拟开关CD4051。

CD4051由电平转换电路、译码驱动电路和CMOS 模拟开关电路三部分组成。

开关部分的供电电压为V EE (低端)和V DD (高端),因此需要的控制电压为 V EE ~V DD ,电平转换电路
将输入的逻辑控制电压(A、B、C、INH端)从V
SS ~V
DD
转换到V
EE
~V
DD
以满足开关控制的
需要。

2)前置放大电路
传感器检测出的信号一般是微弱的,不能直接用于显示、记录、控制或进行A/D转换。

因此,在进行非电量到电量转换之后,需要将信号放大。

由于前置放大器要求输入阻抗高,漂移低、共模抑制比大,所以选用高阻抗、低漂移的运算放大器AD521作为前置放大器。

AD521的外部接线图
3)采样/保持电路
当输入信号为缓慢变化的信号时,在A/D转换期间的变化量小于A/D转换器的误差,且不是多通道同步采样时,则可以不用采样/保持电路。

当控制信号U
C
为采样电平时,开
关S 导通,模拟信号通过开关S向保持电容C
H 充电,这时输出电压U
o
跟踪输入电压U
I
的变化。

当控制信号U
C 为保持电平时,开关S断开,此时输出电压U
o
保持模拟开关S断开时
的瞬时值。

为使保持阶段C
H 上的电荷不被负载放掉,在保持电容C
H
与负载之间需加一个
高输入阻抗缓冲放大器A。

采样/保持器原理图
采样/保持器的选择,是以速度和精度作为最主要的因素。

因为影响采样/保持器的
误差源比较多,所以关键在于误差的分析。

AD582它由一个高性能的运算放大器、低漏电阻的模拟开关和一个由结型场效应管集成的放大器组成。

它采用14脚双列直插式封装,其管脚及结构示意图所示,其中脚1是同相输入端,脚9是反相输入端,保持电容C
H
在脚6和脚8之间,脚10和脚5是正负电源;脚11和脚12是逻辑控制端;脚3和脚4接
直流调零电位器;脚2,7,13,14为空脚(N
C
)。

AD582管脚图
由于AD582的以上特征,所以选择AD582采样保持器。

下图为AD582的连接图。

4)模/数转换电路
A/D转换器是数据采集系统的关键器件,选择A/D转换器时,要根据系统采集对象的
性质来选择其类型。

多通道共享采样/保持器与A/D转换器图
A/D转换器的选择
模数转换电路的作用是把模拟信号转化数字信号。

模/数转换电路选取逐次逼近型12位模数转换器AD574,并用一片8位D锁存器74LS373构成系统控制寄存器,进行数据采集。

地址译码器由一片74LS138(3-8 译码器)以及门电路组成。

AD574的工作方式
双极性模拟输入有两种量程:-5V~+5V量程从13引脚输入;-10V~+10V量程从引脚14输入。

此实验中的AD574采用双极性工作方式,连接方法如图所示。

双极性偏移调节端BPLRof通过电位器W
2
接至参考电压输出端REF OUT以取得10V的偏移电压,参考电压输
入端REF IN通过电位器W
1接至参考电压输出端REF OUT。

W
1
和W
2
均为100欧姆电位器,
用来调整零位和满量程。

5)AD574与单片机的接口电路
AD574的内部具有三态输出缓冲器,因此可以与单片机直接接口。

AD574与单片机的接口电路如图所示。

AD574与单片机的接口
该电路采用双极性输入方式,可对-5V~+5v或-10V~+10V模拟信号进行转换。

双极性偏移调节端BIP OFF接至参考电压输出端REF OUT以取得10V的偏移电压。

均为100欧姆电位器,用来调整零位和满量程。

AD574的状态信号STS与AT89S51的P
1.0
端相连,采用查询判断A/D转换是否结束。

AT89S51的控制线RD和WR通过与非门接AD574的CE端。

AT89S51的P
0.0
通过锁存器
74LS373和非门接AD574的A
0。

AT89S51的P
0.1
通过锁存器74LS373接AD574的R/C端来
控制AD574的转换状态和读取转换结果。

AD574片选端CS端由译码器74LS138的译码信号来控制。

AD574的12/8接数字地。

设A/D全12位转换,要求启动转换时,A
0=0,即P
0.0
=0;R/C=0,即P
0.1
=0。

故可确定
启动转换时的端口地址为0F9H 。

因为12/8接地,所以A/D 转换结果分两次读出,高8位从D 11~D 4读出,低4位从D 3~D 0读出。

读高8位结果时,要求A 0=0,R/C=1;读低4位结果时,要求A 0=1,R/C=1。

两次读出结果的端口地址分别为0FBH 和0FAH 。

6)、D/A 转换器接口电路设计
若应用系统中只有一路D/A 转换或虽然有多路转换,但并不要求同步输出时,则可以选择单缓冲接口方式。

在单缓冲接口方式下,ILE 接+5V 始终保持有效,由写信号控制数据的锁存,1WR 和2WR 相连,接单片机的WR ,数据同时写入两个寄存器。

传送允许信号XFER 与CS 片选相连,选中DAC0832后,写入数据立即启动转换。

四、设计结果
单片机有4个并行I/O 口。

本设计采用P0口作为AD574和DAC0832的数据输入口。

P1.0接AD574的STS 用来指示AD574是否转换完成,89S51的RD 和WR 通过与非门接AD574的CE 端,用来使能AD574的数据输出。

74LS138的Y5端接两片DAC0832的XFER 作为传送控制信号,89S51的WR 接两块DAC0832的WE1,WE2。

74LS138的片选接74LS373的LE ,AD574的片选,两片DAC0832的片选,用74LS139作为四片CD4051的片选。

单片机控制的多路数据采集系统硬件电路图如下页所示。

相关文档
最新文档