电子科技大学微机实验报告实验
电子科技大学微电子器件实验报告MICRO-1
电⼦科技⼤学微电⼦器件实验报告MICRO-1电⼦科技⼤学实验报告(实验)课程名称微电⼦器件实验⼀:双极晶体管直流特征的测量学⽣姓名:学号:201203******指导教师:刘继芝实验地点:211楼605实验时间:2015、6、⼀、实验室名称:微电⼦器件实验室⼆、实验项⽬名称:双极晶体管直流特征的测量三、实验学时:3四、实验原理:1.XJ4810半导体管特性图⽰仪的基本原理⽅框图XJ4810图⽰仪的基本原理⽅框图如图1-3所⽰。
其各部分的作⽤如下。
(1)基极阶梯信号发⽣器提供必须的基极注⼊电流。
(2)集电极扫描电压发⽣器提供从零开始、可变的集电极电源电压。
(3)同步脉冲发⽣器⽤来使基极阶梯信号和集电极扫描电压保持同步,以便正确⽽稳定地显⽰特性曲线(当集电极扫描电压直接由市电全波整流取得时,同步脉冲发⽣器可由50Hz 市电代替)。
(4)测试转换开关是⽤于测试不同接法和不同类型晶体管的特性曲线和参数的转换开关。
(5)放⼤和显⽰电路⽤于显⽰被测管的特性曲线。
(6)电源(图中未画出)为各部分电路提供电源电压。
2.读测⽅法(以3DG6 npn 管为例)(1)输⼊特性曲线和输⼊电阻R i在共射晶体管电路中,输出交流短路时,输⼊电压和输⼊电流之⽐为R i ,即常数=??=CE V B BEi I V R 它是共射晶体管输⼊特性曲线斜率的倒数。
例如需测3DG6在V CE = 10V 时某⼀⼯作点Q 的R i 值,晶体管接法如图1-4所⽰。
各旋钮位置为:峰值电压范围 0~10V极性(集电极扫描)正(+)极性(阶梯)正(+)功耗限制电阻 0.1~1k Ω(适当选择)x 轴作⽤电压0 .1V/度 y 轴作⽤阶梯作⽤重复阶梯选择 0.1mA/级测试时,在未插⼊样管时先将x 轴集电极电压置于1V/度,调峰值电压为10V ,然后插⼊样管,将x 轴作⽤扳到电压0.1V/度,即得V CE =10V 时的输⼊特性曲线。
这样可测得图1-5;.200101.002.0310Ω=?=??=-=V VB BE i CE I V R图1-4 晶体管接法图1-5 晶体管的输⼊特性曲线(2)输出特性曲线、转移特性曲线和β、h FE 、α在共射电路中,输出交流短路时,输出电流和输⼊电流增量之⽐为共射晶体管交流电流放⼤系数β。
微型计算机实验一实验报告
微型计算机实验一实验报告一、实验目的本次微型计算机实验的主要目的是让我们熟悉微型计算机的硬件组成,了解计算机各部件之间的连接和工作原理,并掌握基本的计算机组装和调试技能。
通过实际操作,提高我们对计算机系统的认识和动手能力,为今后的学习和工作打下坚实的基础。
二、实验设备与工具1、计算机主机箱、主板、CPU、内存、硬盘、显卡、声卡、网卡等硬件设备。
2、螺丝刀、镊子、防静电手环等工具。
三、实验内容1、了解计算机硬件组成打开计算机主机箱,观察主板、CPU、内存、硬盘、显卡、声卡、网卡等硬件设备的外观和安装位置。
学习各硬件设备的功能和作用,如 CPU 负责运算和控制,内存用于临时存储数据,硬盘用于长期存储数据等。
2、计算机硬件组装戴上防静电手环,防止静电对硬件设备造成损坏。
首先安装 CPU,将 CPU 对准主板上的插座,轻轻放下,然后扣紧CPU 插座的扳手。
安装内存,将内存插槽两端的卡扣掰开,将内存条对准插槽,用力按下,直到两端的卡扣自动扣紧。
安装硬盘,将硬盘固定在机箱的硬盘架上,然后连接数据线和电源线。
安装显卡,将显卡插入主板上的 PCIE 插槽,并用螺丝固定。
安装声卡和网卡,根据主板的接口类型,将声卡和网卡插入相应的插槽。
连接机箱前面板的线缆,包括电源按钮、重启按钮、指示灯、USB 接口等。
3、计算机硬件调试检查各硬件设备的安装是否牢固,连接是否正确。
接通电源,按下电源按钮,观察计算机能否正常启动。
如果计算机无法启动,根据报警声和指示灯的提示,查找故障原因并进行排除。
四、实验步骤1、准备工作清理实验台,将所需的硬件设备和工具摆放整齐。
阅读计算机硬件组装的相关资料,了解组装的流程和注意事项。
2、硬件组装按照上述步骤,依次安装 CPU、内存、硬盘、显卡、声卡、网卡等硬件设备,并连接好线缆。
3、硬件调试检查组装完成的计算机,确保没有遗漏的部件和连接错误。
接通电源,按下电源按钮,观察计算机的启动情况。
如果计算机无法启动,首先检查电源是否正常,然后检查各硬件设备的连接是否松动。
电子科技大学微机实验报告(含思考题)河畔下的哈】实验6
实验六基于ARM的键盘及数码管驱动实验1.掌握键盘及数码管驱动原理。
2.掌握ZLG7290芯片的使用方法。
3.掌握I2C总线的协议标准。
4.掌握Linux下键盘驱动的实现方法。
编写测试程序控制键盘和数码管。
1.了解ARM9处理器结构2.了解i2c协议硬件:ARM嵌入式开发平台,PC 机Pentium100 以上。
软件:PC机Linux操作系统+MINICOM +AMRLINUX开发环境1、ZLG7290寄存器介绍ZLG7290内部有16个8bits寄存器,访问这些寄存器需要通过I2C 总线接口来实现.访问内部寄存器要通过“I2C总线地址+子地址”的方式来实现。
ZLG7290B 的I2C 总线器件地址是70H(写操作)和71H(读操作)。
? 键值寄存器Key(地址:01H)如果某个普通键(K1~K56)被按下,则微控制器可以从键值寄存器Key中读取相应的键值1~56。
如果微控制器发现ZLG7290 的INT 引脚产生了中断请求,而从Key 中读到的键值是0,则表示按下的可能是功能键。
键值寄存器Key 的值在被读走后自动变成0。
? 显示缓冲区DpRam0~DpRam7(地址:10H~17H)DpRam0~DpRam7 这8 个寄存器的取值直接对应8个数码管的显示内容。
每个寄存器的8 个位分别对应数码管的a,b,c,d,e,f,dp 段,MSB 对应a,LSB 对应dp。
例如大写字母H 的字型数据为6EH(不带小数点)或6FH(带小数点)。
? 命令缓冲区CmdBuf0 和CmdBuf1(地址:07H 和08H)通过向命令缓冲区写入相关的控制命令可以实现段寻址、下载显示数据、控制闪烁等功能。
2、ZLG7290控制命令介绍寄存器CmdBuf0(地址:07H)和CmdBuf1(地址:08H)共同组成命令缓冲区。
通过向命令缓冲区写入相关的控制命令可以实现段寻址、下载显示数据、控制闪烁等功能。
?下载数据并译码(Download)在指令格式中,高4 位的0110 是命令字段;A3A2A1A0 是数码管显示数据的位地址(其中A3 留作以后扩展之用,实际使用时取0 即可),位地址编号依次为0,1,2,3,4,5,6,7,代表8个数码管,dp 控制小数点是否点亮,0-点亮,1-熄灭;flash 表示是否要闪烁,0-正常显示,1-闪烁;d4d3d2d1d0 是要显示的数据,包括10 种数字和21 种字母。
电子科技大学微机实验报告实验5
电子科技大学微机实验报告实验5第一篇:电子科技大学微机实验报告实验5实验五基于ARM的模块方式驱动程序实验【实验目的】 1.掌握Linux 系统下设备驱动程序的作用与编写技巧 2.掌握Linux 驱动程序模块加载和卸载的方法 3.了解Linux 内核中的makefile和kconfig文件【实验内容】1.基于s3c2440 开发板编写led 驱动程序。
2.将编写好的led驱动加入linux内核中,修改makefile和kconfig文件,配置和编译内核。
3.编写关于led 的测试程序,交叉编译后运行,控制led 灯的亮灭。
【预备知识】1.了解ARM9处理器结构和Linux 系统结构2.熟练掌握C语言。
【实验设备和工具】ν硬件:ARM嵌入式开发平台,PC机Pentium100 以上。
ν软件:PC机Linux操作系统+MINICOM+AMRLINUX 开发环境【实验原理】νlinux设备驱动程序ν驱动的模块式加载和卸载ν编译模块ν装载和卸载模块ν led 驱动的原理在本开发板上有八个led指示灯,从下往上分别为LED0-LED7。
这八个led灯都是接的芯片上的gpio口(通用功能输入输出口)。
在本实验的开发板硬件设计中,当led 灯对应的gpio的电平为低时,led灯被点亮;当led灯对应的gpio的电平为高时,led灯灭。
本驱动的作用就是通过设置对应gpio口的电平来控制led 的亮灭。
因为ARM 芯片内的GPIO口都是复用的,即它可以被配置为多种不同的功能,本实验是使用它的普通的I/O口的输出功能,故需要对每个GPIO口进行配置。
在内核中已经定义了对GPIO口进行配置的函数,我们只需要调用这些函数就可以完成对GPIO口的配置。
【实验步骤】实验程序运行效果:程序会提示:“pleaseenterthe led status”输入与希望显示的led状态对应的ledstatus值(输入十进制值即可),观察led 的显示情况。
电子科技大学中山学院微处理器实验报告 (11)
Col |= 0x40; //显示第二行时DDRAM地址从40H开始
Col |= 0x80; //拼为DDRAM地址设置命令
LCD1602CmdWrite(Col); //发送DDRAM地址
while( *Str )
LCD1602DataWrite(*Str++); //连续发送每个字符的ASCII码
LCD1602_EN=1;
LCD1602_DATA=cmdByte; //发送命令字节
LCD1602_EN=0;
}
//*****************************LCD1602写数据函数*********************
void LCD1602DataWrite(uint8 DataByte)
//*****************************电子钟时间调整函数********************
void RTClockAdj()
{
if(++RTClock.Second< 60 ) return;
RTClock.Second=0;
if(++RTClock.Minute< 60 ) return;
{
TH0=(65536-45*1024)>>8; //设置50ms定时初值(对应晶振11.0592MHz)
TL0=(65536-45*1024)&0xFF;
if(++Timer50ms< 20 ) return;
Timer50ms=0; //已满1s,Timer50ms清0
RTClockAdj(); //时间调整
void Delay(uint16 ms)
电子科大微机实验报告实验6
。中]0[pmet 入写 sserdda 址地的器存寄的置配要将// 和址地器存寄括包 �据数的送发要放存于用组数个一义定//
�是数函现实体具�值的置配要入写后然�址地的器存寄的置配要入写先是程过现实体具
作工式方的要需们我照按管码数和盘键动驱而从�置配的器存寄部内 0927glz 对成完�数函些这用调过通是就�中验实本在。制控和作操的它对到达�备设 C2I 的们我到问访的便方很以可数函些这用调过通�数函口接的列系一了供提们我为 xuniL 绍介数函口接动驱 c2i 下 xuniL 、3 。烁闪不都位 有所�后位复。烁闪�1�示显常正�0�性属烁闪的位应相管码数制控�7�0�n�nF 的节 字 2第 �0000 值取常通 �位关无示表 xxxx �段字令命是 1110 的位 4 高 �中式格令命在 �hsalF�制控烁闪 �
。母字种 12 和字数种 01 括包�据数的示显要是 0d1d2d3d4d�烁闪�1�示显常 正�0�烁闪要否是示表 hsalf�灭熄�1�亮点�0�亮点否是点数小制控 pd�管码数个 8 表代�7,6,5,4,3,2,1,0 为次依号编址地位� �可即 0 取时用使际实�用之展扩后以作留 3A 中 其� 址地位的据数示显管码数是 0A1A2A3A �段字令命是 0110 的位 4 高 �中式格令指在 �daolnwoD�码译并据数载下 �
称名目项验实 �师老课任 �称名程课 �名姓 生 学 号 学
告
报
验
实
学 大 技 科 子 电
。能功等烁闪制控、据数示显载下、址寻段现实以可令命制控的关相入写区冲缓令命向 过通。区冲缓令命成组同共�H80�址地�1fuBdmC 和�H70�址地�0fuBdmC 器存寄 绍介令命制控 0927GLZ、2 。能 功等烁闪制控、据数示显载下、址寻段现实以可令命制控的关相入写区冲缓令命向过通 �H80 和 H70�址地�1fuBdmC 和 0fuBdmC 区冲缓令命 � 。 �点数小带�HF6 或�点数小带不�HE6 为据数型字的 H 母字写大如例。pd 应对 BSL�a 应对 BSM�段 pd,f,e,d,c,b,a 的管码数应对别分位个 8 的 器存寄个每 。容内示显的管码数个 8 应对接直值取的器存寄个 8 这 7maRpD�0maRpD �H71�H01�址地�7maRpD�0maRpD 区冲缓示显 �
电子科技大学微机实验报告-实验2
实验二 ARM 汇编控制LED 实验【实验目的】1、理解掌握通过ARM 汇编控制硬件操作;2、熟练使用ARM 调试软件RVDS 进行硬件调试。
【实验内容】1、掌握ARM 处理器GPIO 相关寄存器的使用;2、用ARM 汇编实现控制开发LED 按照一定方式点亮。
【预备知识】1、ARM 汇编基础2、ARM 处理器通用IO 口的操作【实验设备和工具】软件:Windows 操作系统,RVDS 软件硬件:ARM 嵌入式开发板,PC 机Pentium100 以上,并口线,JTAG 板,JTAG 连接线【实验原理】1、 S3C2440 处理器相关寄存器介绍PORT G 控制寄存器( GPGCON )PORT G 数据寄存器(GPGDAT)PORT G 禁止上拉寄存器(GPGUP)注:以上寄存器详细描述见实验指导书或者S3C2440 芯片手册。
2、开发板LED 部分原理图说明GPG5 接LED4,串联上拉电阻GPG6 接LED5,串联上拉电阻GPG7 接LED6,串联上拉电阻GPG8 接LED7,串联上拉电阻所以,当IO 口输出低电平时,相应的LED 才能点亮。
【实验步骤】(一)LED 汇编实验1、通过查看S3C2440 处理器G 口控制寄存器,在文件中添加汇编代码,设置GPG5-GPG8 为output。
2、在文件中添加汇编代码,禁止GPG5-GPG8 端口的上拉电阻。
3、在文件中添加汇编代码,点亮LED6,熄灭LED5,LED7,LED8,并调用延时。
4、在文件中添加汇编代码,点亮 LED7,熄灭 LED5,LED6,LED8,并调用延时。
5、在文件中添加汇编代码,点亮LED8,熄灭LED5,LED6,LED7,并调用延时。
6、在文件中添加汇编代码,实现LED5-LED8 依次点亮。
7.连接好 JTAG 仿真板,一口与 PC 的并口相连,另一口与开发板的 JTAG 口相连,打开开发板电源。
打开H-jtag 程序,检测CPU,点击RVDS 中的“Debu g”,打开RVD 进行硬件调试(二)LED C 语言实验(选做)【实验结果和程序】(一)LED 汇编实验;GPIO 寄存器宏定义GPGCON EQU 0xGPGDAT EQU 0xGPGUP EQU 0xEXPORT LEDTESTAREA LEDTESTASM,CODE,READONL Y ; 该伪指令定义了一个代码段,段名为LEDTESTASM,属性只读ENTRYLEDTEST;设置GPG5-GPG8(即LED4--LED7)为outputldr r0,=GPGCONldr r1,[r0]movr1,#0x00015400str r1,[r0];禁止GPG5-GPG8(即LED4--LED7)端口的上拉电阻ldr r0,=GPGUPldr r1,[r0]movr1,#0x01e0str r1,[r0]looptest;将数据端口G 的数据寄存器的地址附给寄存器r2ldr r2,=GPGDAT; 点亮LED5,熄灭LED6-LED8,并调用延时ldr r3,[r2]orrr3,r3,#0x01e0bicr3,r3,#0x0020str r3,[r2] ;GPG5(即LED5) output 0ldr r0,=0xffffff ;初始计数值bl delay ;调用延迟子程序;----------点亮LED6,熄灭LED5,LED7,LED8,并调用延时---- ldr r3,[r2]orrr3,r3,#0x01e0bicr3,r3,#0x0040str r3,[r2] ;GPG6(即LED6) output 0ldr r0,=0xffffff ;初始计数值bl delay;----------点亮LED7,熄灭LED5,LED6,LED8,并调用延时---- ldr r3,[r2]orrr3,r3,#0x01e0bicr3,r3,#0x0080str r3,[r2] ;GPG7(即LED7) output 0ldr r0,=0xffffff ;初始计数值bl delay;----------点亮LED8,熄灭LED5,LED6,LED7,并调用延时---- ldr r3,[r2]orrr3,r3,#0x01e0bicr3,r3,#0x0100str r3,[r2] ;GPG8(即LED8) output 0 ldr r0,=0xffffff ;初始计数值bl delay;-------------实现LED5-LED8 依次点亮-------------------b looptestdelaysub r0,r0,#1 ;r0=r0-1cmp r0,#0x0 ;将r0 的值与0 相比较bne delay ;比较的结果不为0(r0 不为0),继续调用delay,否则执行下一条语句mov pc,lr ;返回END ;程序结束符(二)LED C 语言实验(选做)arm 汇编部分:AREA |DATA|,CODE,READONL YENTRY;ldr r13,=0x1000IMPORT mainb mainENDC 语言部分://---------------Serial Experiment--------------------//-----------This is coded by UESTC HQ 20/*串口通信C 程序,按‘e’退出通信*/#define ULCON0 (*(volatile unsigned *)0x) //UART 线控制寄存器#define UCON0 (*(volatile unsigned *)0x) //UART 控制寄存器#define UFCON0 (*(volatile unsigned *)0x) //FIFO 控制寄存器#define UMCON0 (*(volatile unsigned *)0x5000000C) //AFC disable#define UTRSTA T0 (*(volatile unsigned*)0x) //UART 状态寄存器#define UBRDIV0 (*(volatile unsigned *)0x) //波特率#define UTXH0 (*(volatile unsigned *)0x)#define URXH0 (*(volatile unsigned *)0x)#define CAMDIV0 (*(volatile unsigned *)0x4C000018)#define GPHCON (*(volatile unsigned *)0x)#define GPHDAT (*(volatile unsigned *)0x)#define GPHUP (*(volatile unsigned *)0x)#define MPLLCON (*(volatile unsigned *)0x4C000004)#define UPLLCON (*(volatile unsigned *)0x4C000008)#define CLKDIVN (*(volatile unsigned *)0x4C000014)#define WTCON (*(volatile unsigned *)0x)void initpll(){MPLLCON=0x76022; //Fin=, Fout=CLKDIVN=0x07; //0000 0111}void inituart(){ULCON0=0x03; //1 位起始位,8 位数据位UCON0 =0x0805; //串口时钟PCLK,查询方式UFCON0 =0x0;UMCON0 =0x0;UBRDIV0 =0x17; // 波特率115200 UBRDIV0 = /(115200*16)-1=24-1=23}void initgpio(){GPHCON |=0xa0; // set to rxd and txdGPHUP |=0x0f; // pull upWTCON &=0xdb;}void uart_send(char * c){for (; *c != '\0'; c++){URXH0 = *c ;}}unsigned char uart_get() {}int main(){UTXH0=URXH0; return UTXH0;char key = ' ';initpll(); //初始化锁相环PLLinitgpio(); //初始化IO 口inituart(); //初始化串口uart_send("If you want to quit ,please press 'e'\r\n"); while(1){key = uart_get();if (key == 'e'){} else {uart_send ("\r\nyou pressed 'e' and you'll quit!\r\n"); break;uart_send(&key);}}uart_send("the program exited by user!\r\n");return 0;}【思考题】1 、如何实现 LED0-LED7 的循环点亮。
电子科技大学中山学院微处理器实验报告 (1)
Keil C51集成开发环境是80C51内核单片机的重要软件开发平台,内嵌多种符合工业标准的开发工具,可完成从工程建立到管理、编译(汇编)、连接、调试等完整的开发流程。Keil C51允许使用汇编或C语言编程,并提供软件模拟和硬件仿真两种调试方式。
本次实验通过几个汇编语言程序熟悉Keil C51集成开发环境的使用,掌握单片机程序设计与调试的一般流程。
三、实验内容和步骤
1(1)
ORG 0000H
LJMP MAIN
ORG 0100H
MAIN: MOV SP,#60H;SP=60H
MOV R0,#30H ; R0=30H
MOV R1,#40H ; R1=40H
MOV @R0,#55H ;(30H)=55
MOV @R1,#0AAH ;(40H)=AA
MOV A,@R1 ;A=AA
电子科技大学中山学院学生实验报告
院别:电子信息学院课程名称:微处理器实验
班级
13电科A
姓名
张益航
学号
2012010201070
实验名称
集成开发环境的熟悉与指令练习
实验时间
2015年9月29日
成绩
教师签名
批改时间
报告内容
一、实验目的和任务
1、熟悉Keil C51集成开发环境的使用。
2、掌握80C51单片机程序创建、汇编、连接与调试方法。
END
2
(1)ORG 0000H
LJMP MAIN
ORG 0100H
MAIN: MOV R0,#45H
MOV R2,#16
NEXT1: MOV @R0,#'1'
INC R0
DJNZ R2,NEXT1
2023年微机实验报告完整版
《微机试验》汇报试验名称 KeilC旳使用与汇编语言上机操作指导教师刘小英专业班级中法1201 姓名肖洋学号 U 联络一、任务规定1.掌握KeilC环境旳使用1)字节拆分、合并:调试e421.asm程序,观测有关寄存器和单元旳内容。
2)数据块填充:调试fill.asm程序,观测有关寄存器和单元旳内容。
2. 编写两个十六位数旳加法程序。
有两个十六位无符号数,分别寄存在从20H和30H开始旳数据区中,低八位先存,高八位在后,和存于R3(高八位)和R4(低八位),进位位存于R2。
二、设计思绪1.字节拆分、合并程序:运用汇编语言中旳 XCHD 和 SWAP 两个语句来实现将八位二进制数拆分为两个四位二进制数并分别存储于不一样旳存储空间旳功能,BCD 码与 30H 相或(加上 30H)得到 ASCII 码。
将两个 ASCII 码和 0FH 相与(高四位清零)得到 BCD 码,运用 SWAP 语句将高位数放至高四位,将高位数和低位数相或可实现字节旳合并。
2.数据块填充程序:将 R0 用作计数器,DPTR 用作片外数据指针,A 作为原始数据来源,依次序在片外旳存储单元内容填充数据。
运用循环语句来减少程序长度,并控制填充单元个数为片外 100H 个。
(通过 R0 旳进位控制)3.两个十六位数加法程序:把第一种十六位无符号数旳地八位和高八位分别存于 20H 和21H 中,把第二个十六位无符号数旳地八位和高八位分别存于 30H 和 31H 中,对 20H 和30H 中旳两个低八位进行 ADD 加法操作,成果存于 R4 中;然后对 21H 和 31H 中旳两个高八位进行 ADDC 带进位旳加法操作,成果存于 R3 中.然后将累加器 A 清零,并和#00H 进行 ADDC 带进位旳加法操作,成果产生进位数并存于 R2 中,程序结束。
三、资源分派1. 字节拆分、合并程序:片内 30H 单位寄存原 BCD 码,31H 和 32H 寄存拆分后旳两个 ASCII 码,33H 寄存合并后旳 BCD 码。
微机实验 交通灯实验报告
微机实验交通灯实验报告微机实验交通灯实验报告引言交通灯作为城市交通管理的重要组成部分,对于保障交通安全和顺畅起着至关重要的作用。
本次实验旨在通过微机控制,模拟交通灯的工作原理,并实现交通灯的自动控制。
一、实验目的本次实验的主要目的是通过搭建一套微机控制系统,实现交通灯的自动控制,并通过实验验证交通灯在不同道路情况下的工作原理和效果。
二、实验原理1. 交通灯的工作原理交通灯通常由红、黄、绿三个信号灯组成。
红灯表示停止,黄灯表示准备,绿灯表示可以通行。
交通灯通过不同颜色的灯光变化,指示车辆和行人何时可以通行,以保障交通的有序进行。
2. 微机控制系统微机控制系统是利用计算机和相应的软硬件实现对设备、机器等的控制和管理。
在交通灯实验中,我们可以通过编程控制计算机输出不同的信号,从而实现交通灯的自动控制。
三、实验器材和步骤1. 实验器材- 微机控制系统:包括计算机、编程软件和控制接口等。
- 交通灯模型:模拟真实的交通灯,包括红、黄、绿三个信号灯。
2. 实验步骤- 连接交通灯模型和微机控制系统。
- 编写程序,设置交通灯的工作时间和信号灯变化规律。
- 运行程序,观察交通灯的工作状态和变化过程。
四、实验结果和分析通过实验,我们成功地实现了交通灯的自动控制。
在程序中,我们设置了红灯亮10秒,黄灯亮3秒,绿灯亮15秒的时间间隔,模拟了真实交通灯的工作规律。
在实验过程中,我们观察到交通灯按照预设的时间间隔循环变化,红灯亮起时车辆停止,绿灯亮起时车辆可以通行。
这样的交通灯控制方式可以有效地维持交通的有序进行,减少交通事故的发生。
五、实验总结通过本次实验,我们深入了解了交通灯的工作原理和微机控制系统的应用。
微机控制系统作为一种高效、精确的控制手段,可以广泛应用于各个领域,提高设备的自动化程度和工作效率。
在今后的学习和工作中,我们将继续深入学习微机控制系统的原理和应用,掌握更多的编程技巧和控制方法,为实现更多实际问题的自动化解决方案做出贡献。
电子科技大学中山学院微处理器实验报告 (9)
P0=0x7f;
if(P35==0) return 7;//K7
if(P34==0) return 0xF4; //KEYF4
return 0xFF;//KEYNULL
}
void display(unsigned char *dis,unsigned char n)
{0x00,0x3C,0x04,0x08,0x10,0x10,0x10,0x00}, //'7'
{0x00,0x18,0x24,0x24,0x18,0x24,0x24,0x18}, //'8'
{0x00,0x18,0x24,0x24,0x1C,0x04,0x24,0x18}}; //'9'
//{0x0C,0x12,0x12,0x12,0x1E,0x12,0x12,0x00}, //'A'
delay(500);
}
}
void main(void)
{
unsigned char dis[8]={0,1,2,3,4,5,6,7};
while(1)
{
display(dis,8);
}
}
2、用8*8LED点阵循环显示0-9。
#include <reg52.h>
sfr P4 = 0xC0;
sfr P4SW = 0xBB;
}
unsigned char getkey(void)
{
P0=0x00;
if(P34==1&&P35==1)
return 0xFF;//KEYNULL
delay(10);
P0=0xfe;
微机原理与系统设计实验四
实验1 继电器控制实验一、实验目的1、了解微机控制直流继电器的一般方法。
2、进一步熟悉使用8255、8253。
二、实验所用仪器(或实验环境)计算机、微机原理实验箱、USB接口模块、汇编语言开发软件等三、实验原理将8253 计数器0 设置为方式3、计数器1 设置为方式0 并联使用,CLK0 接1MHZ 时钟,设置两个计数器的初值(乘积为5000000)启动计数器工作后,经过5秒钟OUT1 输出高电平。
通过8255 的PA0口查询OUT1的输出电平,用C 口PC0输出开关量控制继电器动作。
继电器开关量输入端输入“1”时,继电器常开触点闭合,发光二极管接通,指示灯亮,输入“0”时断开,指示灯灭。
四、实验内容1、使用8254定时,让继电器周而复始的闭合5 秒钟(指示灯灯亮),断开5 秒钟(指示灯灯)。
2、改变指示灯亮灭的周期为2s,改用PC7口控制继电器。
五、方案设计1、实验接线及分析接线:8255/CS 接I/O 地址译码/Y1(288H---28FH)8255/PC0 接继电器8255/PA0 接8254/OUT18254/CS 接I/O 地址译码/Y0(280H---287H)8254/CLK0 接时钟/1MHz8254/OUT0 接8254/CLK18254/GATE0,1 接+5V硬件电路分析:(包括端口地址分析)2、实现该内容的方案(或原理)3、画出流程图六、实验程序设计;***************************;;* 继电器控制 *;;***************************;io8253a equ 280hio8253b equ 281hio8253c equ 283hio8255a equ 288hio8255c equ 28ahio8255ctl equ 28bhcode segmentassume cs:codestart: mov dx,io8255ctlmov al,90hlll: out dx,almov dx,io8255cmov al,01 ;将PC0置位out dx,alcall delay ;延时5smov al,0 ;将PC0复位out dx,alcall delay ;延时5sjmp lll ;转llldelay proc near ;延时子程序push dxmov dx,io8253c ;设8254计数器为方式3 mov al,36hout dx,almov dx,io8253amov ax,10000 ;写入计数器初值10000 out dx,almov al,ahout dx,almov dx,io8253cmov al,70h ;设计数器1为工作方式0out dx,almov dx,io8253bmov ax,500 ;写入计数器初值500out dx,almov al,ahout dx,alll2: mov ah,06 ;是否有键按下mov dl,0ffhint 21hjne exit ;若有则转exitmov dx,io8255ain al,dx ;查询8255的Pa0是否为高电平 and al,01hjz ll2 ;若不是则继续pop dxret ;定时时间到,子程序返回exit: mov ah,4chint 21hdelay endpcode endsend start七、实验结果分析及回答问题八、实验总结与心得体会实验2 电子琴实验一、实验目的1、通过8253 产生不同的频率信号,使PC 机成为简易电子琴。
微机原理及应用实验报告
微机原理及应用实验报告微机原理及应用实验报告1. 引言微机原理及应用是计算机科学与技术专业的一门重要课程,通过该课程的学习和实验,我们可以深入了解微机的基本原理和应用技术。
本文将对我们进行的微机原理及应用实验进行详细报告,包括实验目的、实验内容、实验步骤、实验结果及分析等。
2. 实验目的本次实验的目的是通过实际操作,加深对微机原理的理解,掌握微机的基本组成和工作原理,以及学习并应用微机的常见应用技术。
3. 实验内容本次实验主要涉及以下内容:- 微机的基本组成和结构- 微机的工作原理- 微机的存储器和输入输出设备- 微机的指令系统和编程技术4. 实验步骤4.1 实验一:微机的基本组成和结构在这个实验中,我们首先学习了微机的基本组成和结构,包括中央处理器、存储器、输入输出设备等。
通过观察实际的微机硬件设备,我们对微机的组成有了更加直观的认识。
4.2 实验二:微机的工作原理在这个实验中,我们学习了微机的工作原理,包括指令的执行过程、中央处理器的工作原理等。
通过实际操作,我们对微机的工作过程有了更加深入的理解。
4.3 实验三:微机的存储器和输入输出设备在这个实验中,我们学习了微机的存储器和输入输出设备的原理和应用。
通过实际操作,我们了解了存储器的读写过程,以及输入输出设备的工作原理。
4.4 实验四:微机的指令系统和编程技术在这个实验中,我们学习了微机的指令系统和编程技术。
通过实际编写和执行简单的汇编语言程序,我们掌握了微机的编程技术,并了解了指令的执行过程。
5. 实验结果及分析通过以上实验,我们对微机的原理和应用有了更加深入的理解。
我们通过实际操作,掌握了微机的基本组成和结构,了解了微机的工作原理,熟悉了微机的存储器和输入输出设备,掌握了微机的指令系统和编程技术。
这些知识和技能对我们今后的学习和工作都具有重要的意义。
6. 总结通过本次微机原理及应用实验,我们深入了解了微机的基本原理和应用技术。
通过实际操作,我们对微机的组成和工作原理有了更加直观和深入的理解,掌握了微机的存储器和输入输出设备的原理和应用,以及微机的指令系统和编程技术。
电子科技大学中山学院学生实验报告
电子科技大学中山学院学生实验报告学院:机电工程专业:课程名称:微机原理与应用实验电子科技大学中山学院学生实验报告学院:机电工程专业:课程名称:微机原理与应用实验电子科技大学中山学院学生实验报告学院:机电工程专业:课程名称:微机原理与应用实验电子科技大学中山学院学生实验报告学院:机电工程专业:课程名称:微机原理与应用实验班级:姓名:学号:组别:实验名称:实验四可编程并行接口8255(方式0)实验时间:成绩:教师签名:批改时间:一、实验目的和任务掌握8255方式0的工作原理及使用方法。
二、实验内容1.实验电路如图4-1,8255C口接逻辑电平开关K0~K7,A口接LED显示电路L0~L7。
2. 编程从8255C口输入数据,再从A口输出。
图4-1 图4-2编程提示:1)8255控制寄存器端口地址28BHA口的地址288HC口的地址28AH2)参考流程图(见图4-2)三、实验过程和数据记录1.源程序:电子科技大学中山学院学生实验报告学院:机电工程专业:课程名称:微机原理与应用实验班级:姓名:学号:组别:实验名称:实验五七段数码管实验时间:成绩:教师签名:批改时间:一、实验目的和任务掌握数码管显示数字的原理。
二、实验内容1.静态显示:按图5-1连接好电路,将8255的A口PA0~PA6分别与七段数码管的段码驱动输入端a~g相连,位码驱动输入端S1接+5V(选中),S0、dp接地(关闭)。
编程从键盘输入一位十进制数字(0~9),在七段数码管上显示出来。
2.动态显示:按图5-2连接好电路,七段数码管段码连接不变,位码驱动输入端S1,S0接8255 C口的PC1,PC0。
编程在两个数码管上显示“56”。
3.动态显示:使用图5-2的电路,编程在两个数码管上循环显示“00-99”。
图5-1 图5-2编程提示:1)实验台上的七段数码管为共阴型,段码采用同相驱动,输入端加高电平选中的数码管亮,位码加反相驱动器,位码输入端高电平选中。
微机原理实验报告
微机原理实验报告实验目的,通过本次实验,掌握微机原理的基本知识,了解微机系统的组成和工作原理,掌握微机系统的组装和调试方法。
实验一,微机系统组成及工作原理。
1.1 微机系统的组成。
微机系统由中央处理器(CPU)、内存、输入设备、输出设备和外部设备等组成。
其中,CPU是微机系统的核心部件,负责控制整个系统的运行。
1.2 微机系统的工作原理。
微机系统的工作原理是通过CPU对内存中的指令进行解释和执行,从而实现各种功能。
CPU通过总线与内存、输入输出设备进行数据传输和控制信号的交换,实现对整个系统的控制和管理。
实验二,微机系统的组装和调试。
2.1 微机系统的组装。
在组装微机系统时,首先要选择合适的主板、CPU、内存、硬盘等配件,然后按照正确的安装顺序和方法进行组装。
组装完成后,还需连接电源、显示器、键盘、鼠标等外部设备。
2.2 微机系统的调试。
组装完成后,需要对微机系统进行调试,检查各个部件是否连接正确,是否能够正常工作。
通过BIOS设置和操作系统的安装,完成对微机系统的调试和配置。
实验三,微机系统的应用。
3.1 微机系统的应用领域。
微机系统广泛应用于各个领域,如办公、教育、科研、娱乐等。
在办公领域,微机系统可以用于文字处理、表格制作、图像处理等;在教育领域,微机系统可以用于多媒体教学、网络教学等。
3.2 微机系统的发展趋势。
随着科技的不断发展,微机系统也在不断更新换代,性能不断提升,体积不断缩小,功耗不断降低。
未来,微机系统将更加智能化、便携化,成为人们生活、工作不可或缺的一部分。
结论,通过本次实验,我对微机原理有了更深入的了解,掌握了微机系统的组成和工作原理,了解了微机系统的组装和调试方法,对微机系统的应用和发展趋势也有了一定的认识。
这对我今后的学习和工作将有很大的帮助。
电子科技大学微机实验报告[含思考题]河畔下的哈]实验
实验三ARM汇编实现串口通信实验1.掌握ARM 的串行口工作原理。
2.学习编程实现ARM和PC机的UART通信。
3.掌握ARM裸机下汇编语言编程方法。
1.学习串行通信原理,了解串行通信控制寄存器。
2.编程实现ARM 和计算机之间的串行通信。
1、ARM汇编基础2、ARM处理器通用IO口的操作? 硬件:ARM嵌入式开发平台,PC 机一台,并口线,串口线,JTAG板? 软件:RVDS,H-JTAG1.异步串行I/O异步串行方式是将传输数据的每个字符一位接一位(例如先低位、后高位)地传送。
数据的各不同位可以分时使用同一传输通道,因此串行I/O 可以减少信号连线,最少用一对线(输入,输出)即可进行。
2.串口通信流程串口通信就是读写寄存器的操作,通过配置相关寄存器,查询寄存器就可以操作串口通信。
需要配置的寄存器有系统时钟,UART行控制寄存器,UART控制寄存器,UART FIFO控制寄存器,UART MODEM控制寄存器,UART波特率控制寄存器;需要查询的寄存器是发送/接收状态寄存器。
1. 打开CodeWarrior for RVDS,建立一个工程,通过查S3C2440处理器手册的UART通信寄存器,serialcommutication.s文件中添加代码实现串口通信传输2. 设置工程配置选项,Language Setting->Realview Assembler和Realview Compiler中的Architecture设置为ARM920T,配置RVDS下的连接器Linker->Realview Linker中的RO Base 为0x300000003.编译和调试工程。
4. 连接PC和实验板的并口,串口;并口连接至ARM的JTAG口,串口连接至COM PORT 口;打开电源;打开H-JTAG程序(。
5. 点击调试器Dubeg->Run,运行程序,打开超级终端,在开始->程序->附件->通讯里打开超级终端,使用COM1,设置波特率115200,8位数据位,无奇偶校验,1位停止位,无数据流控制。
微机系统实验报告材料
电子科技大学实验报告实验一汇编语言编程实验一、实验目的(1)掌握汇编语言的编程方法(2)掌握 DOS 功能调用的使用方法(3)掌握汇编语言程序的调试运行过程二、实验设备PC 机一台。
三、实验容1. 将指定数据区的字符串数据以ASCII码形式显示在屏幕上,并通过DOS功能调用完成必要提示信息的显示。
2. 在屏幕上显示自己的学号信息。
3. 循环从键盘读入字符并回显在屏幕上,然后显示出对应字符的ASCII码,直到输入”Q”或“q”时结束。
4. 自主设计输入显示信息,完成编程与调试,演示实验结果。
四、实验源码DA TA SEGMENTDISCHA DB'WangHan 14030188004',0AH,0DH,'$'TAB DB' ',0AH,0DH,'$'BLANK DB' $'DA TA ENDSSTACK SEGMENTSTACK ENDSCODE SEGMENTASSUME CS:CODE,DS:DA TA,SS:STACKSTART:MOV AX,SEG DISCHAMOV DS,AXMOV DX,OFFSET DISCHAMOV AH,09HINT 21HNEXT:MOV AH,01HINT 21HCMP AL,'Q'JE ENDSSCMP AL,'q'JE ENDSSMOV BL,ALMOV AX,SEG BLANKMOV DS,AXMOV DX,OFFSET BLANKMOV AH,09HINT 21HMOV BH,0AHMOV DL,BLMOV CL,04HSHR DL,CLCMP DL,BHJNL Q3JMP Q2Q1:ADD DL,07HQ2:ADD DL,30HMOV AH,02HINT 21HMOV DL,BLMOV DH,0FHAND DL,DHCMP DL,BHJNL Q3JMP Q4Q3:ADD DL,07HQ4:ADD DL,30HMOV AH,02HINT 21HMOV AX,SEG TABMOV DS,AXMOV DX,OFFSET TABMOV AH,09HINT 21HMOV CX,0009HLOOP NEXTENDSS:MOV AH,4CHINT 21HCODE ENDSEND START五、程序流程图如下图1.2所示图1.2程序流程图实验二数码转换实验一、实验目的1. 掌握不同进制数及编码相互转换的程序设计方法。
电子科技大学中山学院微处理器实验报告(10)
for(j=0;j<128;j++)
//反转90°(1024步)
for(i=0;i<8;i++) {
P2=REV_TABLE[i] Delay(5);
;
//查表并输出反转相序字
//软件延时(控制步进电机转速)
} Delay(2000);
}
} //******************************软件延时函数*************************
//********************************头文件声明*************************
#include <reg51.h>
//*******************************数据类型定义************************ typedef unsigned char uint8; typedef unsigned int uint16; //****************************特殊功能寄存器声明*********************
uint8 ScanKey()
{
if(P32==1&&P34==1&&P35==1&P37==1)
return 0xFF;
//无键按下时,返回0xFF
Delay(10);
//延时消抖
if(P32==0) return 0;
//KX0~KX3按下,分别返回0,1,2,3
if(P34==0) return 1;
{
uint16 i;
do
{
for(i=700;i;i--);
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验四基于ARM 的嵌入式Linux 开
发环境建立
【实验目的】
1. 掌握嵌入式Linux 开发环境的基本流程。
2. 熟悉Linux 操作系统
3. 熟悉嵌入式开发平台
【实验内容】
在PC 机虚拟机下的Linux 系统中建立基于ARM 的嵌入式Linux 开发环境。
1. 学会网口的
配置
2. Minicom 端口的使用
【预备知识】
1.了解ARM9 处理器结构
2.了解Linux 系统结构
3. 了解ARM 开发板使用常识
【实验设备和工具】
硬件:PC 机Pentium100 以上,ARM 嵌入式开发平台
软件:PC 机Linux 操作系统+MINICOM + AMRLINUX 开发环境
【实验原理】
1.交叉编译器在一种计算机环境中运行的编译程序,能编译出在另
外一种环境下运行的代码,我们就称这种编译器支持交叉编译,这
个编译过程就叫交叉编译。
简单地说,就是在一个平台上生成另一
个平台上的可执行代码。
这里需要注意的是所谓平台,实际上包含两个概念:体系结构
(Architecture)、操作系统(Operating System)。
同一个体系结构可以运行不同的操作系统;同样,同一个操作系统也可以在不同的体系结构上运行。
举例来说,我们常说的x86
Linux平台实际上是Intel x86体系结构和Linux for x86操作系统的统称;而x86 WinNT平台
实际上是Intel x86体系结构和Windows NT for x86操作系统的简称。
交叉编译这个概念的出现和流行是和嵌入式系统的广泛发展同步的。
我们常用的计算机软
件,都需要通过编译的方式,把使用高级计算机语言编写的代码(比如C代码)编译(compile)成计算机可以识别和执行的二进制代码。
比如,我们在Windows平台上,可使用Visual C++
开发环境,编写程序并编译成可执行程序。
这种方式下,我们使用PC平台上的Windows工具开发针对Windows本身的可执行程序,这种编译过程称为native compilation,中文可理解
为本机编译。
然而,在进行嵌入式系统的开发时,运行程序的目标平台通常具有有限的存储空间和运算能力,比如常见的 ARM 平台,其一般的静态存储空间大概是16到32MB,而CPU
的主频大概在100MHz到500MHz之间。
这种情况下,在ARM平台上进行本机编译就不太可能了,这是因为一般的编译工具链(compilation tool chain)需要很大的存储空间,并需要很强
的CPU运算能力。
为了解决这个问题,交叉编译工具就应运而生了。
通过交叉编译工具,我们就可以在CPU能力很强、存储空间足够的主机平台上(比如PC上)编译出针对其他平台的
可执行程序。
要进行交叉编译,我们需要在主机平台上安装对应的交叉编译工具链(cross compilation tool-chain),然后用这个交叉编译工具链编译我们的源代码,最终生成可在目标平台上运行的代码。
常见的交叉编译例子如下:
1、在Windows PC上,利用RVDS(ARM 开发环境),使用armcc编译器,则可编译出针对ARM CPU
的可执行代
码。
2、在Linux PC上,利用arm-linux-gcc编译器,可编译出针对Linux ARM平台的可执行代码。
3、在Windows PC上,利用cygwin环境,运行arm-elf-gcc编译器,可编译出针对ARM CPU的可执行代码。
2.NFS
服务
NFS是Net File System的简写,即
网络文件系统.
网络文件系统是FreeBSD支持的文件系统中的一种,也被称为NFS. NFS允许一个系统在网络上与它人共享目录和文件。
通过使用NFS,用户和程序可以像访问本地文件一样访问远端系
统上的文
件。
NFS至少有两个主要部分:一台服务器和一台(或者更多)客户机。
客户机远程访问存放在服务器上的数据。
为了正常工作,一些进程需要被配置并运行。
在本实验中就是将PC机作为服务器,而将ARM开发板作为客户机,这样ARM开发板就可以远程
访问存放在在PC机上的数据,这样可以缩短研发周期,
更方便的调试程序。
【实验步
骤】
1. 双击桌面上 VMWARE,打开
Linux 虚拟机
2. 点击启动虚拟机,
启动虚拟机
3. 以 root 身份登陆虚拟
机,密码123456
4. 其他步骤详见实
验指导书
【实验结果和程
序】
基于 ARM 的嵌入式 Linux 开发环境
建立完毕。
【思考
题】
1.如何验证交叉编译器已安
装成功?
答:在终端输入命令: cd /arm/rootfs/home/driver (文件夹里已有test_led.c文件)
arm-linux-gcc –o test_led test_led.c 若有可执行文件test_led 生成则表示交叉编译器已安装成功
2.如果我们需要变更根文件系统的目录,该如何设置使得ARM 开发板可以成功挂载?答:修改/etc/exports 文件的内容,将
/arm/rootfs *(rw,sync,no_root_squash) 改为/XX/XXX
*(rw,sync,no_root_squash) (/XX/XXX 为变
更后点的文件目录)
3.怎么在 u-boot 命令行下修改 ARM
开发板的IP?
答:输入 setenv
ip=x.x.x.x:192.168.0.1:192.168.0.1:255.255.255.0:uestc:et
h0:off
Savee
nv
x,x,x,x 为 ARM 开发
板的新IP。
【实验结
论】
本实验实现了基于ARM 的嵌入式Linux 开发环境建立。