文档库 最新最全的文档下载
当前位置:文档库 › 实验二_A_D接口实验

实验二_A_D接口实验

实验二_A_D接口实验
实验二_A_D接口实验

实验二 A/D转换

一、实验目的

了解在l inux 环境下对S3C2410 芯片的8通道10 位A/D 的操作与控制。

二、实验内容

学习A/D 接口原理,了解实现A/D 系统对于系统的软件和硬件要求。阅读A RM 芯片文档,掌握A RM 的A/D 相关寄存器的功能,熟悉A RM 系统硬件的A/D 相关接口。利用外部模拟信号编程实现A RM 循环采集全部前4路通道,并且在超级终端上显示。

三、实验设备及工具

硬件:UP-TECH S2410/P270 DVP 嵌入式实验平台、PC 机P entium 500 以上, 硬盘10G 以上。软件:PC 机操作系统R EDHAT LINUX 9.0+MINICOM+ARM-LINUX 开发环境

四、实验原理

表2.4.1 采样控制寄存器的

设置

寄存器地址读/写描述复位值ADCCON0x58000000R/W ADC 控制寄存器0x3FC4

表2.4.2 采样控制寄存器的位

描述

ADCCON位描述初始设置

ECFLG[15]End of conversion flag (read only).

0 = A/D conversion in process

1 = End of A/D conversion

PRSCEN[14]A/D converter prescaler enable.

0 = Disable

1 = Enable

PRSCVL[13:6]A/D converter prescaler value.

Data value: 1 ~ 255

Note that division factor is (N+1) when the prescaler value is

0xFF

SEL_MUX[5:3]Analog input channel select. 000 = AIN 0

001 = AIN 1

010 = AIN 2

011 = AIN 3

100 = AIN 4

101 = AIN 5

STDBM[2]Standby mode select.

0 = Normal operation mode

1 = Standby mode

1

READ_ START [1]

A/D conversion start by read.

0 = Disable start by read operation

1 = Enable start by read operation

ENABLE_ START [0]

A/D conversion starts by setting this bit.

If READ_START is enabled, this value is not valid.

0 = No operation 1 = A/D conversion starts and this bit is

该寄存器的0位是转换使能位,写1表示转换开始。1 位是读操作使能转换,写1表示转

换在读操作时开始。3、4、5 位是通道号。[13:6]位为A D 转换比例因子。14 位为比例因

子有效位,15 位为转换标志位(只读)

表2.4.3A/D转换结果数据寄存器的

设置

寄存器地址读/写描述复位值ADCDAT00x5800000C R ADC转换数据寄存器-ADCDAT0:转换结果数据寄存器。该寄存器的十位表示转换后的结果,全为1时为满量程3.3 伏。

A/D 转换器在扩展板的连接

A/D 转换器在扩展板的接法如图2.4.2 所示,前三路通过电位器接到3.3v 电源上。

图2.4.2 A/D 转换器在扩展板上的

接法

五、实验步骤

1、阅读理解源码

进入/arm2410cl/exp/basic/04_ad 目录,使用v i 编辑器或其他编辑器阅读理解源代码。

2、编译应用程序

运行m ake 产生a d 可执行文件

[root@zxt /]# cd /arm2410cl/exp/basic/04_ad/

[root@zxt 04_ad]# make

armv4l-unknown-linux-gcc -c -o main.o main.c

armv4l-unknown-linux-gcc -o ../bin/ad main.o

-lpthread armv4l-unknown-linux-gcc -o ad main.o

-lpthread [root@zxt 04_ad]# ls

ad hardware.h main.o Makefile.bak s3c2410-adc.h

3、下载调试

换到m inicom 终端窗口,使用N FS mount 开发主机的/mnt/nfs 到/host 目录。

[root@zxt root]#

minicom

[/mnt/yaffs] mount -t nfs -o nolock 192.168.0.2:/mnt/nfs /host

[/mnt/yaffs]insmod ad/s3c2410-adc.o

[/mnt/yaffs]cd /host/exp/basic/04_ad/

[/host/exp/basic/04_ad]./ad

Press Enter key exit!

a0= 0.0032 a1= 3.2968 a2= 3.2968

我们可以通过调节开发板上的三个黄色的电位器,来查看a0、a1、a2 的变化。

4、下载调试

简单并行接口实验编程

实验二简单并行接口 一、实验目的 掌握简单并行接口的工作原理及使用方法。 二、实验内容 1、按下面图2-1简单并行输出接口电路图连接线路(74LS273插通 用插座,74LS32用实验台上的“或门”)。74LS273为八D触发器,8个D输入端分别接数据总线D0~D7,8个Q输出端接LED显示电路L0~L7。 2、编程从键盘输入一个字符或数字,将其ASCⅡ码通过这个输出 接口输出,根据8个发光二极管发光情况验证正确性。 3、按下面图2-2简单并行输入接口电路图连接电路(74LS244插通 用插座,74LS32用实验台上的“或门”)。74LS244为八缓冲器,8个数据输入端分别接逻辑电平开关输出K0~K7,8个数据输出端分别接数据总线D0~D7。 4、用逻辑电平开关预置某个字母的ASCⅡ码,编程输入这个ASCⅡ码,并将其对应字母在屏幕上显示出来。 三、编程提示 1、上述并行输出接口的地址为2A8H,并行输入接口的地址为2A0H,通过上述并行接口电路输出数据需要3条指令: MOV AL,数据 MOV DX,2A8H

OUT DX,AL 通过上述并行接口输入数据需要2条指令: MOV DX,2A0H IN AL,DX 图2-1

图2-2 ls273 equ 2a8h code segment assume cs:code start: mov ah,2 mov dl,0dh int 21h mov ah,1 int 21h cmp al,27 je exit mov dx,ls273 out dx,al jmp start exit:mov ah,4ch int 21h code ends end start

微机原理与接口技术实验报告

微机原理与接口技术实验报告 班级:自动化(铁道信号) 姓名: ***** 学号: 1121**** 授课教师:福恩

目录 1.实验一 (3) 2. 实验二 (8) 3.实验三 (13) 4.实验四 (22) 5.实验五 (26) 6.实验六 (33) 7.参考文献 (38)

实验一交通灯控制实验 一.实验目的 通过应用接口技术设计十字路口、复杂路口交通灯控制系统,学会应用“微机原理与接口技术”课程所学的X86汇编语言和接口技术掌握可编程并行接口芯片的硬件设计、软件编程,实现十字路口交通灯的模拟控制并思考计算机如何应用在各种控制系统中。 (1)掌握利用X86汇编语言技巧 (2)掌握X86微处理器与可编程并行接口芯片8255A硬件电路设计 (3)熟悉模拟交通灯控制的实现方法并思考如何应用在实际中。 二.实验容 设计一个交通控制系统,该控制系统工作后,交通灯按照如下规律变化: (1)南北路口的绿灯、东西路口的红灯同时亮3秒左右。 (2)南北路口的黄灯闪烁若干次,同时东西路口的红灯继续亮。 (3)南北路口的红、东西路口的绿灯同时亮3秒。 (4)南北路口的红灯继续亮、同时东西路口的黄灯亮闪烁若干次。 (5)返回(1)依次循环。 三.实验电路 如下图,L7、L6、L5作为南北路口的交通灯与PC7、PC6、PC5相连,L2、L1、L0作为东西路口的交通灯与PC2、PC1、PC0相连。编程使六个灯按交通灯变化规律燃灭。 8255动态分配地址: 控制寄存器:0EC0BH A口地址: 0EC08H C口地址: 0EC0AH

红黄绿红黄绿 图1-1 交通灯实验电路图四.程序流程图 五.源程序 CODE SEGMENT ASSUME CS:CODE ;********************************** 工作状态控制字设置 START: MOV DX,0EC0BH ;写控制端口,地址0EC0BH MOV AL,10010000B ;C口方式0输出 OUT DX,AL

实验2-循环结构

实验2 循环结构 程序填空 1. 题目描述:马克思曾经出过这样一道趣味数学题:有30个人在一家小饭馆里用餐,其中有男人、女人和小孩。每个男人花了3先今,每个女人花了2先令,每个小孩花了1先令,一共花去50先令。问男人、女人以及小孩各有几个人。以下是完成此项工作的程序,请将未完成的部分填入,实现其功能,并在计算机上调试程序,以测试填入的部分是否正确。代码: #include using namespace std; int main() { int n; //n记录解的个数 int a,b,c; //分别记录男、女、小孩的人数 n=0; //初始化n的值 for(a=1;a<=30;a++) { for(b=1;b<=30;b++) { c=30-a-b; if(3*a+2*b+c==50) { cout<<"男人有:"< using namespace std; int main() { int n, k=1, s=0, m ; for (n=1 ; n<=100 ; n++) { k=1 ; s=0 ; m=n; while (m>=1&&m<=100 )

单片机并行口实验报告

单片机并行口实验报告

实验二并行口实验报告 班级: 学号: 姓名: 教师:

一、实验目的 通过实验了解8051并行口输入方式和输出方式的工作原理及编程方法。 二、实验内容 1、输出实验 如图4-1所示。以8031的P2口为输出口。通过程序控制发光二极管的亮灭。 2、输入实验 如图4-1所示。以8031的P1口为输入口。用开关向P1.0~P1.3输入不同的状态,控制P2口P2.4~P2.7发光二极管的亮灭。 3、查询输入输出实验 如图1-1所示。以8051的P1.6或P1.0为输入位,以P2口为输出,二进制计数记录按键的次数。

图1-1 三、编程提示 1、输出实验程序 (1)设计一组显示花样,编程使得P2口按照设计的花样重复显示。 (2)为了便于观察,每一状态加入延时程序。 2、输入实验程序 开关打开,则输入为1;开关闭合,则输入为0。读取P1.0~ P1.3的状态,并将它们输出到P2.4~ P2.7,驱动发光二极管。所以发光二极管L1~L4的亮灭应与开关P1.0~ P1.3的设置相吻合。 3、查询输入输出程序 (1)编程计数P1.0按键次数,按键不去抖动。 (2)编程计数P1.6按键次数,按键不去抖动。 (3)编程计数P1.0按键次数,按键软件延时去抖动。 观察(1)、(2)、(3)、的结果。 四、实验器材 计算机,目标系统实验板 五、实验步骤 1、在KEILC中按要求编好程序,编译,软件调试,生成.HEX文件。 2、断开电源,按图1-1所示,连好开关及发光二极管电路。

3、下载程序。 4、调试运行程序,观察发光二极管状态。 六、C源程序清单 1、#include #define uchar unsigned char #define ON 0 #define OFF 1 sbit led1=P2^0; sbit led2=P2^1; sbit led3=P2^2; sbit led4=P2^3; sbit led5=P2^4; sbit led6=P2^5; sbit led7=P2^6; sbit led8=P2^7; void delay1(void); void main(void) { led1=led2=led3=led4=led5=led6=led7=led8=O FF; while(1) { led1=led8=ON; delay1(); led2=led7=ON;

单片机原理及其接口技术实验报告

单片机原理及其接口技术实验指导书 实验1 Keil C51的使用(汇编语言) 一.实验目的: 初步掌握Keil C51(汇编语言)和ZY15MCU12BD型综合单片机实验箱的操作和使用,能够输入和运行简单的程序。 二.实验设备: ZY15MCU12BD型综合单片机实验箱一台、具有一个RS232串行口并安装Keil C51的计算机一台。 三.实验原理及环境: 在计算机上已安装Keil C51软件。这个软件既可以与硬件(ZY15MCU12BD型综合单片机实验箱)连接,在硬件(单片机)上运行程序;也可以不与硬件连接,仅在计算机上以虚拟仿真的方法运行程序。如果程序有对硬件的驱动,就需要与硬件连接;如果没有硬件动作,仅有软件操作,就可以使用虚拟仿真。 四:实验内容: 1.掌握软件的开发过程: 1)建立一个工程项目选择芯片确定选项。 2)加入C 源文件或汇编源文件。 3)用项目管理器生成各种应用文件。 4)检查并修改源文件中的错误。 5)编译连接通过后进行软件模拟仿真。 6)编译连接通过后进行硬件仿真。 2.按以上步骤实现在P1.0输出一个频率为1Hz的方波。 3.在2的基础上,实现同时在P1.0和P1.1上各输出一个频率同为1Hz但电平状态相反的方波。 五:程序清单: ORG 0000H AGAIN:CPL P1.0 MOV R0,#10 ;延时0.5秒 LOOP1:MOV R1,#100 LOOP2:MOV R2,#250 DJNZ R2,$ DJNZ R1,LOOP2 DJNZ R0,LOOP1 SJMP AGAIN END 六:实验步骤: 1.建立一个工程项目选择芯片确定选项 如图1-1所示:①Project→②New Project→③输入工程名test→④保存工程文件(鼠标点击保存按钮)

实验07 循环结构程序设计(二)

实验七循环结构序程序设计(二) 循环结构是三种基本程序结构之一,是用于解决复杂问题的一类程序结构。在实验六中已经学习了循环结构的基本概念,以及DO循环语句和DO WHILE循环语句的基本功能和使用规则,但这仅是循环结构的基本内容,还需要学习和掌握循环结构的综合应用,以及更复杂的循环结构,用于解决更复杂的问题。 循环结构允许嵌套,嵌套的循环结构称为多重循环,即一个循环结构的循环体中包含另一个循环结构,根据实际需要可使用多层嵌套。FORTRAN90新增了强制性终止循环语句CYCLE 和EXIT,使用这两条语句可在循环体执行过程中提前终止本次循环或者整个循环。这两条语句的使用虽然不符合结构化程序设计思想,但使用得当,可使用程序简洁、短小、高效。 本次实验是学习和掌握循环结构的综合应用的一次实系统验活动。通过本次实验,能够设计和编写比较复杂的循环结构程序。 一.实验目的 1.进一步掌握三种基本循环结构的使用。 2.掌握强制性终止循环语句EXIT和CYCLE的基本功能和使用规则,以及相互区别。 3.掌握嵌套循环结构概念和应用。 4.掌握顺序结构、选择结构和循环结构相互嵌套和综合应用。 5.掌握设计和编写较复杂程序的基本技能。 二.实验内容1 1.问题描述 公元五世纪末,我国古代数学家张丘建在《算经》中提出了“百钱买百鸡问题”:“鸡翁一,值钱五;鸡母一,值钱三;鸡雏三,值钱一。百钱买百鸡,问公鸡、母鸡、小鸡各几何?”意思是:公鸡每只5元,母鸡每只3元,小鸡一元三只。100元买100只鸡。公鸡、母鸡、小鸡各买多少只?编写程序实现之。 2.算法设计 求解本题,有两个限定条件:其一是所有的鸡共计100只;其二是所有买鸡的钱共计100元。根据这两个条件可列出下面两个方程式:(设公鸡、母鸡和小鸡数分别为x、y、z) x+y+z=100 5x+3y+z/3=100 这是一个三元一次方程组,但是其限定条件也就是方程式只有两个,这就意味着它是一个多解题。求解该问题,有多种解法,可利用计算机快速计算的特点采用试探法求解该问题。

PC机并行接口

在PC机开始流行的几年前,Centronics公司制造出售过一种使用简单并行总线接口的打印机,这种并总线用于将一台计算机的数据传送到一台打印机上,同时它还能检测打印机的状态,一直到打印机空闲时才继续传送其它数据。后来这种形式被很多打印机制造商和外设商所采用,很快就被制定为工业标准。随着不同的接口形式在PC机中被应用,这种并行接口也一直不断的改进。现在的PC 电脑都会配备一个25针的并行接口,也称LPT口或打印接口,它现在一般都支持IEEE1284标准中定义的三种并行接口模式,分别为SPP(Standara Parallel Port)标准并行接口,EPP(Enhanced Parallel Port)增强并行接口,ECP (Extended Capabilities Port)扩展功能并行接口。ECP模式除了拥有双向数据传输的支持它还有特扩展的寄存器控制功能,使得传输速度从SPP模式的50K Bit/秒提升到2MB/秒。并行接口通常用于连接打印扫描设备或其它要求并行传输的外部设备。如果我们了解它的工作原理和编程方法,就可以把方便用于电子制作中,用它进行数据传输或实现自动控制。下面将以一个简单实例──简易8位LED数字显示牌,来说明PC机标准并行接口(SPP)的基本工作原理和编程方法。 制作实例 现在电脑已经是很普及的了,一些小型或个体商店也会用到电脑去处理进销存的账目,在一些场合中往往要让客人当场直观地知道要支付的金额或让客人查询商品的售价,这时就需要超市POS系统中的LED报价牌,但它的整个价格很高,我们在这里实验一个用电脑并口直接控制的简易8位LED数字显示牌,以此帮助大家更容易的理解电脑并行接口标准模式的基本工作原理。 先来看看要用到的元器件。请看图一和表一,图中就是部分的元件,它要用的元件确实很少,甚至没有用到一个电阻。为了简化电路和充分利用电脑的接口,这里选用了USB取电,把USB连线的一头剪下,可以看到有红黑绿白,四根不同颜色的线,黑色为地线,红色为+5V,其余为信号线不选用(焊接操作时应小心不要把它接反在电路上,避免损坏USB口和并口可以加整流二极管以防反接)。共阳极双七段LED的引脚定义请看图三左半部,而右半部是测量其好坏的示意图,数字万用表打到测二极量档,这时红表笔有一个正电压(普通万用表则可以使用电阻档,黑表笔有正电压),用红表笔接触LED阳极V(Vcc),黑表笔分别

接口实验报告

实验一 8255A 与开关电路的实验 一、实验目的 (1)掌握8255A 并行接口芯片的原理及编程方法; (2)掌握读取开关状态的方法。 二、实验内容 编写程序,通过8255A 接口芯片,读取开关状态,并在计算机屏幕上显示出来。 三、线路连接 实验中共有8个逻辑开关,与8255A 端口C 的 PC 7~PC 0连接。线路连接如图4.1所示。开关向上拨时,8255A 相应的端口输出高电平“1”,开关向下拨时,相应端口输出低电平“0”。 四、编程提示 设置控制字,使8255A 工作在方式0,端口C 为输入 CPU 通过端口C 将K 7~K 0的状态读入,然后转换成ASCII 码,并在主机显示显示。 五、流程图 程序流程如图4.2所示。 1)连接试验台线路(在试验台和主机没有通电之前,按照实验连接图, 将图中虚线用导线连接好。) 2)打开主机进入DOS 环境 3)编辑、汇编、链接汇编语言程序 4)打开扩展卡I/O 端口地址(a )进入DOS 全屏模式;b )run 文件) 5)运行和调试汇编程序(试验箱通电,直接运行汇编、链接所产生的可 执行文件。 七、实验结果 1)

八、思考题 如果将8255A端口B设为输入方式,与开关K7~K0连接,控制字应如何设置? 程序又应该如何修改? 答:工作方式控制字设置为82H。程序修改如下: 首先将IO8255C EQU IOPORT+282H 修改为 IO8255B EQU IOPORT+281H 将8255A工作方式控制字端口程序改为如下: MOV DX , IO8255T MOV AL , 82H OUT DX , AL 将输入设置为B口 MOV DX , IO8255B IN AL , DX

实验2-循环结构程序设计

实验2 循环结构程序设计 一、实验目的 1.学习循环语句for、while和do-while语句的使用方法。 2.学习用循环语句实现各种算法,例如穷举法、迭代法等。 3.进一步熟悉C语言集成环境的使用方法 二、实验内容 1.用while循环实现数据统计问题。:从键盘输入一批任意数量的整数,统 计其中不大于100的非负数数值的个数。 2.编写并调试程序,使用do-while循环控制语句实现上面的数据统计问 题。调试数据仍参照上面给出的几种情况设计使用。 3.编写并调试程序,使用for循环控制语句实现上面的数据统计问题。 4.阶乘累加问题。编写程序,求1+2!+3!+…+n!的值。 三、实验指导 1.用while循环实现数据统计问题。 ?编程分析 由于输入数据个数是不确定的,因此每次执行程序时,循环次数都是不确定的。在进行程序设计时,确定循环控制的方法是本实验的一个关键问题。循环控制条件可以有多种确定方法: (1).使用一个负数作为数据输入结束标志。 (2).输入一个数据后通过进行询问的方式决定是否继续输入下一个数 据。 ?参考程序 参考程序一 /* 使用负数作为数据输入结束标志的程序 */ #include "stdio.h" void main()

{ int m,counter=0; while(1) { printf("请输入一个整数:"); scanf("%d",&m); if(m<0) break; if(m<=100) counter++; printf("\n"); } printf("符合要求的整数个数为: %d\n",counter); } 参考程序二 /* 通过进行询问的方式决定是否继续输入下一个数据的程序 */ #include int main() { int m,counter=0; char ask; while(1) { printf("请输入一个整数:"); scanf("%d",&m); getchar(); if(m>=0&&m<=100) counter++; printf("继续输入下一个数据?(Y/N)"); ask=getchar();

实验四、简单并行接口

实验四简单并行接口 一.实验目的 1.掌握简单并行接口的工作原理及使用方法 2.掌握I/O端口地址的含义 二.实验内容 1.要确定当前微机中pci卡的资源 因为pci总线结构支持p&p即插即用功能,每台微机分配给pci扩展板的资源是动态浮动的,不像isa总线是固定死的,因此分配给设备的i/o基地址、mem基地址空间及int中断号会因为不同的微机而变化,所以实验前需要确定当前微机中pci卡的资源,具体步骤如下: 启动微机并打开“控制面板”-〉“系统”-〉“设备管理器”并查到“微机原理教学实验装置”。 打开TPC并选择“资源”。如下图所示:

请记录下所有的资源数据,并填入表格,例如这是某次实验所得到数据: 我们编写的程序中能够使用的地址线是通用微机接口实验板系统总线“A9~A0”。由于实验系统总线并不是直接与PC机的地址线相连,因此实验系统总线所对应的地址与PC机I/O口的物理地址有如下关系: PC机I/O物理地址=A -280H+实验板系统总线所对应的地址 其中A是表1 为安全起见,实验系统总线所对应的地址应选择实验台上已经经过译码的地址,即280H~287H,288H~28FH,290H~297H,298H~29FH,2A0H~2A7H,2A8H~2AFH,2B0H~2B7H,2B8H~2BFH共8个可供实际使用的地址。但经过测试,以280H~287H,288H~28FH地址最可靠。推荐使用这两个地址。 2.按下面图3-1简单并行口输出接口电路连接线路(74LS244已经插在通用插座上,请勿取下)。编程实现彩灯输出效果。

图3-1 并行输出接口电路 特别提示:(1) 74LS244中GND必须接地,VCC必须接+5V! (2) IOW*即是CPU的WR*信号。 (3)74LS244中1GN*和2GN*相当于课堂上的CS*信号。 3.按下面图3-2简单并行口输入接口电路连接线路(74LS244已经插在通用插座上,请勿取下),利用8个开关预置某个字母的ASCII 码(查书本的ASCII 码表),编程实现CPU读入这个ASCII码,并将其对应的字符显示在屏幕上。

计算机输入输出系统_接口实验报告

计算机输入输出系统接口实验报告 姓名: 学号: 东南大学计算机科学与工程学院、软件学院 School of Computer Science & Engineering College of Software Engineering Southeast University 二0 16 年 6 月

实验一环境熟悉与I/O地址译码 一、实验目的 掌握I/O地址译码电路的工作原理。 二、实验内容 将接口实验包中所带的EX-138.DSN文件用ISIS 7打开。改变A9~A3的接线方法,从而得到Y0;388H~38FH;Y1:398H~39FH; ……;Y7:3F8H~3FFH。并修改上一问的程序,以同样使得Y4#有效。 1)源程序 .8086 .MODEL SMALL .stack .data address word 3c8h .code start: mov ax,@data mov ds,ax mov dx,address mov al,0 out dx,al jmp $ END start 2)电路原理图(138译码部分)

3)运行结果贴图(138译码及上面两个273的输出)

实验二可编程中断控制器8259 一、实验目的 1.掌握8259的基本工作原理和编程方法。 2.深入了解中断的概念和实地址模式下中断处理程序的编写方法。 二、实验内容 将接口实验包中所带的EX-8259.DSN文件用ISIS 7打开。按手册接线并执行。运行结果贴图(执行三次中断,每次中断后的8086寄存器的截图) ……

实验三可编程定时器计数器8253 一、实验目的 掌握8253的基本工作原理、编程方法及其应用。 二、实验内容 一)研究定时计数器(选) 1)源程序 .8086 .MODEL SMALL .DATA .CODE START:MOV AX,@DATA MOV DS,AX MOV DX,226H MOV AL,00010000B ;T/C0,least significant byte only,mode0,Binary OUT DX,AL MOV AL,5 ;Initial count=5 MOV DX,220H OUT DX,AL MOV AH,4CH INT 21H END START 2)讨论题 如果把方式0改成方式1,电路不动,则按下BUTTON后,计数器值会否减1?为什么? 不会,因为方式1下GATE=1或0没有影响,只有GATE的上升沿才会触发计数器开始计数,而该电路中GATE时钟为1,所以计数器不会减1. 二)信号发生器 1)源程序 .8086 .MODEL SMALL .DATA .CODE START:MOV AX,@DATA MOV DS,AX ;Initailize T/C0 MOV DX,226H MOV AL,00110110B ;T/C0,least significant byte first,mode3,binary OUT DX,AL MOV DX,220H MOV AX,1000 ;Initial count=1000 OUT DX,AL MOV AL,AH

计算机组成原理与接口技术实验报告

计算机组成原理与接口技术 课程设计实验报告 学院:计算机科学与工程 专业:计算机科学与技术 班级:计科二班 学号: 姓名: 指导老师: 评分: 2016年12月28日

实验一验证74LS181运算和逻辑功能 1、实验目的 (1)掌握算术逻辑单元(ALU)的工作原理; (2)熟悉简单运算器的数据传送通路; (3)画出逻辑电路图及布出美观整齐的接线图; (4)验证4位运算功能发生器(74LS181)组合功能。 2、实验原理 ALU能进行多种算术运算和逻辑运算。4位ALU-74LS181能进行16种算术运算和逻辑运算。 74ls181芯片介绍: 该芯片总共由22个引脚,其中包括8个数据 输入端(~A0、~A1、~A2、~A3,~B0、~B1、~B2、 ~B3,其中八个输入端中A3和B3是高位),这八 个都是低电平有效。还包括S0、S1、S2、S3这四 个控制端,这四个控制端主要控制两个四位输入 数据的运算,例如加、减、与、或。CN端处理进 入芯片前进位值,M控制芯片的运算方式,包括 算术运算和逻辑运算。F0、F1、F2、F3是四个二 进制输出端,以一个四位二进制形式输出运算的 结果。CN4记录运算后的进位。

3、实验内容 实验电路图:

4、总结及心得体会 本实验通过一个设计一个简单的运算器,使我熟悉了Multisim软件的一些基本操作方法,并掌握了一些简单的电路设计与分析的能力,并对我做下一个运算器的实验有一定的帮助。因为是之前实验课做过的实验,再次做起来过程比较流畅,没有遇到什么大的问题,实验的测试结果与预期的一致。 该芯片总共由22个引脚,其中包括8个数据输入端(~A0、~A1、~A2、~A3,~B0、~B1、~B2、~B3,其中八个输入端中A3和B3是高位),这八个都是低电平有效。还包括S0、S1、S2、S3这四个控制端,这四个控制端主要控制两个四位输入数据的运算,例如加、减、与、或。CN端处理进入芯片前进位值,M控制芯片的运算方式,包括算术运算和逻辑运算。F0、F1、F2、F3是四个二进制输出端,以一个四位二进制形式输出运算的结果。CN4记录运算后的进位。其中AEQB、~P和~G这三个端口与本实验无关,所以这里不做额外介绍。

8255并行口实验实验报告

8255并行口实验实验报告 作者: 一、实验目的 掌握8255A的编程原理。 二、实验设备 CPU挂箱、8086CPU模块。 三、实验内容 8255A的A口作为输入口,与逻辑电平开关相连。8255A的B口作为输出口,与发光二极管相连。编写程序,使得逻辑电平开关的变化在发光二极管上显示出来。 四、实验原理介绍 本实验用到两部分电路:开关量输入输出电路和8255可编程并口电路。 五、实验步骤 1、实验接线 CS0?CS8255; PA0~PA7?平推开关的输出K1~K8; PB0~PB7?发光二极管的输入LED1~LED8。 2、编程并全速或单步运行。 3、全速运行时拨动开关,观察发光二极管的变化。当开关某位置于L 时,对应的发光二极管点亮,置于H时熄灭。 六、实验提示 实验也是如此。实验中,8255A工作于基本8255A是比较常用的一种并行接口芯片,其特点在许多教科书中均有介绍。8255A有三个8位的输入输出端口,通常将A端口作为输入用,B端口作为输出用,C端口作为辅助控制用,本输入输出方式(方式0)。 七、实验结果 程序全速运行后,逻辑电平开关的状态改变应能在LED上显示出来。例如:K2置于L位置,则对应的LED2应该点亮。 八、程序框图(实验程序名:t8255.asm)

开始 设置8255工作方式 读A口 输出至B口 结束 九、程序源代码清单: assume cs:code code segment public org 100h start: mov dx,04a6h ;控制寄存器地址 mov ax,90h ;设 置为A口输入,B口输出 out dx,ax mov al,0feh start1:mov dx,04a2h 芯片的 入口地址 out dx,al mov bl,al mov dx ,04a0h in al,dx test ax,01h jz strat2 mov al ,bl rol al,1 流水灯循环左移 mov bl,al mov cx,3000h 设置cx为灯闪烁时间对应的循环次数 add: loop add jmp start1 无条件跳转至start1 strat2:mov al,bl mov dx,04a2h out dx,al ror al,1 流水灯循环左移 mov bl, al mov cx,3000h add1: loop add jmp start 无条件跳转至start code ends end start 十、实验总结 通过该实验,掌握了8255A的编程原理,学会了用汇编语言来编写程序控制8255A进行流水灯的操作实验。

微机原理与接口技术实验报告

新疆农业大学机械交通学院 实习(实验)报告纸 班级:机制072 学号: 073731234 姓名:唐伟 课程名称:微机原理及接口技术实习(实验)名称: DEBUG软件的使用 实验时间: 6.22 指导教师签字:成绩: —、实验目的 1.学习DEBUG软件的基本使用方法。 2.掌握8088/8086的寻址方式。 3.掌握数据传送、算术运算逻辑运算等类指令的基本操作。 二、实验内容与步骤 实验内容: 修改并调试以下程序,使之完成30000H开始的内存单元中存入31个先自然递增然后有自然递减的数据(00H~0F~00H)的功能。程序从CS:0100H开始存放。调试完成后程序命名为PCS.EXE并存盘。 实验步骤: (1)用A命令输入程序; (2)用反汇编U命令显示程序及目标码; 存盘程序命令为PCS1.EXE;

三、思考题 1.EXE文件程序的第一条可执行指令的IP等于多少? 答:EXE文件程序的第一条可执行指令的IP等于0010 。 2.在DEBUG环境下显示的程序和数字是什么形式?标号又是什么形式? 答: DEBUG把所有数据都作为字节序列处理。因此它可以读任何类型的文件。DEB UG可以识别两种数据: 十六进制数据和ASCⅡ码字符。它的显示格式是各个字节的十六进制值以及值在32与126之间的字节的相应ASCⅡ码字符。DEBUG总是用四位十六进制数表示地址。用两位数表示十六进制数据。不支持标号。 3.试述本次实验中你学会的DEBUG命令? 答:本次试验我学会了汇编命令(A命令)、.反汇编命令(U命令)、显示当前环境和寄存器内容(R命令、以十六进制和ASCII码形式显示内存单元内容(D命令)

实验四 循环结构

实验报告 班级:电信13-1班学号:130******** 姓名:谢朗星成绩: 实验四循环结构 一、实验目的 1.掌握循环结构C程序的编写和调试方法。 2.掌握循环结构C程序中使用while语句和do while语句。 二、实验内容和步骤 1.调试下面三个程序,分析执行的结果。 1. #include int main( ) { int sum=0,i=1; while(i<=100) { sum=sum+i; i++; } printf(“%d\n”,sum); return 0; } 5050 在该程序中,先判断i是否<=100,如果是,在循环体先执行了sum=sum+i,接着再执行i++,然后再返回判断i是否<=100,接着再重复上步骤,直到i>100,然后输出最终结果,结束该程序。 2. #include int main( ) { int sum=0,i=1; while(i<=100) { sum=sum+i; i++; printf(“%d\n”,sum);} return 0;

} 在该程序中,先判断i是否<=100,如果是,在循环体先执行了sum=sum+i,接着再执行i++,然后输出当次运行的结果,然后再返回判断i是否<=100,接着再重复上步骤,直到i>100,结束该程序。 3.#include int main( ) { int sum=0,i=1; do { sum=sum+i; i++; printf(“%d\n”,sum); }while(i<=100); return 0; } 在该程序中,在循环体中先执行了sum=sum+i,接着再执行i++,然后输出当次运行的结果,接着再判断i是否<=100,如果是,返回执行循环体,接着再重复上步骤,直到i>100,结束该程序。 2.编写如下2道题目的程序,要求详细写出程序编写、编译、运行的过程,源程序关键执 行语句需要给出注释。 (a)统计全单位人员的平均工资。单位的人数不固定,工资数从键盘先后输入,当输入-1 时表示输入结束(前面输入的是有效数据) 分析:循环执行的条件while(i!=-1) , 循环结束条件是单位的人数n,循环体采用累加的方法。 (b)求∑= 20 1 n !n 分析:循环体采用累加和累乘。(a) #include int main() {

第七章并行口习题答案

第七章习题 一、填空题: 1、8255把A口和C口的下半部分和B口和C口的上半部分分别称为A组和B组, 可组成两个独立的并行接口。 2、8255中,A组有3种工作方式,它们是方式0方式1方式2,B组有2种工作方式, 它们是方式0和方式1。当A组工作于方式2时,B组可以工作于方式1或方式0。 3、当8255的PC4~PC7全部为输出线时,表明8255的A端口的工作方式是方式0。 4、当数据从8255的端口C往数据总线上读出时,8255的几个控制信号 CS,A0,A1,RD,WR分别是“0”“1”“0”“0”“1”。 5、对于共阴极连接的7段数码显示其,如果要使某一段发光,则需要在对应的段输入 引脚上输入TTL高电平。 6、发光二极管(LED)组成的8段数码显示器有共阴极和共阳极两种接法。不通接法 显示段码之间的关系是互为反码。 二、选择题 1、并行接口和串行接口之间的区别主要表现在之间的数据传输前者是并 行,后者是串行。( B ) A.接口与MPU B.接口与外设C.接口与MPU和外设 2、8255工作方式中具有中断请求功能的是。( BC ) A. 方式0 B. 方式1 C. 方式2 3、一台微机化仪器采用8255芯片作为数据传送借口,并规定使用I/O地址的最低两位做芯片内部殉职,已知芯片A口地址为0F4H,则当CPU执行输出指令访问0F7H端口时,其操作为。( C ) A.数据从端口C送往数据线 B. 数据从数据线送端口C C. 控制字送控制寄存器 D. 数据从数据线送端口A 4、并行接口芯片8255与打印机的连线如图所是,当A15~A2=00000000110000时,经地址译码器输出使CS=0。 1)口A工作方式应为。( A ) A.方式0 B.方式1 C.方式2 D.方式0或方式1均可 2)口C的工作方式应为。( A ) A.方式0 B.方式1 C.方式2 D.方式0或方式2均可 3)I/O传送的控制方式为方式。( D ) A.无条件传送 B.查询或中断 C.中断 D.查询 4)8255口C的地址为。( B ) A.00C0H B.00C1H C.00C2H D.00C3H 5)8255口A的地址为。( A ) A.00C0H B.00C1H C.00C2H D.00C3H

微机原理与接口技术综合实验电子钟实验报告

微机原理综合实验:电子钟 实验要求 8253每1s产生中断请求给8259,中断服务程序利用8255控制数码管,构建一个电子钟。 一、实验原理(相关芯片大致介绍) 1.8254 8254 是Intel 公司生产的可编程间隔定时器,是8253 的改进型,比8253 具有更优良的性能。8254 具有以下基本功能: (1)有3 个独立的16 位计数器。 (2)每个计数器可按二进制或十进制(BCD)计数。 (3)每个计数器可编程工作于6 种不同工作方式。 (4)8254 每个计数器允许的最高计数频率为10MHz(8253 为2MHz)。 (5)8254 有读回命令(8253 没有),除了可以读出当前计数单元的内容外,还可以读出状态寄存器的内容。 (6)计数脉冲可以是有规律的时钟信号,也可以是随机信号。计数初值公式为:n=fCLKi÷fOUTi、其中fCLKi是输入时钟脉冲的频率,fOUTi是输出波形的频率。 2.8259 Intel公司专为控制优先级中断而设计开发的芯片,包括中断源优先级排队、辨别中断源以及提供中断矢量的电路,无需附加任何电路,用户只需对8259 进行编程,就可以管理8 级中断,并选择优先模式和中断请求方式。同时,在不需增加其他电路的情况下,通过多片8259 的级连,能构成多达64 级的矢量中断系统。管理功能包括:1)记录各级中断源请求,2)判别优先级,确定是否响应和响应哪一级中断,3)响应中断时,向CPU 传送中断类型号。 3.8255 并行接口是以数据的字节为单位与I/O 设备或被控制对象之间传递信息。CPU 和接口之间的数据传送总是并行的,即可以同时传递8 位、16 位或32 位等。8255 可编程外围接口芯片是Intel 公司生产的通用并行I/O 接口芯片,它具有A、B、C 三个并行接口,用+5V 单电源供电,能在以下三种方式下工作: 方式0--基本输入/输出方式、 方式1--选通输入/输出方式、 方式2--双向选通工作方式。 二、设计方案 ①:初始化各芯片,选定工作方式。 ②:使用功能调用获取当前时间,作为初值装入。 ③:8254芯片开始计数,每隔1s产生一个中断信号。 ④:8259芯片接受到中断信号,并传给cpu,cpu响应中断。 ⑤:返回到③循环执行。

汇编程序及接口技术实验报告

微机汇编程序及接口技术实验报告 汇编程序实验: 一、实验目的 1、熟悉汇编程序调试过程 2、掌握算术运算指令运用 3、掌握分支程序的编程和调试方法 二、实验设备 80X86微型计算机 三、实验内容 1、编程并调试显示“Hello Word!”字符串的汇编程序 TITLE HELLO DA TA SEGMENT STR DB'Hello World!$' DA TA ENDS CODE SEGMENT ASSUME DS:DATA,CS:CODE START:MOV AX,DATA MOV DS,AX MOV DX,OFFSET STR MOV AH,9H INT 21H MOV AH,4CH INT 21H CODE ENDS END START

2、A、B、C、D、W是互不相等的在数据段中定义的16位有符号数,并假设加减运算不产生溢出。编写一个完整段定义的汇编语言程序,计算W=(A+B)×(C—D)。 title asmprogram1_1 DA TA SEGMENT A DW 1H B DW 3H C DW 4H D DW 2H W DW 2 DUP(?) DA TA ENDS ; CODE SEGMENT ASSUME DS:DATA,CS:CODE START:MOV AX,DATA MOV DS,AX MOV AX,A ADD AX,B MOV BX,C SUB BX,D IMUL BX MOV W,AX MOV W+2,DX MOV AH,4CH INT 21H CODE ENDS END START

3、设X、Y为在数据段中定义的有符号字变量。编写一个完整段定义的汇编语言程序(包含必要的伪指令,给出必要的注释)完成以下操作:若0

Python实验循环结构

实验五 循环结构(续) 【实验目的】 1.掌握range()函数的使用 2. 掌握For 语句的使用。 3.掌握循环嵌套的使用。 4.掌握一些常用的算法(求素数、穷举法、求和与乘积、递推法)。 【实验内容】 000000000 1、 填空 (1) 在命令行中显示1 到10的数字 range(1,11) 。 (2) 在命令行中显示 1到10的所有偶数 range(2,11,2) 。 (3) 显示所有的大写字符。 for i in range(65,91) : print chr(i) (4) 显示1--100能被3整除的数,并且每5个数打印一行。 i=0 ‘记录能被3整除的个数 for j in range(1,101): if j%3==0: print j, i+=1 if i%5==0: print 2、输出斐波那契级数1、1、2、 3、5、8、13……,此级数项的规律是:前两项的值各为1,从第3项起,每一项是前2项的和。(要求一行输出6项)。 (1) 当某项的数值大于或等于30000时结束。 (2) 求前100项之和。 (1)1 1 2 3 5 8 13 21 34 55 89 144 233 377 610 987 1597 2584 4181 6765 10946 17711 28657 (2 3、编写程序,输入一个数,判断该数是否为完数。例如6是一个完数,因为6=1+2+3。 x=input ("Enter an integer:") i=1 while True : x=x-i i+=1 if x==i: print "A perfect number." break if x==30000: break print c, if i%6==0: print (2) a=1 b=1 sum=2 i=2 #计数 while True: i+=1 #计数:第i 次 c=a+b a=b b=c sum+=c if i==100: #完成第100次求和后退出循环 break print sum

简单并行接口实验报告

简单并行接口实验报告 班级:电信1001 姓名:张贵彬学号:201046830213 实验一锁存器74LS273 一、实验目的 掌握简单并行接口的工作原理及使用方法。 二、实验内容 1、按简单并行输出接口电路图连接线路(74LS273插通用插座,74LS32用实 验台上的“或门”)。74LS273为八D触发器,8个D输入端分别接数据总线 D0~D7,8个Q输出端接LED显示电路L0~L7。 2、编程从键盘输入一个字符或数字,将其ASCⅡ码通过这个输出接口输出, 根据8个发光二极管发光情况验证正确性。 三、编程提示 上述并行输出接口的地址为2A8H,并行输入接口的地址为2A0H,通过上述并行接口电路输出数据需要3条指令: MOV AL,数据 MOV DX,2A8H OUT DX,AL 通过上述并行接口输入数据需要2条指令: MOV DX,2ADH IN AL,DX 四、实验电路图 五、实验流程图

六、实验程序 ls273 equ2a8h code segment assume cs:code start: mov ah,2;回车符 mov dl,0dh int21h mov ah,1;等待键盘输入 int21h cmp al,27;判断是否为ESC键 je exit ;若是则退出 mov dx,ls273 ;若不是,从2A8H输出其ASCII码out dx,al jmp start ;转start exit: mov ah,4ch;返回 int21h code ends end start 七、实验结果

实验二数据缓冲器74LS244 一、实验目的 掌握简单并行接口的工作原理及使用方法。 二、实验内容 1、按下面图2-2简单并行输入接口电路图连接电路(74LS244插通用插座, 74LS32用实验台上的“或门”)。74LS244为八缓冲器,8个数据输入端分别接逻辑电平开关输出K0~K7,8个数据输出端分别接数据总线D0~D7。 2、用逻辑电平开关预置某个字母的ASCⅡ码,编程输入这个ASCⅡ码,并将 其对应字母在屏幕上显示出来。 三、编程提示 1、上述并行输出接口的地址为2A8H,并行输入接口的地址为2A0H,通过 上述并行接口电路输出数据需要3条指令: MOV AL,数据 MOV DX,2A8H OUT DX,AL 通过上述并行接口输入数据需要2条指令: MOV DX,2ADH IN AL,DX 四、实验电路图 五、实验流程图

相关文档
相关文档 最新文档