利用74LS164芯片扩展8位LED串行显示接口电路
- 格式:doc
- 大小:406.00 KB
- 文档页数:11
8位LED 串行显示器设计一、设计目的利用74LS164芯片扩展8位LED 串行显示。
学习和掌握单片机中常用接口电路的应用和设计技术,充分认识理论知识对应用技术的指导性作用,进一步加强理论知识与应用相结合的实践和锻炼。
通过这次设计实践能够进一步加深对专业知识和理论知识学习的认识和理解,使自己的设计水平和对所学的知识的应用能力以及分析问题解决问题的能力得到全面提高。
二、设计要求1、要求将片内30H-37H 单元中数据,8个数码管,用扩展串行的显示端口显示出来。
2、要求做出实物。
三、硬件电路设计3.1 系统结构框图3.2 STC89C52单片机介绍89C52共有四个八位的并行双向口,即有32根输入输出口线。
各口的每一位均单片机 STC89C52 74LS164 移位寄存器 LED 数码管由锁存器、输出驱动器和输入缓冲器组成。
引脚功能:VCC(40引脚):电源电压VSS(20引脚):接地P0端口(P0.0~P0.7,39~32引脚):P0口是一个漏极开路的8位双向I/O口。
作为输出端口,每个引脚能驱动8个TTL负载,对端口P0写入“1”时,可以作为高阻抗输入。
在访问外部程序和数据存储器时,P0口也可以提供低8位地址和8位数据的复用总线。
此时,P0口内部上拉电阻有效。
在Flash ROM编程时,P0端口接收指令字节;而在校验程序时,则输出指令字节。
验证时,要求外接上拉电阻。
P1端口(P1.0~P1.7,1~8引脚):P1口是一个带内部上拉电阻的8位双向I/O口。
P1的输出缓冲器可驱动(吸收或者输出电流方式)4个TTL输入。
对端口写入1时,通过内部的上拉电阻把端口拉到高电位,这是可用作输入口。
P1口作输入口使用时,因为有内部上拉电阻,那些被外部拉低的引脚会输出一个电流。
P1口特点是输出锁存器,输出时没有条件。
输入缓冲,输入时有条件,即需要先将该口设为输入状态,先输出1。
此外,P1.0和P1.1还可以作为定时器/计数器2的外部技术输入(P1.0/T2)和定时器/计数器2的触发输入(P1.1/T2EX)P3口为准双向口。
使用74LS164制作流水灯单片机初学者对于流水灯实验一定特别的熟悉,这个实验逻辑清晰,效果明显,在各类单片机以及微机控制相关材料中都会进行讲解。
当我们学习了一段时间单片机之后,或者在进行单片机系统设计时,会发现51单片机的引脚有时并不是很够用,有时候需要尽量节省单片机I/O引脚。
如何节省I/O引脚是我们在设计单片机系统时,经常需要考虑的一个问题。
下面以8个LED组成的流水灯效果的实现为例,讲解如何节省单片机的I/O引脚。
通常我们会采用如图1所示的电路图,通过单片机直接驱动8个LED,但是这种控制方式消耗了8个单片机引脚。
图1 常规流水灯电路我们也可以使用三八译码器来完成流水灯的效果。
其控制电路图如图2所示(这种控制方式在我之前上传的文档中有详细介绍,感兴趣读者可以查看)。
这种控制方式虽然可以在一定程度上可以节省单片机I/O接口的使用,如下图所示,最少只需要使用3个I/O口。
但是这种方式也存在一定的缺点,这种控制方式只能同时点亮1个LED 灯,如果想实现两个以及以上的LED灯点亮的效果,那么这种电路将无法直接实现效果。
图2 三八译码器拓展I/O口下面我们看一下能够使用其他的芯片,来进一步降低单片机I/O 口的消耗。
使用串行转并行芯片74LS164来制作流水灯效果,其控制原理图如图3所示。
从原理图中可以看出,使用了74LS164芯片控制流水灯之后,只占用了单片机的两个I/O口。
一个用于输出时钟脉冲,另外一个用于输出串行数据。
图3 74LS164控制流水灯原理图与前面采用译码器控制的流水灯相比,使用74LS164控制的流水灯效果具有如下两个显著优点:1.占用单片机I/O口少,最少仅为2个。
2.控制功能强大,74LS164驱动的流水灯点亮的个数没有限制,可以任意数量点亮。
编程思路:单片机以最快的速度通过串口控制8个LED灯的点亮状态,由于此过程极短,人眼无法分辨,通过延时函数稳定输出效果,并延时一定时间,再次以最快的速度通过串口控制8个LED灯的亮灭状态,并执行延时函数实现等待效果,如此反复,就可以实现流水灯的效果,且可以实现任意的流水灯的效果。
集中实践报告书课题名称 利用74LS164芯片扩展8位LED 串行显示接口电路姓 名 学 号 系、 部 专业班级 指导教师※※※※※※※※※ ※※ ※※ ※※※※※※※※※※※年月日利用74LS164芯片扩展8位LED串行显示接口电路一、设计目的利用74LS164芯片扩展8位LED串行显示。
学习和掌握单片机中常用接口电路的应用和设计技术,充分认识理论知识对应用技术的指导性作用,进一步加强理论知识与应用相结合的实践和锻炼。
通过这次设计实践能够进一步加深对专业知识和理论知识学习的认识和理解,使自己的设计水平和对所学的知识的应用能力以及分析问题解决问题的能力得到全面提高。
二、设计要求1. 要求将片内30H-37H单元中数据,8个数码管,用扩展串行的显示端口显示出来。
2. 要求做出实物。
三、硬件电路设计74LS164是串行输入并行输出的移位寄存器,每接一片74LS164可扩展一个8位并行输出口,可以作为LED显示器的8根段选线。
实物如图3-1所示。
系统总电路原理图如图3-2,为89C52单片机最小系统与8位数码管的连接图,分别用8个74LS164和8个LED数码管。
部分硬件电路原理图如图3-3所示。
图3-1 电路连接实物图图3-2 总电路原理图图3-3 部分硬件电路原理图数码管中有8段LED数码管显示器由8个发光二极管组成。
LED数码管显示器有两种不一样的形式:一种是8个发光二极管的阳极都连在一起的,称之为共阳极LED数码管显示器;另一种是8个发光二极管的阴极都连在一起的,称之为共阴极LED数码管显示器。
本次设计采用共阳极LED数码管。
在单片机应用系统中,数码管显示器显示常用两种办法:静态显示和动态扫描显示。
所谓静态显示,就是每一个数码管显示器都要占用单独的具有锁存功能的I/O接口用于笔划段字形代码。
这样单片机只要把要显示的字形代码发送到接口电路,就不用管它了,直到要显示新的数据时,再发送新的字形码,因此,使用这种办法单片机中CPU的开销小。
8 位串入、并出移位寄存器1. 概述74HC164、74HCT164 是高速硅门 CMOS 器件,与低功耗肖特基型 TTL (LSTTL) 器件的引脚兼容。
74HC164、74HCT164 是 8 位边沿触发式移位寄存器,串行输入数据,然后并行输出。
数据通过两个输入端(DSA 或 DSB)之一串行输入;任一输入端可以用作高电平使能端,控制另一输入端的数据输入。
两个输入端或者连接在一起,或者把不用的输入端接高电平,一定不要悬空。
时钟 (CP) 每次由低变高时,数据右移一位,输入到 Q0, Q0 是两个数据输入端(D SA 和 DSB)的逻辑与,它将上升时钟沿之前保持一个建立时间的长度。
主复位 (MR) 输入端上的一个低电平将使其它所有输入端都无效,同时非同步地清除寄存器,强制所有的输出为低电平。
2. 特性•门控串行数据输入•异步中央复位•符合JEDEC 标准no. 7A•静电放电(ESD) 保护:·HBM EIA/JESD22-A114-B 超过2000 V·MM EIA/JESD22-A115-A 超过200 V 。
•多种封装形式•额定从-40 °C 至+85 °C 和-40 °C 至+125 °C 。
3. 功能图图 1. 逻辑符号图 2. IEC 逻辑符号图 3. 逻辑图图 4. 功能图4. 引脚信息图 5. DIP14、SO14、SSOP14 和 TSSOP14 封装的引脚配置引脚说明符号引脚说明DSA 1数据输入DSB 1数据输入Q0~Q3 3~6输出GND7 地(0 V)CP 8时钟输入(低电平到高电平边沿触发)/M/R 9中央复位输入(低电平有效)Q4~Q710~13输出VCC14正电源罗74HC164中文资料(功能,真值表,引脚图及电气参数介绍)SN54HC164,/SN74HC164是8位移位寄存器,当其中一个(或二个)选通串行输入端的低电平禁止进入新数据,并把第一个触发器在下一个时钟脉冲来后复位到低电平时,门控串行输入端(A 和B)可完全控制输入数据。
电控设计规范按键和LED复用电路设计指引1总述在空调整机上,常常用到按键和LED显示电路,但由于芯片口资源有限,需要按键和LED复用芯片口,下面根据常用按键和LED复用电路介绍其工作原理及注意事项。
2电路原理2.1电路原理图2.2工作原理简介74LS164芯片(以下简称164芯片):8位串入并出移位寄存器。
如图所示,数码管与LED采用共阳极驱动,164芯片Q0-Q7需输出低电平才能点亮与其对应的数码管字段或LED灯;164芯片输出口作为SEG口输出信号,主芯片口作为COM口, 且数码管和LED 的显示采用COM口逐一点亮,SEG口一次全亮的方式;由于数码管个位、十位和LED等的点亮时序不同,所以他们之间不会相互干扰;由于数码管与LED显示用了3个COM口,建议按键扫描程序每隔8 ms左右进入一次,连续四次检测到按键输入就确定,如此可消除按键抖动,增强抗干扰;由于按键扫描频率为8ms,远小于人眼能感知的闪烁频率12ms,因此数码管和LED灯看起来都是没有闪烁的。
2.3各元器件作用第 1 页在电路中,164芯片输出口Q0-Q7作为SEG口输出信号,包括数码管、LED显示信号及按键扫描信号;Q1、Q2分别控制数码管个位,十位的显示与否,Q3控制LED的显示与否;电阻R28,R39,R40确保三极管Q1,Q2,Q3可靠导通与截止;二极管D2-D9,D20-D26利用其单向导通的特性,起隔离作用,确保按键不相互干扰。
2.4各元器件的选型该电路中各元器件可选择性较大,出于通用性和标准化考虑,经实际应用验证,各元器件选型标准要求如下:5.4.1选择三极管Q1, Q2, Q3一般选取三极管KTC90125.4.2选择二极管D2-D9,D20-D26一般选取二极管1N41485.4.3选择电阻R8-R10,R38-R40,R11-R12一般选取电阻2K,5%5.4.4选择电阻R33,R34一般选择电阻10K,5%5.4.5选择电阻R16-R23一般选择电阻330欧,5%。
目录1. 题目设计要求..................................................................2.系统的硬件设计..................................................................2.1系统采用的元器件..........................................................2.2器件选择..................................................................2.2.1 AT89C51概述及引脚功能..............................................2.2.2 74164的技术指标及工作原理..........................................3.系统硬件电路图设计..............................................................3.1振荡电路及复位电路设计....................................................3.2电路原理图................................................................ 4.系统的软件设计.................................................................4.1编程语言选择..............................................................4.2发送字符串模块设计........................................................4.4源代码....................................................................4.5编译结果..................................................................5.系统仿真调试 ...................................................................5.1仿真调试的过程............................................................5.2仿真调试的结果............................................................6.总结 ........................................................................... 7参考文献........................................................................1.题目设计要求用8051单片机的串行口外接串入并出的芯片74164扩展并行输出口,控制一组发光二极管,使发光二极管从下至上延时轮流显示。
单片机课程设计报告74IS164串行输出扩展运用班级:09移动1班姓名:王家树、黄志豪学号:09112002、09112003指导老师:陈海松一、课题的提出选择这个课程设计,是由于陈老师在课程上曾提到过74IS164芯,并且对串口通信比较喜欢,通过老师的咨询,便提出做一个关于74IS164的串行通信程序应用设计的报告。
二、设计任务和要求任务:设计一个能够由数码管显示,编写一个关于74IS164的串输入并行输出一串数字。
要求:利用单片机的并行串行I/O 口,利用C 语言中的指针函数,编写一段好用 又简洁的设计代码。
三、设计方案的论证1首先从参考文献中可以查到 54/74164是8位移位寄存器(串行输入,并行输 出),是8位边沿触发式移位寄存器,串行输入数据,然后并行输出。
数据通 过两个输入端(DSA或DSB )之一串行输入;任一输入端可以用作高电平使能端, 控制另一输入端的数据输入。
时钟(CP )每次由低变高时,数据右移一位,输入 到QO , Q0是两个数据输入端(DSA 和DSB )的逻辑与,它将上升时钟沿之前保 持一个建立时间的长度。
主复位(MR )输入端上的一个低电平将使其它所有输入 端都无效,同时非同步地清除寄存器,强制所有的输出为低电平。
2、功能图图1.逻辑符号CP3 斗 5£©10—11□12 —□13&1D34S610111213SRGS四、硬件资源及其分配关键元件:89C51芯片,74IS164芯片、数码管、复位电路主要用到的硬件:P3 口、数码管、串行输出输入口;硬件分配:1•串行输出输入口(单片机51的10、11脚)分别接第一个74IS164的8脚1、2 脚,第二第三第四第五第六个进行级联;2. 74IS164的9脚复位端接高电平;3. 每个数码管(a b、c、d、e、f、g)接74ls164 并行输出口(3、4、5、6、10、11、12、13);五、硬件图:1£_:29Jfl-:31XTAL1PO.O/ADO P0.1/AD1 P0.2/AD2 XTAL2P03/AD3 P0.4/AD4 P0.5/AD6 P0.6/AD6 RSTP0.7/AD7 P2.0/A8 P2.1/A9 P2 2fA103E J —11: 35—11: 33 ■ ^12;PSEN ALE EAP2.3fA11 P2.4JA1 2 P25fA13 P2.6fA1 4P2.7JA1524丄—il丄士士丄土012345671 1 .1 1- 1 1 P3.0/RXD P3 1HXD P3.2flNTg P3.3/iNTT P3.4/T0 P3.5/T1 P3.6/WRP3.7/RD10 叫1 仁 txq_L2:…_L2 _L£ _L^ _LZ ARl^FlI P=ni^ri I FDhRy (AT89C51 控制) 弓RGB 1 1 n-LM-iMH〜L -13I-Lit ■BU11*lag(74IS164 级联)(整图分布)六、主程序:1第一次编写的程序 #in elude <reg51.h>#define _DISP_LED_h__void Disp_LED(unsigned int *key_num); void DelayNS(unsigned int dly); void main() {int nu mb[6]={1,5,8,3,1,2}; Disp_LED( nu mb); DelayNS(20);}void Disp_LED(u nsig ned int *key_ num) { 一 一Un sig ned char code LED_Val[]={0x03,0x9f,0x25,0x0d,0x99,0x49,0x41,0x1f,0x01,0x09};//0-9 un sig ned char data nu m[6];un sig ned char k; num[ 0]=*key_ num; nu m[1]=*(key_num+1); nu m[2]=*(key_num+2); nu m[3]=*(key_num+3); num[ 4]=*(key_ nu m+4); nu m[5]=*(key_ nu m+5);for(k=0;k<=5;k++)R&Trarr HF rrpul- PI .i fu 卜M E t-ii t-ii hlviwoe- I «.IMi j MdtiiJ RMfiaES L IW I T科出片3■治 时」靳I ■:皿2HHMli■梓Fi.imA »(-*nr frutfTT利丄砒[F-J^Ti MMffir 科.WT F JI fwT 蛋=1玉 4.■IK5-IiRCFlE^terLHiJiM-h■■>i・m ・・』■ h dI■>1I J aIfa■ hdI■I I.■b■・■!■3 I■ ■ ■":'^^1° -!:- ■■I - '1 v :n-fSI ^rMI ^r|5| nrf"| fr-|EI 訂={:I ;;::』:; Lfllj : ;; I J HJ :: IJWI--》25 ___ r-k£吐ID|聊IJ^L»>■^fTi^i^O4*84SBUF=LED_Val[ nu m[5-k]]; while(TI==O);TI=O;}}void DelayNS(u nsig ned int dly){int i,j;for(i=0;i<10000;i++) for(j=0;j<dly;j++);}2、第二次自学的头文件编写的程序:〃Disp_LED.c 主程序#in clude <reg51.h>#in clude "DISP_LED.h"void main(){int numb[6]={1,5,8,3,1,2};Disp_LED( nu mb); DelayNS(20);}〃DISP_LED.h 自编头文件#ifndef __DISP_LED_h__ #defi ne __DISP_LED_h__ void Disp_LED(u nsig ned int *key_ nu m); void DelayNS(u nsig ned int dly);/*函数名称:Disp_LED函数功能:数码管显示输入参数:key_num*/void Disp_LED(u nsig ned int *key_ num) { 一一un sig ned char code LED_Val[]={0x03,0x9f,0x25,0x0d,0x99,0x49,0x41,0x1f,0x01,0x09};//0-9un sig ned char data nu m[6];un sig ned char k;num[ 0]=*key_ num;nu m[1]=*(key_num+1);nu m[2]=*(key_num+2);nu m[3]=*(key_num+3);num[ 4]=*(key_ nu m+4);nu m[5]=*(key_ nu m+5);for(k=0;k<=5;k++){SBUF=LED_Val[ nu m[5-k]];while(TI==0);TI=0;}}/*函数名称:DelayNS 函数功能:延时程序输入参数:dly 返回信息:无*/void DelayNS(u nsig ned int dly) {int i,j; for(i=0;i<10000;i++) for(j=0;j<dly;j++);} #en dif七、调试运行1、按照电路图将电路用protues仿真。
74ls164与单片机的串并转换(串转并\串进并出)
74LS164串转并实验本实验是用74LS164把输入的串行数转换成并行数输出,74LS164为串行输入并行输出移位寄存器,其引脚图及功能如下:
A、B:串行输入端;
QA~QH:并行输出端;
CLR:清零端,低电平有效;
CLK:时钟脉冲输入端,上升沿有效。
实验采用单片机串行工作方式0和P1端口两种方式串行输出数据。
串行口工作方式0时,数据为8位,从RXD端输出,TXD端输出移位信号,其波特率固定为Fosc/12。
在CPU 将数据写入SBUF寄存器后,立即启动发送。
待8位数据输完后,硬件将状态寄存器的TI位置1,TI必须由软件清零。
串行口工作方式0数据/时钟是自动移位输出,用P1端口输出数据时,要编程位移数据,每输出一个数据位,再输出一个移位脉冲。
内容及步骤:
本实验需要用到单片机最小系统(F1区)、十六位逻辑电平显示(I4区)和74LS164(G3区)。
1、选用89C51单片机最小应用系统模块,用八位数据线连接74LS164的并行输出JD5G 与十六位逻辑电平显示模块JD2I,将74LS164的串行输入端A/B(1和2脚)接到RXD 上,CLK接到TXD上,CLR接INT0。
2、用串行数据通信线连接计算机与仿真器,把仿真器插到模块的锁紧插座中,请注意仿真器的方向:缺口朝上。
3、打开KeiluVision2仿真软件,首先建立本实验的项目文件,接着添加TH23_74164.ASM 源程序,进行编译,直到编译无误。
4、全速运行程序,观察发光二极管亮灭情况,先右移动两次,再左移动两次,然后闪烁两次。
※※※※※※※※※
※※
※※
※※
※※※※※※※※※
集中实践报告书
利用74LS164芯片扩展8位LED串行课题名称
显示接口电路
姓名
学号
系、部
专业班级
指导教师
年月日
利用74LS164芯片扩展8位LED串行显示
接口电路
一、设计目的
利用74LS164芯片扩展8位LED串行显示。
学习和掌握单片机中常用接口电路的应用和设计技术,充分认识理论知识对应用技术的指导性作用,进一步加强理论知识与应用相结合的实践和锻炼。
通过这次设计实践能够进一步加深对专业知识和理论知识学习的认识和理解,使自己的设计水平和对所学的知识的应用能力以及分析问题解决问题的能力得到全面提高。
二、设计要求
1. 要求将片内30H-37H单元中数据,8个数码管,用扩展串行的显示端口显示出来。
2. 要求做出实物。
三、硬件电路设计
74LS164是串行输入并行输出的移位寄存器,每接一片74LS164可扩展一个8位并行输出口,可以作为LED显示器的8根段选线。
实物如图3-1所示。
系统总电路原理图如图3-2,为89C52单片机最小系统与8位数码管的连接图,分别用8个74LS164和8个LED数码管。
部分硬件电路原理图如图3-3所示。
图3-1 电路连接实物图
图3-2 总电路原理图
图3-3 部分硬件电路原理图
数码管中有8段LED数码管显示器由8个发光二极管组成。
LED数码管显示器有两种不一样的形式:一种是8个发光二极管的阳极都连在一起的,称之为共阳极LED数码管显示器;另一种是8个发光二极管的阴极都连在一起的,称之为共阴极LED数码管显示器。
本次设计采用共阳极LED数码管。
在单片机应用系统中,数码管显示器显示常用两种办法:静态显示和动态扫描显示。
所谓静态显示,就是每一个数码管显示器都要占用单独的具有锁存功能的I/O接口用于笔划段字形代码。
这样单片机只要把要显示的字形代码发送到接口电路,就不用管它了,直到要显示新的数据时,再发送新的字形码,因此,使用这种办法单片机中CPU的开销小。
89C52单片机外接8片74LS164作为8位LED数码管显示器的静态显示接口,把89C52的RXD作为数据输出线,TXD作为移位时钟脉冲。
四、流程图设计
图4-1 主流程图
由流程图可知设置好串口的工作方式,用定时器T1产生波特率,依次传递30H到37H八个数依次传递到数码管。
五、程序设计
#include <>
#include <>
#define uchar unsigned char
#define uint unsigned int
#define a0 DBYTE[0X30]=0x02
#define a1 DBYTE[0X31]=0x00
#define a2 DBYTE[0X32]=0x01
#define a3 DBYTE[0X33]=0x06
#define a4 DBYTE[0X34]=0x00
#define a5 DBYTE[0X35]=0x06
#define a6 DBYTE[0X36]=0x03
#define a7 DBYTE[0X37]=0x00
uchar
ledCode[10]={0x03,0x9f,0x25,0x0d,0x99,0x49,0x41,0x1f,0x01,0x09};
void delay(uint t)
{
uint j;
for(;t>0;t--)
for (j=6245;j>0;j--)
{;}
}
main()
{
SCON=0x00;
TMOD=0x10;
TH1=0x39;
TL1=0x16;
TR1=1;
ET1=1;
delay(50);
SBUF=ledCode[a0]; delay(50);
while(TI==0)
{
}
TI=0;
SBUF=ledCode[a1]; delay(50);
while(TI==0)
{
}
TI=0;
SBUF=ledCode[a2]; delay(50);
while(TI==0)
{
}
TI=0;
SBUF=ledCode[a3]; delay(50);
while(TI==0)
{
}
TI=0;
SBUF=ledCode[a4];
while(TI==0)
{
}
delay(50);
SBUF=ledCode[a5];
while(TI==0)
{
}
TI=0;
delay(50);
SBUF=ledCode[a6];
while(TI==0)
{
}
TI=0;
delay(50);
SBUF=ledCode[a7];
while(TI==0)
{
}
TI=0;
delay(50);
}
实验结果如图5-1,30H-37H单元的八位数据为。
图5-1运行结果
六、设计总结:
串行显示的原理:将89C51单片机的串行口设置在工作方式0,只要把数据往SBUF里放,系统就自动将串行数据由RXD()送出,其中移位时钟由TXD()送出。
将74LS164的A、B端与RXD相接,CLK与TXD相接,MR接高电平,在满足条件时数据就传送到74LS164并寄存。
将前一个74LS164的QH端连接到下一个74LS164的QA端,再将CLK端连接到一起并接到TXD,则送数据时,前后数据就会依次从上一个片子传到下一个片子。
根据设计思路,即将片内30H-37H单元中数据,用扩展串行的显示端口显示出来和串行显示的原理。
首先对30H-37H单元定义,然后对30H-37H单元赋值,将89C51单片机的串行口设置在工作方式0,然后用定时器T1设置好波特率由TXD()送出移位时钟,然后依次传递30H-37H单元的八位数据到74LS164输出到数码管。
通过本次课程设计,我懂得了理论与实际相结合是非常重要的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才能真正学到知识,从而提高自己的实际动手能力和独立思考的能力。
七、参考文献:
[1] 高峰.单片微型计算机原理与接口技术.科学出版社,2007.
[2] 余锡存.微机原理及接口技术.西安电子科技大学
[3] 李广弟.2001.单片机基础.北京.北京航空航天大学出版社
[4] 郑坤.微型计算机技术实验指导书.2007.。