1、海南大学单片机实验讲义实验一 并行口实验一、实验目的1、掌握51汇编语言设计和调试方法。2、掌握protues软件平台的操作步骤。二、实验内容及步骤(一)、在单片机外部扩展8KB RAM芯片6264,其地址范围为0000H1FFFH。将片内ROM从1000H开始的存放的15个数据转存到外部RAM 1000H开始的单元中。请编写程序实现。查看并给出外部RAM地址为1000H100EH的内容。(提示:程序中定义的数据存放在内部ROM中。 ORG 1000H Data1:DB 11h,22h,33h、FFh )图1 电路原理图实验步骤:1、 运行protues 7软件。或者双击打开实验一中的shiy
2、1_P0.DSN。2、 记事本编辑51汇编源程序。3、 按图2图4步骤添加、编译源程序。4、 编译通过后,运行程序。观察8051 CPU寄存器、RAM、SFR的内容,及外部RAM 1000H开始的内容。步骤见图5图9。图2 添加源代码图3 编译源代码图4 编译成功提示图5 运行程序图6 选择8051 CPU寄存器、RAM、SFR图7 打开8051 CPU寄存器、RAM、SFR图8 暂停运行程序,打开外部RAM(即U3)窗口图9 外部RAM地址1000H100FH单元内容(二)编写汇编程序,用P2口控制LED灯,显示为流水灯的形式。按图10所示电路原理图,搭接电路,编写程序,实现功能。图10 P
3、2口控制流水灯显示(三)实验箱的连接1、将实验箱与计算机通过USB口连接。2、运行桌面上的下载器“风标电子ISP”。3、选中“擦除芯片”、“编程Flash”、“校验Flash”。然后点击“打开文件”,选择由自己编写的汇编程序成功编译生成的hex文件,最后点击“自动编程”将程序下载到实验箱的单片机。三、实验报告1、画出电路原理图。(有学号、姓名)2、写出程序清单、运行结果截图。实验二 中断控制实验一、实验目的1、掌握中断程序的编程方法。2、进一步掌握并行口的双功能使用方法。二、实验内容1、编程实现:正常情况下,仅绿灯亮。有故障发生时,绿灯灭,红灯闪烁;故障排除后,拨上总开关,恢复正常,即绿灯亮,
4、红灯灭。 思路:使用P1.0控制绿灯的亮灭;P1.1控制红灯的亮灭;P1.2读取总开关的状态;P3.3复用为外部中断1的输入源,模拟故障发生。 图2-1 外部中断1电路主程序及子程序框图:思考题1:将外部中断1改为使用外部中断0,电路与程序如何变动?(1) 硬件电路上,将中断源引至P3.2引脚。(2) 外部中断0的中断向量地址为0003H。(3) 初始化外部中断0的指令。(SETB EX0;SETB IT0)思考题2:当有中断请求时,即有故障发生时,红灯闪烁同时报警器响。程序应该如何变动? 图 2-2 添加报警器的电路原理图三、实验报告1、画出电路原理图。(有学号、姓名)2、写出程序清单、运行
5、结果截图。实验三 定时/计数实验 一、实验目的1、 熟悉8031定时/计数功能。2、 掌握定时/计数初始化编程方法。二、实验内容1、 选择T1工作于模式0定时,在P1.0脚上输出周期为4ms的方波,单片机采用6MHZ晶振。分析:输出周期为4ms的方波,即高低电平的持续时间均为2ms,那么只要使P1.0脚上的电平每隔2ms取反一次,就可得到周期为4ms的方波。 将T1设为定时方式0:GATE=0,C/T=0,M1M0=00;T0不用,可为任意,只要不使其进入方式3(此时,定时器1对外停止计数),一般取0即可。计数初值的计算:单片机系统默认的定时/计数器的工作时钟是晶振经12分频的,即T=12/(6*106),所以计数初值为 X=(213-2ms/T)=213-(2*10-3*6*106)/12=8192-1000=7192=1110000011000B因为是13位计数器,所以X的高8位装入TH1,X的低5位装入TL1的低5位,即TH1=0E0H,TL1=18H。 思考:T1计数结束采用中断工作方式 ,程序应如何编写?2、在P1.7端接一个发光二极管LED,要求利用定时器控制,使LED亮1秒、灭1秒,周而复始,设=6MHZ。三、实验内容一参考程序框图: 三、实验报告1、画出电路原理图。(有学号、姓名)2、写出程序清单、运行结果截图。
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1