《单片机技术》 实验指导书
机械电子工程系 2011年9月
目 录
实验一 实验二 实验三 实验四 实验五 实验六 实验七 实验八 实验九 实验十
实验十一 实验十二 实验十三 实验十四 附录一 附录二
数据传送(RAM–>XRAM) ................................................................ 1 P1口数据输入、输出实验(跑马灯实验) ............................. 3 P1口数据输出实验(交通灯控制实验) ................................. 7 外部中断实验(急救车与交通灯) ............................................ 10 8279键盘显示实验 ................................................................... 12 电子钟(定时器、中断综合实验) ............................................ 15 双机通讯实验 ............................................................................ 18 RS232串口通讯实验 ................................................................. 20 并行AD实验(数字电压表实验) .............................................. 23 并行DA实验(信号发生器实验) .............................................. 27
继电器控制实验 ...................................................................... 30 直流电机测速实验 .................................................................. 32 LED16*16点阵实验 ................................................................. 38 图形点阵显示实验 .................................................................. 44 STAR ES598PCI实验仪硬件结构 ........................................... 52 星研集成环境软件简介 .......................................................... 53
实验一 数据传送(RAM–>XRAM)
一、实验目的
1、熟悉星研集成环境软件或熟悉Keil C51集成环境软件的使用方法。
2、掌握80C51内部RAM和外部RAM之间的数据传送方法;掌握这两部分RAM存贮器的特点与应用,掌握各种数据传送方法。
3、熟悉80C51汇编指令,能自己编写简单的程序,掌握数据传输的方法。 二、实验设备
STAR系列实验仪一套、PC机一台 三、实验内容
1、熟悉星研集成环境软件或熟悉Keil C51集成环境软件的安装和使用方法。 2、编写并调试一个数据传送程序:将30H~3FH数据送到数据存贮器1000H~100FH中。实现内外部数据段的传送、校验。 四、实验框图
开始 堆栈指针初始化计数器、地址初始化N内部RAM数据传送外部RAM一次地址指针+1计数器-1=0?计数器-1=0?Y计数器、地址指针复位传送错误结束NY传送正确N取内部RAM和对应的外部RAM比较是否相等?Y地址指针+1 五、实验步骤
1、运行程序前,打开变量窗、二个存贮器窗(一个选择片内数据;一个选择片外数据,起始地址选择1000H)。
2、在内部RAM 30H~3FH中输入数据;使用单步、断点方式调试程序,检测外部数据RAM的1000H~100FH中的内容。
3、熟悉查看特殊功能寄存器、内部数据RAM、外部数据空间的各种方法。 【注意】实验箱中已经将单片机最小电路(电源、时钟电路及复位电路)连接
-1-
完成,因此,该部分不再需要连线。 六、程序清单
;将内部RAM Address1 开始的16个字节送到外部RAM从Address2开始的单元里, ;再作比较。 Address1 DATA 30H ;内部ROM存放数据起始地址 Address2 XDATA 1000H ;外部ROM存放数据起始地址 ORG 0000H LJMP STAR ORG 0100H STAR: MOV SP,#60H ;初始化堆栈指针 MOV R0,#Address1 MOV DPTR,#Address2 MOV R7,#10H STAR1: MOV A,@R0 ;传送 MOVX @DPTR,A INC R0 INC DPTR DJNZ R7,STAR1 MOV R0,#Address1 MOV DPTR,#Address2 MOV R7,#10H STAR2: MOV B,@R0 ;比较 MOVX A,@DPTR CJNE A,B,STAR3 INC R0 INC DPTR DJNZ R7,STAR2 SJMP $ ;传送正确 STAR3: SJMP $ ;传送错误 END 七、思考题
编写程序分别实现以下功能:
①将外部数据存贮区1000H~100FH中的数据送到80C51内部RAM 40~4FH中。 ②将外部数据存贮区1000H~100FH的内容写入外部RAM 3030~303FH中。
-2-
实验二 P1口数据输入、输出实验(跑马灯实验)
123一、实验目的 1、通过实验了解单片机最小系统。 2、了解P1口作为输入、输出方式使用时,CPU对P1口操作方法。 3、学习延时子程序的编写和使用。 二、实验设备 STAR系列实验仪一套、PC机一台 三、实验内容 1、P1口做输出口,接G6区的八个发光二极管(其输入端为低电平时发光二极管点亮),编写程序,使发光二极管循环点亮(瞬间只有一个灯亮)。 2、P1.0、P1.1作输入口接两个拨动开关S21、S22;P1.2,P1.3作输出口,接两个发光二极管DS35、DS36,编写程序读取开关状态,将此状态在发光二极管上显示出来。 【注意】P1口是准双向口,它作为输出口时与一般的双向口使用方法相同。由....准双向口结构可知当口用作输入口时,编程时必须先对口的锁存器写“1”;若不.P1..........................先对它写“1”,读入的数据是不正确的。 四、实验原理图 【注意】本实验指导书中的原理图只给出了重要部分原理图,单片机最小系统均未给出,请学生参考教材补充完整。 123456785105105105105105105105109P1.0P1.1P1.2P1.3P1.4P1.5P1.6P1.7RST/VPDP3.0/RXDP3.1/TXDP3.2/INT0P3.3/INT1P3.4/T0P3.5/T1P3.6/WRP3.7/RDXTAL2XTAL1GND89C52VccP0.0P0.1P0.2P0.3P0.4P0.5P0.6P0.7EA/VPPALE/PROGPSENP2.7P2.6P2.5P2.4P2.3P2.2P2.1P2.04039383736353433323130292827262524232221R111DS35DS36L1L2R112DS37L3R113DS38L4R114DS39L5R115DS40L6P1口循环点灯原理图 R116DS41L7R117DS42L8VCCR1181011121314151617181920 -3-