南邮通达微机系统串行口的测试实验三
南邮微机原理实验报告
微机原理硬件实验报告实验一 I/O 地址译码一、实验目的1、掌握 I/O 地址译码电路的工作原理。
二、实验内容及原理实验电路如图1-1所示,其中74LS74为D触发器,可直接使用实验台上数字电路实验区的D触发器,74LS138为地址译码器。
译码输出端Y0~Y7在实验台上“I/O地址“输出端引出,每个输出端包含8个地址,Y0:280H~287H,Y1:288H~28FH,…… 当CPU执行I/O指令且地址在280H~2BFH范围内,译码器选中,必有一根译码线输出负脉冲。
根据图1-1,我们可以确定A9~A3,AEN,IOW,IOR的值。
要使译码电路正常工作,必须使处于低电平有效。
因而可以确定A6=A8=0,A7=A9=1,AEN=0,IOW与IOR不可同时为1(即不能同时读写)。
当要从Y4输出低脉冲时,A5A4A3=100;从Y5输出时,A5A4A3=101。
综上所述,Y4输出时,应设置值2A0H(A9~A0=1010100000B);Y5输出时,应设置值2A8H(A9~A0=1010101000B)。
执行下面两条指令MOV DX,2A0HOUT DX,AL(或IN AL,DX)Y4输出一个负脉冲到D触发器的CLK上,因为D=1(接了高电平+5V),所以Q被赋值为1.延时一段时间(delay);执行下面两条指令;MOV DX,2A8HOUT DX,AL(或IN AL,DX)Y5输出一个负脉冲到CD,D触发器被复位,Q=0。
再延时一段时间,然后循环上述步骤。
利用这两个个负脉冲控制L7闪烁发光(亮、灭、亮、灭、……),时间间隔通过软件延时实现。
三、硬件接线图与软件流程图硬件接线:Y4/IO 地址接 CLK/D 触发器Y5/IO地址接 C/D触发器D/D触发器接 SD/D角发器接+5VQ/D触发器接 L7(LED灯)或逻辑笔软件流程图:四、源程序OUTPORT1 EQU 2A0H ;预置,方便修改OUTPORT2 EQU 2A8HCODE SEGMENTASSUME CS:CODESTART: MOV DX,OUTPORT1 ;根据原理图设定A9~A0 的值(Y4)OUT DX,AL ;让译码器Y4 口输出一个负脉冲CALL DELAY ;延时MOV DX,OUTPORT2 ;根据原理图设定A9~A0 的值(Y5)OUT DX,AL ;让译码器Y5 口输出一个负脉冲CALL DELAY ;延时MOV AH,1 ;调用1 号DOS 功能,等待键盘输入INT 16HJE START ;若有键盘输入则退出程序,否继续循环MOV AH,4CHINT 21HDELAY PROC NEAR ;延时子程序MOV BX,200 ;时延长度 (200)A: MOV CX,0B: LOOP BDEC BXJN E ARETDELAY ENDPCODE ENDSEND START五、实验结果LED 灯处于闪烁状态,键盘有输入后,成功退出。
串行接口应用实验
(一)8251 串行接口应用实验一、实验目的1、掌握8251的工作方式。
2、学习串行通讯的有关知识。
二、实验设备1、TDN86/88教学实验系统一台。
2、示波器一台。
3、一组排线。
三、实验内容及步骤1、系统中的8251芯片系统装有一片8251芯片,并和标准RS-232C接口连接好,如下图所示。
该电路用来完成同PC微机的联机以及串行监控操作的实现,其端口地址为:数据口:C0H 控制口:C1H2、实验单元中的8251这片8251芯片用于各种串行口实验,连线见下图,其端口地址为:数据口:80H 控制口:81H3、8251串行接口应用实验本实验中,串行传输的数据格式规定如下:(1)一位逻辑‘0’的起始位,8位数据位(由低位开始传输),1位逻辑‘1’停止位。
(2)传输波特率9600baut。
数据信号的串行输出送示波器,可观察数据波形。
与示波器连线如下:8251 示波器TxD _____________ +GND_____________ -4、实验程序,见13-1.ASMCODE SEGMENTASSUME CS:CODESTART: CALL INIT ;初始化8253和8251A1: CALL SEND ;向串口送55HA2: MOV CX,0200H ;定时时间到,再发送下一个数据LOOP A2JMP A1 ;重复送数INIT: MOV AL,76H ;8253的计数器1工作在方式3,送出方波信号,作为8251收发时钟OUT 43H,ALMOV AL,0CH ;方波频率为153.6KHzOUT 41H,ALMOV AL,00HOUT 41H,ALCALL RESET ;复位8251,即向控制口送3个0,一个40HCALL DELAY ;8251工作速度慢,每送一个控制字,等待一会儿MOV AL,7EH ;置异步方式:1个停止位,偶校验,字符长为8位,波特率因子为16OUT 81H,AL ;控制口CALL DELAYMOV AL,31H ;RTS输出0,使CTS输入0OUT 81H,AL ;清除错误标志,并使TxEN置1,允许发送CALL DELAYRETRESET: MOV AL,00H ;复位8251OUT 81H,ALCALL DELAYOUT 80H,ALCALL DELAYOUT 80H,ALCALL DELAYMOV AL,40HOUT 81H,ALRETDELAY: PUSH CX ;延时子程序MOV CX,6000HA3: LOOP A3POP CXRETSEND: PUSH AX ;发送55HMOV AL,31HOUT 81H,ALPOP AXMOV AL,55HOUT 80H,ALRETCODE ENDSEND START5、实验步骤(1)将示波器与8251的TxD、GND排针引脚相连接。
串行口通信实验 单片机实验报告
实验六串行口通信实验一、实验内容实验板上有RS-232接口,将该接口与PC机的串口连接,可以实现单片机与PC机的串行通信,进行双向数据传输。
本实验要求当PC机向实验板发送的数字在实验板上显示,按实验板键盘输入的数字在PC机上显示,并用串口助手工具软件进行调试。
二、实验目的掌握单片机串行口工作原理,单片机串行口与PC机的通信工作原理及编程方法。
三、实验原理51单片机有一个全双工的串行通讯口,所以单片机和电脑之间可以方便地进行串口通信。
进行串行通讯信要满足一定的条件,比如电脑的串口是RS232电平(-5~-15V为1,+5~+15V为0),而单片机的串口是TTL电平(大于+2.4V为1,小于- 0.7V为0),两者之间必须有一个电平转换电路实现RS232电平与TTL电平的相互转换。
为了能够在PC机上看到单片机发出的数据,我们必须借助一个Windows软件进行观察,这里我们可以使用免费的串口调试程序SSCOM32或Windows的超级终端。
单片机串行接口有两个控制寄存器:SCON和PCON。
串行口工作在方式0时,可通过外接移位寄存器实现串并行转换。
在这种方式下,数据为8位,只能从RXD端输入输出,TXD端用于输出移位同步时钟信号,其波特率固定为振荡频率的1/12。
由软件置位串行控制寄存器(SCON)的REN位后才能启动,串行接收,在CPU将数据写入SBUF寄存器后,立即启动发送。
待8位数据输完后,硬件将SCON寄存器的T1位置1,必须由软件清零。
单片机与PC机通信时,其硬件接口技术主要是电平转换、控制接口设计和远近通信接口的不同处理技术。
在DOS操作环境下,要实现单片机与微机的通信,只要直接对微机接口的通信芯片8250进行口地址操作即可。
WINDOWS的环境下,由于系统硬件的无关性,不再允许用户直接操作串口地址。
如果用户要进行串行通信,可以调用WINDOWS的API 应用程序接口函数,但其使用较为复杂,可以使用KEILC的通信控件解决这一问题。
南邮通达电力系统实验报告
单机无穷大系统稳态实验:一、整理实验数据,说明单回路送电和双回路送电对电力系统稳定运行的影响,并对实验结果进行理论分析:实验数据如下:由实验数据,我们得到如下变化规律:(1)保证励磁不变的情况下,同一回路,随着有功输出的增加,回路上电流也在增加,这是因为输出功率P=UIcos ,机端电压不变所以电流随着功率的增加而增加;(2)励磁不变情况下,同一回路,随着输出功率的增大,电压损耗在增大;这是由于电压降落△U=(PR+QX)/U,而横向分量较小,所以电压损耗也随着输出功率的增大而增大.单回路供电和双回路供电对电力系统稳定性均有一定的影响,其中双回路要稳定一些,单回路稳定性较差.二、根据不同运行状态的线路首、末端和中间开关站的实验数据、分析、比较运行状态不同时,运行参数变化的特点和变化范围。
由实验数据,我们可以得到如下结论:(1)送出相同无功相同有功的情况下:单回路所需励磁电压比双回路多,线路电流大小相等,单回路的电压损耗比双回路多;(eg。
P=1,Q=0.5时)(2)送出相同无功的条件下,双回路比单回路具有更好的静态稳定性,双回路能够输送的有功最大值要多于单回路;发生这些现象的原因是:双回路电抗比单回路小,所以所需的励磁电压小一些,电压损耗也要少一些,而线路电流由于系统电压不改变;此外,由于电抗越大,稳定性越差,所以单回路具有较好的稳定性。
三、思考题:1、影响简单系统静态稳定性的因素是哪些?答:由静稳系数S Eq=EV/X,所以影响电力系统静态稳定性的因素主要是:系统元件电抗,系统电压大小,发电机电势以及扰动的大小。
2、提高电力系统静态稳定有哪些措施?答:提高静态稳定性的措施很多,但是根本性措施是缩短"电气距离”.主要措施有:(1)、减少系统各元件的电抗:减小发电机和变压器的电抗,减少线路电抗(采用分裂导线);(2)、提高运行电压水平;(3)、改善电力系统的结构;(4)、采用串联电容器补偿;(5)、采用自动励磁调节装置;(6)、采用直流输电。
串行口实验报告
串行口实验报告
《串行口实验报告》
实验目的:通过串行口实验,探索数据传输的可靠性和稳定性。
实验材料:计算机、串行口数据线、串行口设备。
实验步骤:
1. 连接串行口数据线:首先,将串行口数据线插入计算机的串行口接口,并将另一端连接到串行口设备上。
2. 设置串行口参数:在计算机上打开串行口设置界面,设置波特率、数据位、校验位和停止位等参数,确保与串行口设备相匹配。
3. 发送数据:通过计算机上的串行口通讯软件,向串行口设备发送数据,观察数据传输的稳定性和可靠性。
4. 接收数据:同样通过串行口通讯软件,接收串行口设备发送的数据,检验数据接收的准确性和完整性。
实验结果:
经过一系列的实验操作,我们发现串行口数据传输的稳定性和可靠性较高。
在设置合适的参数后,数据传输过程中几乎没有出现丢失或错误的情况。
同时,数据的传输速度也较为稳定,符合预期的要求。
实验结论:
通过本次串行口实验,我们验证了串行口数据传输的可靠性和稳定性。
在实际应用中,可以通过合理设置串行口参数,确保数据的准确传输。
串行口技术在工业控制、通讯设备等领域有着广泛的应用前景,为数据传输提供了一种可靠的解决方案。
微机接口实验-串口通信实验
微机接口实验-串口通信实验实验06・串口通信实验座位号:37 0930******* 王梦硕实验06・串口通信实验王梦硕0930*******实验目的:学会使用单片机的串行口。
实验原理:1・概要:串行通信是将数据按二进制形式,利用一条信号线一位一位顺序传送的通信。
其优点是用于通信的线路少,因而特别适合远距离通信。
同时,串行通信也常用于速度要求不高的近距离数据传送。
要实现单片机间的串行通信,必须要利用相应的接口,该类接口就被称为串行接口。
MSC-51系列单片机内的串行接口是一个可编程的全双工串行通信接口,通过软件编程,既可作为通用异步接受和发射器UART,也可作为同步移位寄存器。
其帧格式可有8位,10位或11位,并可以设置多种不同的波特率。
2・串行口的工作方式:方式0(移位寄存器的输入输出方式):该方式下,数据有RXD(P3.0)引脚输入或输出,同步移位脉冲由TXD(P3.1)引脚输出。
该方式多用于外接移位寄存器以扩展I/O端口,波特率固定为fosc/12。
其输入输出时序如下图所示:1 / 10实验06・串口通信实验座位号:37 0930******* 王梦硕方式1(波特率可变10位异步通信方式)该方式为标准的异步通信方式,其通信格式为:起始位1位,数据位8位,停止位1位。
且工作在全双工方式下,以TXD为串行数据的发送端,以RXD为串行数据的接收端,波特率由定时器T1的溢出率和SMOD位的状态确定。
其输入输出时序如下图所示:方式2、3(11位异步通信方式)方式2和方式3的操作过程与方式1基本相同,其输入输出时序如下图所示。
他们的主要区别在于方式2和方式3有第九位数据,改为数据的主要作用是用作数据的奇偶校验位,活在多机通信中作为地址/数据的特征位,该数据保存在RB8(接收时)或TB8(发送时)中。
2 / 10实验06・串口通信实验座位号:37 0930******* 王梦硕3・SBUF SBUF为串行接口接受/发送数据缓冲器(其映像字节地址为99H)。
串行接口实验
串行接口实验一、实验目的✓熟悉串行接口芯片8251的工作原理✓掌握串行通讯接收/发送程序的设计方法二、实验内容✓实现串行接口的双机通讯通过对8251芯片的编程,使得实验台上的串行通讯接口(RS232)以查询方式实现信息在双机上的。
具体过程如下:1. 从A电脑键盘上输入一个字符,将其通过8251数据口发送,并在B电脑上的8251数据口接收到这个字符,然后在B电脑屏幕上显示。
2.将在第一次实验程序与前面双机通信程序组合在一起,从A试验箱上使用开关控制B试验箱上的步进电机转动,而从B试验箱上使用开关控制A试验箱上的扬声器模拟电子琴发声,实现双机双向控制。
三、实验原理3.18251控制字说明在准备发送数据和接收数据之前必须由CPU把一组控制字装入8251。
控制字分两种:方式指令和工作指令,先装入方式指令,后装入工作指令。
另外,在发送和接收数据时,要检查8251状态字,当状态字报告“发送准备好”/“接收准备好”时,才能进行数据的发送或接收。
3.1.2 工作指令(2B8H)3.28253控制字说明3.2.1 控制字(283H)3.2.2 计数初值(283H)3.3程序原理图啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊3.4程序流程图四、程序代码;************************;;*8251串行通讯(自发自收)*;;************************;data segmentio8253aequ 280hio8253bequ 283hio8251aequ 2b8hio8251bequ 2b9hmes1db 'you can play a key on the keybord!',0dh,0ah,24hmes2dd mes1data endscode segmentassumecs:code,ds:datastart: movax,datamovds,axmov dx,io8253b ;设置8253计数器0工作方式mov al,16houtdx,almov dx,io8253amov al,52 ;给8253计数器0送初值outdx,almov dx,io8251b ;初始化8251xoral,almov cx,03 ;向8251控制端口送3个0delay: call out1loop delaymov al,40h ;向8251控制端口送40H,使其复位call out1mov al,4eh ;设置为1个停止位,8个数据位,波特率因子为16 call out1mov al,27h ;向8251送控制字允许其发送和接收call out1lds dx,mes2 ;显示提示信息mov ah,09int 21hready:mov ah, 0BH ;0FFH是有键按下int 21hcmp al,0FFHjzwaiti ;有键按下就判断发送是否准备好jmp next ;没键按下就判断接收是否准备好waiti: mov dx,io8251binal,dxtest al,01 ;发送是否准备好jz next ;否,就看能否接受mov ah,01 ;是,从键盘上读一字符,获取发送数据int 21hmov dx,io8251a;inc alout dx,al ;发送mov cx,40hcmp al,27 ;若为ESC,结束jz exitjmp readys51: loop s51 ;延时next: mov dx,io8251binal,dxtest al,02 ;检查接收是否准备好jz ready ;没有,等待mov dx,io8251ain al,dx ;准备好,接收movdl,almov ah,02 ;将接收到的字符显示在屏幕上int 21hjmp readyloopa: cmp al,27 ;若为ESC,结束jz exitjmp nextexit: mov ah,4ch ;退出int 21hout1 proc near ;向外发送一字节的子程序out dx,alpush cxmov cx,40hgg: loop gg ;延时pop cxretout1endpcode endsend start五、实验体会。
微机原理 实验报告 串行
微机原理与接口技术实验实验六、串行接口实验学号U201413416姓名班级电信1406班一、实验目的理解RS232 串行通信协议以及接口设计理解SPI串行通信协议掌握RS232 串行接口设计掌握SPI串行接口设计掌握串行AD/DA 接口设计二、实验任务Nexey4开发板通过外接SPI AD模块,实现AD转换,并打印结果到console三、基本原理1.SPI IP核接口寄存器2. D/A转换接口时序逻辑框图四、硬件电路框图、模块设计1.硬件电路框图2.SPI IP核设计1) 在IP Catalog里面选择AXI SPI Interface2) 配置SPI核如下图所示:3) 删除SPISEL外部引脚,将其配置成net_vcc:4) 配置ucf引脚如下:3. 中断控制器设计1) 通过AXI Interrupt Controller添加中断控制器2) 在Intr添加spi中断3) 将此中断控制器改成axi4lite_0 的中断控制器4. 查看当前最小系统的引脚输出及硬件框图外部引脚地址Interrupt ViewInterface view5.生成Netlist 以及bitstream,导出到SDK点击project中的Export hardware design to SDK 五、软件实现步骤六、实验结果1. A0连接VCC2.A0连接GND七、心得体会本次实验给我的收获颇多,通过这次实验,我理解了SPI串行通信协议。
在写程序的过程中,首先需要很熟悉的了解SPI串口通信的过程,一步一步对SPI接口进行配置,否则实验无法成功。
我还使用了ADC数模转换器。
这次实验相对复杂,不管是在配置还是使用上,都比传统的GPIO外设难度大,所以能做成功这次实验是非常有收获的。
南邮微机实验报告
南邮微机实验报告《南邮微机实验报告》南京邮电大学微机实验室是学生们进行计算机实验和学习的重要场所。
在这里,我们学习了计算机硬件和软件的基本知识,掌握了计算机系统的组成和工作原理,提高了我们的计算机应用能力。
下面是我们在南邮微机实验室进行的一次实验报告。
实验名称:操作系统安装与配置实验目的:通过实际操作,掌握计算机操作系统的安装和配置方法,提高我们的操作系统安装和配置能力。
实验内容:1. 准备工作:备份重要数据,准备操作系统安装光盘或U盘。
2. 操作系统安装:将安装光盘或U盘插入计算机,按照提示进行操作系统安装。
3. 操作系统配置:完成安装后,进行基本的系统配置,包括网络设置、用户账户设置、软件安装等。
实验步骤:1. 准备工作:备份个人重要数据,准备Windows 10安装U盘。
2. 操作系统安装:将U盘插入计算机,重启计算机,按照提示进行Windows10操作系统安装。
3. 操作系统配置:安装完成后,进行基本的系统配置,包括网络设置、用户账户设置、软件安装等。
实验结果:通过实际操作,我们成功地安装和配置了Windows 10操作系统,完成了基本的系统配置,包括网络设置、用户账户设置和软件安装等。
这次实验让我们对操作系统安装和配置有了更深入的理解,提高了我们的操作系统应用能力。
实验总结:通过这次实验,我们不仅掌握了操作系统安装和配置的基本方法,还提高了我们的实际操作能力。
我们将继续在南邮微机实验室进行更多的实验,不断提升我们的计算机应用能力,为将来的学习和工作做好充分的准备。
南邮微机实验室为我们提供了一个良好的学习环境,让我们能够通过实际操作来深入理解计算机知识。
我们将继续努力,不断提高自己的计算机应用能力,为将来的发展打下坚实的基础。
南邮通达电机学实验报告
一、实验目的1. 了解电机的基本原理和结构;2. 掌握电机的基本运行特性;3. 熟悉电机实验设备的使用方法;4. 培养动手能力和实验技能。
二、实验原理电机是一种将电能转换为机械能的装置,主要由定子和转子两部分组成。
定子是固定不动的部分,转子是旋转的部分。
当电机接通电源后,电流在定子绕组中产生磁场,转子受到磁场的力矩作用而旋转。
三、实验内容1. 电机的基本结构观察(1)观察电机的外观,了解电机的基本结构,包括定子、转子、轴承、端盖等部分。
(2)拆卸电机,观察定子和转子之间的间隙、轴承、端盖等部分的结构。
2. 电机的基本运行特性实验(1)连接电机实验台,启动电机,观察电机启动过程。
(2)调节电机转速,观察电机转速与电压、频率的关系。
(3)改变电机负载,观察电机转速与负载的关系。
(4)测量电机功率,观察电机功率与转速、负载的关系。
3. 电机正反转实验(1)观察电机正转过程,记录电机转速、功率等参数。
(2)改变电机接线方式,实现电机反转,观察电机反转过程,记录电机转速、功率等参数。
(3)分析电机正反转特性,比较正转和反转时的电机参数。
四、实验步骤1. 准备实验设备,包括电机实验台、万用表、示波器等。
2. 观察电机外观,了解电机的基本结构。
3. 拆卸电机,观察定子和转子之间的间隙、轴承、端盖等部分的结构。
4. 连接电机实验台,启动电机,观察电机启动过程。
5. 调节电机转速,观察电机转速与电压、频率的关系。
6. 改变电机负载,观察电机转速与负载的关系。
7. 测量电机功率,观察电机功率与转速、负载的关系。
8. 改变电机接线方式,实现电机反转,观察电机反转过程,记录电机转速、功率等参数。
9. 分析实验数据,得出实验结论。
五、实验结果与分析1. 电机外观观察通过观察电机外观,我们了解到电机的基本结构,包括定子、转子、轴承、端盖等部分。
2. 电机基本运行特性实验(1)电机启动过程:当电机接通电源后,电机开始启动,转速逐渐增加,直到达到额定转速。
微机原理串行电路实验报告
实验内容:串行口通信实验1.设计CRC16程序。
CRC检错码是比较通用的一种串行检测码,其原理是:对一个K比特的数据块(或称报文),发送方生成一个N比特的序列,称为帧检验序列(FCS),这个序列与原K比特的数据块组成一个长为K+N比特的新序列(帧),一起发送;当接收方收到这个K+N比特的新序列(帧)后,用同样运算方法,若余数为0,则认为没有差错;否则有差错。
其中帧检验序列(FCS)采用原始发送数据块模二除以某些预定的数值。
而这种预定的数值称为生成多项式。
该实验中选用的生成多项式为:CRC-16:P(x)=x16+x15+x2+x0其硬件电路如下:下面编程用软件实现:程序框图如下:程序源代码如下:data segmentxx db 10010010Bzijie EQU 1 ;和上面xx为自定义数据yy dw 1000000000000101B ;17为校验多项式的后16位zz db 20 dup(?)aa dw 2data endscode segmentassume cs:code,ds:datamain proc nearmov ax,datamov ds,axmov bx,zijie ;字节计数器,计剩余字节mov si,offset(xx)mov dx,word ptr [si+bx-2] ;dx为计算所用寄存器mov ax,word ptr[si+bx-4] ;ax为备用寄存器p0:dec bxjnz p1 ;判断是否奇数个字节jmp p2p1:dec bxjmp p3p2:mov di,9p3:clctest dx,dxjs rp3dec dicmp di,0 ;此字节或字是否结束jz r0sal dx,1sal ax,1 ;移位jnc p4add dx,1p4:cmp di,0jnz p3r0:cmp bx,0jz rmov ax,word ptr[si+bx-2] ;将下一字节读入备用寄存器rp3:dec dicmp di,0jz r0sal dx,1sal ax,1jnc r6add dx,1r6:xor dx,yy ;满足条件进行异或jmp p3r:mov bp,offset(zz)mov [bp],dxmov si,offset(xx)mov cx,size xxinc bpp5:inc bp ;将结果写出mov ax,[si]mov [bp],axloop p5jmp $经验证运行单字节和两个字节是正确的,只要改变程序开头处的字节数和其对应的信息码,即可进行CRC的计算。
微机原理-串行接口实验报告
实验报告一.实验任务采用UART IP 核,实现Nexys4 或Nexys4 DDR 实验板UART接口之间的通信。
要求当拨动开关时,将开关对应的值通过UART1发送到UART2,同时利用LED 灯指示UART2接收到的当前开关的值;当按下按键时,将按键对应的值通过UART2发送到UART1,同时利用数码管指示UART1接收到的当前按下的按键位置码(C,U,d,L,r)。
UART 波特率为9600bps。
二.硬件电路框图三.程序源代码#include "xil_io.h"#include "stdio.h"#include "xintc_l.h"#include "xgpio_l.h"#include "xuartlite_l.h"void UART_SR();void BtnHandler();void My_ISR() __attribute__ ((interrupt_handler));int main(){Xil_Out32(XPAR_AXI_GPIO_2_BASEADDR+XGPIO_TRI_OFFSET,0x1f); //设定BUTTON为输入方式Xil_Out16(XPAR_GPIO_0_BASEADDR+XGPIO_TRI2_OFFSET,0x0); //LED灯输出Xil_Out32(XPAR_AXI_GPIO_2_BASEADDR+XGPIO_IER_OFFSET,XGPIO_IR_CH1_MASK); //通道1允许中断Xil_Out32(XPAR_AXI_GPIO_2_BASEADDR+XGPIO_GIE_OFFSET,XGPIO_GIE_GINTR_ENABLE_ MASK); //允许GPIO中断输出Xil_Out32(XPAR_AXI_UARTLITE_3_BASEADDR+XUL_CONTROL_REG_OFFSET,XUL_CR_ENABL E_INTR|XUL_CR_FIFO_RX_RESET|XUL_CR_FIFO_TX_RESET);//使能中断,清除RX,TX寄存器Xil_Out32(XPAR_AXI_INTC_0_BASEADDR+XIN_IER_OFFSET,XPAR_AXI_GPIO_2_IP2INTC_IRPT _MASK|XPAR_AXI_UARTLITE_3_INTERRUPT_MASK);//对中断控制器进行中断源使能Xil_Out32(XPAR_AXI_INTC_0_BASEADDR+XIN_MER_OFFSET,XIN_INT_MASTER_ENABLE_MA SK|XIN_INT_HARDWARE_ENABLE_MASK);microblaze_enable_interrupts();//允许处理器处理中断return 0;}void My_ISR(){int status;status=Xil_In32(XPAR_AXI_INTC_0_BASEADDR+XIN_ISR_OFFSET);//读取ISRxil_printf("0x%x\n",status);if((status&XPAR_AXI_UARTLITE_3_INTERRUPT_MASK)==XPAR_AXI_UARTLITE_3_INTERRUPT _MASK){UART_SR();}elseif((status&XPAR_AXI_GPIO_2_IP2INTC_IRPT_MASK)==XPAR_AXI_GPIO_2_IP2INTC_IRPT_MASK) BtnHandler(); //调用按键中断Xil_Out32(XPAR_AXI_INTC_0_BASEADDR+XIN_IAR_OFFSET,status);//写IAR}void UART_SR(){Xil_Out16(XPAR_GPIO_0_BASEADDR+XGPIO_DATA2_OFFSET,Xil_In32(XPAR_AXI_UARTLITE_3 _BASEADDR+XUL_RX_FIFO_OFFSET));}void BtnHandler(){unsigned short btncode;btncode=Xil_In8(XPAR_AXI_GPIO_2_BASEADDR+XGPIO_DATA_OFFSET)&0x1f;while((Xil_In32(XPAR_AXI_GPIO_2_BASEADDR+XGPIO_DATA_OFFSET)&0x1f)!=0){xil_printf("The pushed button's code is 0x%x\n",btncode);//打印输入的按键序号}switch(btncode){case 0x1:Xil_Out32(XPAR_AXI_UARTLITE_3_BASEADDR+XUL_TX_FIFO_OFFSET,btncode);break;case 0x2:Xil_Out32(XPAR_AXI_UARTLITE_3_BASEADDR+XUL_TX_FIFO_OFFSET,btncode);break;case 0x4:Xil_Out32(XPAR_AXI_UARTLITE_3_BASEADDR+XUL_TX_FIFO_OFFSET,btncode);break;case 0x8:Xil_Out32(XPAR_AXI_UARTLITE_3_BASEADDR+XUL_TX_FIFO_OFFSET,btncode);break;case 0x10:Xil_Out32(XPAR_AXI_UARTLITE_3_BASEADDR+XUL_TX_FIFO_OFFSET,btncode);break;default:break;}Xil_Out32(XPAR_AXI_GPIO_2_BASEADDR+XGPIO_ISR_OFFSET,Xil_In32(XPAR_AXI_GPIO_2_B ASEADDR+XGPIO_ISR_OFFSET)); //清除中断}四.实验结果五.实验心得在这个实验当中,主要是运用UART模块实现Nexys4 DDR 实验板UART接口之间的通信,在实验进程中,硬件平台搭设时,需要增加新的UART IP核作为标准输入输出接口,另外在管脚约束时,需要自己重新定义。
南邮 微机接口-[CH10]微机系统串行通信接口(打印版)
2015/9/8
21
2015/9/8
22
微型计算机原理与接口技术
串行通信基础
微型计算机原理与接口技术
串行通信基础
(4) TTL电平和RS-232C电平的转换电路 使用电平转换芯片MAX3243进行DTE类串行接口电平转换
(4) TTL电平和RS-232C电平的转换电路 使用电平转换芯片MAX3238进行DCE类串行接口电平转换
8250内部结构
微型计算机原理与接口技术
8250内部寄存器功能描述 (4) [BASE+2]:中断识别寄存器IIR(只读)
8250内部结构
D1 ETBEI
D0 ERBI
D7 0
D6 0
D5 0
D4 0
D3 IID2
D2 IID1
(3) 用RS-232C接口连接系统 调制解调器连接称为远程连接,通过Modem接入电话网,可 连接世界上任何接入电话网络的主机,理论上连接距离不受 限制。如下图所示:
2015/9/8
19
2015/9/8
20
5
微型计算机原理与接口技术
串行通信基础
微型计算机原理与接口技术
(4) TTL电平和RS-232C电平的转换电路 使用专用电平转换芯片MAX232/3232进行转换
15
2015/9/8
16
4
微型计算机原理与接口技术
串行通信基础
微型计算机原理与接口技术
串行通信基础
(2) 信号电平标准(电气特性) 标准规定: 逻辑“1”信号,电平在 –3V ~ -15V 之间; 逻辑“0”信号,电平在 +3V ~ +15V 之间; 上述电平标准被称为“负逻辑”。 在使用RS-232C标准与微机接口时,需要将TTL电平(0 ~ 5V)与RS-232C电平进行转换。
南邮通电实验报告(3篇)
第1篇一、实验目的1. 了解南邮供电系统的基本结构和工作原理。
2. 掌握南邮供电系统的操作和维护方法。
3. 培养实验操作能力和团队合作精神。
二、实验器材1. 交流电源:220V、50Hz2. 电表:电压表、电流表3. 电线:绝缘电线、连接线4. 电容器:0.1μF、0.01μF5. 电感器:100mH、50mH6. 电阻:1Ω、10Ω、100Ω7. 灯泡:40W、60W8. 开关:单刀双掷开关、单刀单掷开关9. 实验板:南邮通电实验板三、实验原理南邮供电系统主要由变压器、配电线路、配电设备、用电设备等组成。
本实验主要研究配电线路和配电设备的工作原理。
1. 变压器:变压器是一种能量传递装置,通过电磁感应原理将高压电能转换为低压电能。
本实验中使用的变压器为单相变压器。
2. 配电线路:配电线路是指从变压器输出端到用电设备之间的输电线路。
本实验中使用的配电线路为单相线路。
3. 配电设备:配电设备包括开关、熔断器、电表等,用于控制、保护和测量电能。
四、实验步骤1. 实验前准备:检查实验器材是否完好,熟悉实验原理和步骤。
2. 组装实验电路:按照实验要求连接电路,包括变压器、配电线路、配电设备、用电设备等。
3. 通电实验:(1)测量变压器输入端电压:使用电压表测量变压器输入端电压,记录数据。
(2)测量配电线路电压:使用电压表测量配电线路电压,记录数据。
(3)测量配电设备电压:使用电压表测量配电设备电压,记录数据。
(4)测量用电设备电压:使用电压表测量用电设备电压,记录数据。
(5)测量电流:使用电流表测量变压器输入端、配电线路、配电设备、用电设备的电流,记录数据。
4. 关闭实验电路:断开开关,切断电源。
5. 实验数据整理:整理实验数据,分析实验结果。
五、实验结果与分析1. 实验数据:(1)变压器输入端电压:220V(2)配电线路电压:220V(3)配电设备电压:220V(4)用电设备电压:220V(5)变压器输入端电流:0.5A(6)配电线路电流:0.5A(7)配电设备电流:0.5A(8)用电设备电流:0.5A2. 实验结果分析:(1)变压器输入端电压与配电线路电压、配电设备电压、用电设备电压相等,说明供电系统电压稳定。
南邮微机原理实验报告资料
MOV DS,AX
MOVபைடு நூலகம்AL,BUF
MOV MAX+4,AL
MOV MIN+4,AL
MOV BX,OFFSET BUF+1
MOV CX,COUNT-1
LAST:MOV AL,[BX]
CMP AL,MAX+4
JNA LESS
MOV MAX+4,AL
LESS:CMP AL,MIN+4
二、实验任务
1.在微型计算机上用汇编语言编程完成实验内容所规定的实验;
2.记录源代码和程序调试过程;
3.完成实验报告。
三、主要仪器设备
硬件:微型计算机
软件:未来汇编
四、实验内容
上机题1.显示5行HELLO
源程序:
.486
DATA SEGMENT USE16
MESG DB 'HELLO'
DB 0,0,0
MOV DS,AX
AGAIN:MOV AH,9
MOV DX,OFFSET MESG
INT 21H
MOV AH,0AH
MOV DX,OFFSET BUF
INT 21H
MOV AH,2
MOV DL,0AH
INT 21H
MOV BL,BUF+1
MOV BH,0
MOV SI,OFFSET BUF+2
MOV BYTE PTR [BX+SI],'$'
MOV DI,OFFSET STRING
MOV CX,LENS
CLD
AGA: REPNE SCASB
JNZ NEXT
MOV FLAG,1
实验三串操作实验微机原理与接口技术
2.完善以下程序,将数据段的sbuf指示的“Hello world!”字符串传送到数据段的dbuf 缓冲区。
要求在Turbo Debugger中调试该程序,数据区如下图所示。
DSEG SEGMENTsbuf DB 'Hello world!','$'dbuf DB13 dup(0) ;定义了13个字节的0DSEG ENDSCSEG SEGMENTASSUME CS:CSEG,DS:DSEGSTART:MOV AX,DSEGMOV DS,AXMOV ES, AXMOV CX, 0DHMOV SI,OFFSET sbufMOV DI,OFFSET dbufCLDREP movsbLEA DX,dbuf ;取有效地址指令lea 将存储器地址送到一个寄存器MOV AH,09HINT 21HMOV AH,4CHINT 21HCSEG ENDSEND START3.用简化段定义的源程序格式改写以上汇编语言源程序。
.model small.stack.datasbuf db 'Hello world!','$'dbuf DB 13 dup(0).codestart: mov ax,@datamov ds,axmov es, axmov cx, 0dhmov si,offset sbufmov di,offset dbufcldrep movsblea dx,dbufmov ah,09hint 21hmov ah,4chint 21hend start4.从DS:1000H开始存放有一个字符串”This is a string”,要求把这个字符串从后往前传送到DS:2000H开始的内存区域中(即传送结束后,从DS:2000H开始的内存单元的内容为”gnirts a si sihT”),试编写程序段并上机验证(将结果截图)。
assume cs:code,ds:datasg,ss:stackdatasg segmentdb 'THIS IS A STRING'db 1000 dup(1)datasg endsstack segmentdw 0,0,0,0,0,0,0,0stack endscode segmentstart: mov ax,datasg实验内容与实验结果mov ds,axmov es,axmov si,0mov di,30cldrep movsbmov cx,16tag: CLDLODSBSTDSTOSBLOOP tagmov ax,4c00hint 21hcode endsend start5.用简化段定义的源程序格式编写一个汇编语言源程序。
实验三串行口实验
实验三串行口实验实验三串行口实验———单机实验一、实验目的:1.掌握8051串行口方式1的工作方式及编程方法。
2.掌握串行通讯中波特率的设置。
3.在给定通讯波特率的情况下,会计算定时时间常数。
二、实验设备:EL-MUT-III型单片机实验箱、8051CPU模块三、实验原理MCS-51单片机串行通讯的波特率随串行口工作方式选择的不同而不同,它除了与系统的振荡频率f,电源控制寄存器PCON的SMOD位有关外,还与定时器T1的设置有关。
1)在工作方式0时,波特率固定不变,仅与系统振荡频率有关,其大小为f/12。
2)在工作方式2时,波特率也只固定为两种情况:当SMOD=1时,波特率=f/32当SMOD=0时,波特率=f/643)在工作方式1和3时,波特率是可变的:当SMOD=1时,波特率=定时器T1的溢出率/16当SMOD=0时,波特率=定时器T1的溢出率/32其中,定时器T1的溢出率=f/(12*(256-N)),N为T1的定时时间常数。
在实际应用中,往往是给定通讯波特率,而后去确定时间常数。
例如:f=6.144MHZ,波特率等于1200,SMOD=0时,则1200=6144000/(12*32*(256-N)),计算得N=F2H。
例程中设置串行口工作于方式1,SMOD=0,波特率为1200。
循环彩灯的变化花样与实验二相同。
也可自行设计变化花样。
四、实验题目利用8051串行口发送和接收数据,并将接收的数据通过扩展I/O 口74LS273输出到发光二极管显示,结合延时来模拟一个循环彩灯。
五、实验连线:8031的TXD接RXD;74LS273的CS273接CS0;O0~O7接发光二极管的L1~L8;。
微机原理第三次实验报告
实验三串口通信实验一、实验目的与要求利用开发板的串口仿真功能,掌握串口通信的编程方法。
实验要求:(1)利用串行口向PC机发送字符“0x55”,利用串口调试软件在计算机端观察接收到的数据是否与预期一致。
(2)利用串行口向PC机发送字符串,利用串口调试软件在计算机端观察接收到的数据是否与预期一致(3)观察分析参考程序3,利用开发板接收PC机发送过来的16进制数据并用数码管显示。
(4)掌握实验基础内容后根据参考源程序进行修改和拓展,自行设计程序目标并编程验证,比如修改发送程序的内容,实现由上位机控制数码管显示内容等。
二、实验注意事项1、启动KEIL软件,选择菜单“工程\新建工程”以建立工程(扩展名为.uv2,如T2a.uv2)。
2、选择菜单“文件\新文件”以建立一个新的文本编辑窗口,在窗口中输入参考源程序1并保存(扩展名为.asm),如test2a.asm,然后将其加入到源程序组1中。
3、在工程菜单的选项“目标1属性”中设置相应的选项,包括“输出\产生hex 文件”选项以便汇编生成HEX代码供编程器使用,在“调试\使用KeilMonitor-51 Driver”的设置中选择相应的串口号。
4、使用“工程”中的“编译全部文件”完成相应的文件编译,如果程序格式正确将生成相应HEX代码文件,如T2a.hex。
如果提示有编译错误请自行修改源程序然后再重新编译。
5、用单根连线将P1.0(JP44)连接到8路指示灯部分(JP32)的LED0,将P1.6、P1.7(JP44)分别连接到JP37的K01、K02。
6、完成仿真器与计算机之间的连线并通电。
7、在KEIL软件中启动“调试\开启仿真模式”,然后用“运行”命令实现全速运行的仿真。
8、观察实验现象并分别依次按下K01、K02,观察并记录实验现象然后在KEIL 软件中启动“中断运行-调试(debug)\关闭仿真模式”退出仿真,选择“工程\关闭工程”可关闭当前工程。
9、参考步骤1-4完成参考源程序2的建立与输入,如新项目T2b.uv2和新的源程序test2b.asm,完成编译与仿真设置。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
MOVDX,AL
MOVDX,3FCH
MOVAL,10H
OUTDX,AL
RET
I8250ENDP
CODEENDS
ENDBEG
四、实验小结(包括问题和解决方法、心得体会、意见与建议等)
通过这次,我学会了串行接口8250的工作原理及编程和中断程序的设计,再利用微机系统串行通信知识成功进行了微机系统串行口的测试。书本知识与实践的结合使我体会更加深刻。
JZSCANR
MOVDL,AL
MOVAH,2
INT21H
MOVDL,ODH
INT21H
INCBX
LOOPSCANS
MOVAH,4CH
INT21H
I8250PROC
MOVDX,3FBH
MOVAL,80H
OUTDX,ALMOVDX,3F9H
MOVAL,0
OUTDX,AL
MOVDX,3F8H
MOVAL,60H
BEG:MOVAX,DATA
MOVDS,AX
CALLI8250
MOVBX,OFFSETMESG
MOVCX,COUNT
SCANS:MOVDX,3FDH
INAL,DX
TESTAL,20H
JZSCANS
MOVDX,3F8H
MOVAL,[BX]
OUTDX,AL
SCANR:MOVDX,3FDH
INAL,DX
TESTAL,21H
2
实验时间
2016/11/17
一、实验目的和要求
学习串行接口8250的工作原理及编程和中断程序的设计,运用微机系统串行通信知识,进行微机系统串行口的测试。
预习相关知识点,给出设计方案和程序框图,提前编制源程序。要求字符发送采用查询方式,字符的接收采用中断方式。
二、实验环境
PC,Windows系统,TPC-486EM_32位微机原理及接口技术实验系统
南邮通达微机系统串行口的测试实验三
实验报告
(2016/ 2017学年第一学期)
课程名称
微型计算机原理与接口技术
实验名称
微机系统串行口的测试
实验时间
2016
年
11
月
17
日
指导单位
南京邮电大学
指导教师
学生姓名
班级学号
学院(系)
通信工程
专业
信息工程
实验报告
实验名称
微机系统串行口的测试
指导教师
实验类型
综合
实验学时
五、指导教师评分Байду номын сангаас
成绩
批阅人
日期
2016.12
三、实验原理及内容
【实验3】编写程序对微机系统的串行口进行自发自收内环测试,从键盘键入发送数据,屏幕显示接收数据。
.586
DATASEGMENTUSE16
MESGDB‘14110214CYB’
COUNTEQU $-MESG
DATAENDS
CODESEGMENTUSE16
ASSUMECS:CODE,DS:DATA