实验一 P1口亮灯实验

合集下载

《单片机原理及接口技术》课程实验大纲

《单片机原理及接口技术》课程实验大纲

《单片机原理及接口技术》课程实验大纲课程名称:《单片机原理及接口技术》实验英文名称:《MCU principles and interface technologies》experiment课程性质:专业选修课程课程编号:0510085所属系部:机电工程学院总学时:14学时预备知识:电路、数字电子技术课程在教学计划中的地位作用:本课程是机械电子工程专业的一门重要专业选修课程。

目前单片机技术开发和应用水平已成为一个国家工业化发展水平的标志之一。

单片机原理及其应用已成为从事电子技术的工程技术人员必须掌握的基础理论和基本技能之一。

通过本课程的学习使学生实践上掌握单片计算机的基本组成、工作原理及常用接口技术,建立单片机系统整体概念,使学生具备单片机应用系统软、硬件开发的初步能力。

教学方式:理论与实践相结合教学的目的与要求:通过本课程的学习,使学生掌握单片机的硬件结构、MCS-51的指令系统、MCS-51汇编语言程序设计、MCS-51的中断系统、MCS-51的定时器/计数器、MCS-51的串行口、MCS-51单片机扩展存储器的设计、MCS-51扩展I/O接口的设计、MCS-51 与键盘、显示器的接口设计、MCS-51单片机与D/A转换器和A/D转换器的接口、MCS-51的功率接口、MCS-51的串行通信技术及其扩展接口。

进一步理解MCS-51单片机的开发装置、工作原理、编程方法,学会使用开发机进行程序。

课程教材:《单片机原理及接口技术》蔡美琴主编高等教育出版社参考书目:1.《单片机程序设计基础》周航慈主编北京航天航空大学出版社2. 《单片机原理及其接口技术》胡汉才主编清华大学出版社编写日期:2012年6月制定课程内容及学时分配:发光二极管显示各相状态。

要求:掌握步进电机控制系统的硬件设计方法;熟悉步进电机驱动程序的设计与调试,提高单片机应用系统设计和调试的能力。

正确连接电路,编写程序,调试运行。

实验一P1口亮灯实验一、实验目的1.学习P1口的使用方法;2.学习延时子程序的编写。

定时器中断实验报告

定时器中断实验报告

实验三运用定时中断方法控制P1口亮灯实验报告一、实验目的1学习内部定时/计数器的使用2学习定时中断处理程序的编程方法二、实验预备知识1.P1口是准双向口,可以定义为输入,也可以定义为输出2.本实验中延时子程序采用指令循环来实现。

3.延时时间的计算:延时时间=机器周期×指令所需机器周期数×循环次数其中循环次数可以采用多重循环来实现三、实验内容程序如下:一、外部中断选择边沿触发方式控制灯的状态ORG 00HLJMP MAINORG 03HLJMP INTERRUPTORG 30HMAIN: SETB EX0SETB IT0SETB EAMOV A,#00HMOV P1,ASJMP $INTERRUPT: INC AMOV P1,ARETI二、用定时器定时方式控制灯的状态 ORG 0000HLJMP MAINORG 000BHLJMP DISPLAYORG 0030HMAIN:MOV IE,#82HMOV TMOD,#01HMOV P1,#01HMOV TH0,#9EHMOV TL0,#58HMOV R7,#10SETB TR0SJMP$DISPLAY:MOV TH0,#9EHMOV TL0,#58HDJNZ R7,LOOPMOV A,P1RL AMOV P1,AMOV R7,#10LOOP:RETI三、实验心得及体会对于中断的设置用到P3口的第二功能,第一个实验中,我所设置的触发方式为边沿触发,中断输入的管脚应该为P3.2即外部中断0输入,因此给外加脉冲时应该给到P3.2。

第一次因未分清触发所给管脚导致脉冲加入时无反应。

编写中断及初始化程序时,中断地址的开辟要提前在主程序之前给出,以实现执行中断时指针的转移。

做有关定时程序之前要首先弄清楚晶振的大小,以确定一个机器周期的时间,在这次试验中,试验箱所用晶振为6MHZ,一个机器周期的时间为2us,总计数时间可以达到131ms,但是无法满足0.5s的时间要求,所以用R7预置循环次数,显得尤为重要。

单片机原理与应用实验教案

单片机原理与应用实验教案

《单片机原理及应用》实验教学大纲课程编号:B04611016课程类别:专业课实验学时:16学时学分:2.5适用专业:计算机科学与技术一、实验教学目的和任务本课程是计算机及应用专业一门重要的专业课。

其教学内容直接面向生产。

同时,微机向小型化、超小型化方面发展愈来愈迅猛。

单片机应用已渗透社会各个领域,特别在通信技术中的应用,大大提高了通信技术水平。

学生应具备这方面的知识与技能,为今后参加工作,打下坚实的基础。

二、实验教学基本要求本课程是一门很注重实践的课程。

以研究MCS-51系列单片机入手,掌握其硬件结构、指令系统和程序设计,以及常用接口技术和典型应用实例。

三、实验教学内容实验项目一:清零程序1、实验目的及要求要求学生掌握软件的结构和键盘的调试。

2、实验内容及学时分配(2学时)(1)了解MCS-51软件的构造(2)掌握清零程序的输入方法(3)了解起始伪指令的输入方法实验项目二:拼字和拆字程序1、实验目的及要求要求学生掌握存储器分配和汇编语言的简单应用。

2、实验内容及学时分配(2学时)(1)进一步掌握MCS-51软件的基本使用方法(2)掌握指令的寻址方式(3)掌握数据传送指令和地址内容的分配实验项目三:数据区传送子程序1、实验目的及要求要求学生掌握RAM数据存储器实际操作。

2、实验内容及学时分配(2学时)(1)掌握MCS-51逻辑运算指令和位操作指令(2)进一步掌握数据传送子程序的简单方法(3)掌握查表程序的编写实验项目四:数据排序实验1、实验目的及要求要求学生掌握汇编语言的应用和实际操作。

2、实验内容及学时分配(2学时)(1)掌握MCS51逻辑运算指令和位操作指令(2)进一步掌握简单顺序程序的编写和调试方法(3)掌握查表程序的编写实验项目五:查找相同个数1、实验目的及要求熟悉汇编语言程序,使用环移指令和加1指令。

2、实验内容及学时分配(2学时)(1)掌握赋值指令(2)掌握带进位的环移指令和加1程序的编写实验项目六:双字节无符号数的乘法实验1、实验目的及要求要求学生掌握MCS-51汇编语言设计和调试方法。

P1口输入输出实验报告

P1口输入输出实验报告

实验六P1口输入、输出实验1.实验目的1)学习单片机的P1口作为I/O口的使用方法,进一步学习指令系统,了解硬件的连接方法;2)学习延时子程序的编写和使用。

2.实验要求:P1.0~ P.3口做输出口,接四只发光二极管L0~L3 ; P1.4~ P.7 接逻辑电平开关电路的S0 ~S3。

编写程序,使发光二极管反映开关的状态。

3.实验说明P1口是准双向口。

它作为输出口时与一般的双向口使用方法相同。

由准双向口结构可知当P1口用为输入口时,必须先对它置“1”。

若不先对它置“1”,读入的数据不一定正确。

80C51可以将位变量通过C标志位赋值给其它位。

8051延时子程序的延时计算问题,对于程序Delay:MOV R6,#00HMOV R7, #00HDelayLoop:DJNZ R6,DelayLoopDJNZ R7,DelayLoopRET查指令表可知MOV,DJNZ指令均需用两个机器周期,在6MHz晶振时,一个机器周期时间长度为12/6MHZ,所以该段程序执行时间为:(256×255+2)×2×12÷6 ≈261ms4.连线图P1.0——LED0P1.1——LED1P1.2——LED2P1.3——LED3P1.4——S0 P1.5——S1P1.6——S2P1.7——S35.实验内容1)使用仪器、仪表,开发平台型号本实验用到了WAVE 6000软件平台,电脑一台,LAB6000实验箱,若干连线,串行数据线。

2) 性能指标、技术要求、思路方案、流程图5.2.1 性能指标、技术要求见实验目的和实验要求。

5.2.2 思路方案:先将连在P1.4----P1.7的数据读入,然后将其输出到P1.0-P1.3口,最后显示到发光二极管。

5.2.3 流程图:P1口输入输出实验备注:因为是反复地查看拨码开关的状态,故框图中没有结束标志。

3) 源程序ORG 0000HLJMP BEGINBEGIN:MOV P1,#0FFH ;当P1口用为输入口时,必须先对它置“1”;若不先对它置“1”,读入的数据不一定正确MOV A,P1 ;读端口数据SWAP A ;交换高低4位MOV P1,A ;写端口LCALL DELAY ;延时子程序JMP BEGIN ;循环DELAY:MOV R6,#0FFH ;FFH 是为了与下面的对应MOV R7,#22HDelayLoop:DJNZ R6,DelayLoopDJNZ R7,DelayLoopRET4)实验步骤,完成情况4.1在WAVE 6000中新建文件,并将代码写入文件中,保存为EXPERIMENT6.ASM;4.2在WAVE 6000中新建项目,并在模块文件中包含上述EXPERIMENT6.ASM文件,最后保存为EXPERIMENT6.PRG。

实验一:点亮一个发光二极管

实验一:点亮一个发光二极管

实验一:点亮一个发光二极管
一、实验目的:
1掌握单片机试验系统的硬件电路连接方法,编程软件keil的操作方法,以及下载软件的使用方法。

2、掌握并行I/O接口的基本工作方法。

二、实验要求:
1、将一个共阳发光二极管连接到单片机的并行I/O接口引脚。

2、根据你的电路编写程序点亮发光二极管。

3、将程序下载到单片机中。

4、运行观察发光二极管是否点亮,若没有点亮,则检查硬件及软件,重新调试。

三、实验原理图:
发光二极管是共阳的,0点亮,1熄灭。

该图中的P2是指排针,而非P2接口。

四、思考题:
若要求同时点亮8个发光二极管,硬件及软件怎么修改?。

HL-C8051F嵌入式实验开发系统、单片机实验箱

HL-C8051F嵌入式实验开发系统、单片机实验箱

HL-C8051F嵌入式实验开发系统/单片机实验箱一、概述HL-C8051F嵌入式实验/开发系统是针对C8051F单片机(SOC)而开发的。

C8051F单片机完全兼容MCS-51指令系统,利用此平台,不仅可以开展传统的MCS-51单片机教学,如指令系统、中断系统、I/0口接口实验、外围逻辑和通信实验,也可以讲授片上系统(SOC)的概念、体系结构、设计方法、系统应用。

该实验系统实现了C8051F单片机片上的全部资源,并集成了USB主从通信,TCP/IP以太网通信,UCOS-II嵌入式系统移植源码。

我们编写了所有功能和模块的测试程序,提供了大量的实例,使学生在学会C8051F系列片上系统单片机开发方法的同时,感受到片上系统单片机在设计方法上的革新和解决的高效。

二、实验系统组成:(1)CPU板:CPU核心模块采用C8051F020芯片,该芯片是C8051F系列单片机中功能最为其全的一款;集成开发环境支持Silicon Labs IDE和KEIL C软件。

(2)片内:64K FLASH,4K XRAM片外扩展:256K FLASH,32K XRAM(3)CPU板C8051F020芯片I/0引脚全部引出,可以和用户外部电路连接;(4)实验系统带有JTAG接口,并配有HL-EC5型USB高速通讯专业仿真器,通过4脚的JTAG接口可以进行非侵入式、全速的在线系统调试、仿真;(5)4*4阵列式键盘;(6)8位逻辑电平开关输出、8位LED逻辑电平显示;(7)6位动态八段LED数码管;(8)2路单脉冲信号发生电路和1路8MHZ时钟发生电路;(9)时钟分频电路;(10)模拟量发生器电路和逻辑笔电路;(11)8*8LED点阵及驱动电路;(12)128*64LCD液晶显示屏;(13)蜂鸣器电路;(14)直流电机测速电路;(15)四相步进电机及驱动电路;(16)继电器电路及接口;(17)双通道RS-232接口;(18)SPI接口,LED数码管显示;(19)IIC接口,接24C01串行EEPROM;(20)IIC接口,PCF8563日历时钟;(21)8路12位AD,2路12位DA接口;(22)D12USB从机通信;(23)SL811USB主机通信;(24)TL801910M以太网通信;三、C8051F020单片机主要特点:1、模拟外设:(1)逐次逼近型(SAR)12位ADC(ADC0)●可编程转换速率,最大100ksps●可多达8个外部输入;可编程为单端输入或差分输入●可编程放大器增益:16、8、4、2、1、0.5●数据相关窗口中断发生器●内置温度传感器(±3°C)(2)8位ADC(ADC1)●可编程转换速率,最大500ksps●8个外部输入●可编程放大器增益:4、2、1、0.5(3)两个12位DAC●可以同步输出,用于产生无抖动波形(4)两个模拟比较器●16个可编程回差电压值●可用于产生中断或复位(5)电压基准●内部基准(2.4V)(6)精确的VDD监视器和欠压检测器●可通过MONEN引脚允许或禁止。

P1口转弯灯实验报告

P1口转弯灯实验报告

P1口转弯灯实验一、实验目的了解P1口的使用,学习汇编语言编程方法与调试技巧。

二、实验内容P1.0开关接5V 时右转弯灯闪亮,P1.1开关接5V 时左转弯灯闪亮,P1.0、P1.1开关同时接5V 或接地时,转弯灯均不闪亮。

标志位为1表示现在有灯亮。

四、实验接线图7047五、实验步骤P1.0,P1.1分别接拨动开关JP40的某两位,P1.4~P1.7依次接LED 指示灯JP32的某四位,连续运行本程序;应看到转弯灯正确闪亮,在用单步方式调试本程序时需修改延时子程序(例如可把延时程序第一个字节改成返回指令22H ),以便观察。

六、实验程序ORG 0000HLJMP PX00ORG 0C30HPX00: MOV P1, #0FFH ;初始化PX03: MOVA,P1MOV B,AANL A,#03HCJNE A, #01H, PX01 ;满足只是P1.0为高条件吗?JB 00H, PX04 ;闪烁标志位CLRP1.4CLR P1.5 ;开右灯SETB P1.6SETB P1.7 ;关左灯MOV R2,#20HLCALL DELY ;延时SETB 00H ;置标志位LJMP PX03 ;继续查状态PX04: SETB P1.4SETBP1.5SETB P1.6 ;关灯SETB P1.7MOV R2,#20HLCALL DELY ;延时CLR 00H ;清标志位AJMP PX03 ;继续查状态PX01: CJNE A,#02H,PX02 ;满足只是P1.1为高条件吗?JB 01H, PX05 ;判标志位SETB P1.4SETB P1.5 ;开左灯CLR P1.6CLR P1.7 ;关右灯MOV R2, #20H ;延时LCALL DELYSETB 01H ;置标志位LJMP PX03 ;继续查状态PX05: SETB P1.4SETB P1.5SETB P1.6 ;关灯SETB P1.7MOV R2,#20HLCALL DELY ;延时CLR 01H ;清标志位LJMP PX03 ;继续查状态PX02: SETB P1.4SETB P1.5SETB P1.6 ;关灯SETB P1.7LJMP PX03 ;继续ORG 0213HDELY: PUSH 02HDEL2: PUSH 02HDEL3: PUSH 02H ;延时DEL4: DJNZ R2, DEL4POP 02HDJNZ R2, DEL3POP 02HDJNZ R2, DEL2POP 02HDJNZ R2, DELYRETEND七、实验现象与结论实验现象:P1.0开关接5V时右转弯灯闪亮,P1.1开关接5V时左转弯灯闪亮,P1.0、P1.1开关同时接5V或接地时,转弯灯均不闪亮。

实验1:P1口亮灯控制程序-实验说明

实验1:P1口亮灯控制程序-实验说明

实验1: P1口亮灯控制程序一、连接方法1、将SIP8-3用跳线帽上连2、依据ISP在线编程步骤将程序写到入芯片中;3、打开电源程序即可运行。

4、注意该实验结束后可将SPL上的跳线帽去掉,以减少开发板的功耗。

二、相应原理图如下:三、实验说明:、本实验仅用到L1灯。

本例实验主要用到了延时子程序,clr,lcall,ajmp 指令,通过控制P1.0口实现效果。

用户可以通过此程序的学习,只要你掌握了该程序,你就成功迈出了学习单片机的第一步!四、程序范例:;****************************************************************************************;*描述: 端口亮灯控制程序;*公司:深圳信盈达电子有限公司;*编写: 牛乐乐;*日期: 2009年07月15日;*版本: V1.0;*连接: SPL跳线连接;;*说明:实现P1.0控制L1灯常亮;****************************************************************************************/ ORG 0000HLJMP MAINORG 0030H ;到0030h处避开00-30之间的敏感地址MAIN:CLR P1.0 ;将P1.0送0指令LCALL DEL ;延时LJMP MAIN ;循环;//******延时子程序**********//DEL: MOV R2,#200 ;执行1该条指令需要1us时间D1: MOV R3,#250 ;执行1该条指令需要1us时间D2: DJNZ R3,D2 ;执行1该条指令需要2us时间DJNZ R2,D1 ;执行1该条指令需要2us时间RET ;执行1该条指令需要1us时间END;延时子程序延时时间T=1+(1+2*250+2)*200+1=2+100600=100602us=100.6ms=0.1s ;//计算延时间;t=2+100*(2+250*(4)+2)=100 000us=0.1s(约等于1s)。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

实验一P1口亮灯实验
一、实验目的
(1)熟悉编程和程序调试
(2)学习P1口的使用方法;
(3)学习延时子程序的编写。

二、实验内容
P1口做输出口,接八只发光二极管,编写程序,使发光二极管循环点亮。

三、实验预备知识
(1)P1口为准双向口,可定义为输入,也可定义为输出。

(2)本实验中延时子程序采用指令循环来实现,机器周期(12/6MHZ)*指令所需机器周期数*循环次数,在系统时间允许的情况下可以采用此方法。

四、程序框图
五、实验步骤
实验步骤说明:
本实验需要用到单片机最小应用系统和十六位逻辑电平显示模块。

用P1口做输出口,接十六位逻辑电平显示,程序功能使发光二极管点亮。

1.使用单片机实验箱,用扁平数据线将单片机P1口与LED灯相连。

P1.0~P1.7用插针连至L1~L8。

2.用串行数据通信线连接计算机与仿真器,把仿真器插到模块的锁紧插座中,请注意仿真器的方向:缺口朝上。

3.打开Keil uVision2仿真软件,首先建立本实验的项目文件,输入源程序(实验(一)),进行编译,直到编译无误。

生成hex文件。

5.打开实验板总电源,将hex文件下载到实验板内,观察发光二极管显示情况。

参考例子:
(1)点亮板子上的第一个灯LED1
(2)点亮板子上的LED1、LED3、LED5、LED7灯,与LED2、LED4、LED6、LED8灯交替
闪烁
(3)流水灯:从LED1---LED8依次点亮参考程序:
1)
#include<reg52.h>
void main()
{
P1=0xfe;
}
2)
#include<reg52.h>
#define uint unsigned int
#define uchar unsigned char
void delay();
void main()
{
while(1)
{
P1=0xaa;
delay();
P1=0x55;
delay();
}
}
void delay()
{
uint x,y;
for(x=100;x>0;x--)
for(y=600;y>0;y--) ;
}
3)
#include<reg52.h>
#include <intrins.h>
#define uint unsigned int
#define uchar unsigned char
uchar temp,num;
void delay(uint);
void main()
{
temp=0xfe;
while(1)
{
for(num=0;num<8;num++)
{
P1=temp;
temp=_crol_(temp,1);
delay(1000);
}
}
}
void delay(uint z)
{
uint x,y;
for(x=z;x>0;x--)
for(y=110;y>0;y--) ;
}
实验内容:
请在keil环境下编写一下程序:
1)点亮最后一个LED(LED8)
2)点亮LED1、LED2、LED5、LED6这四个LED
3)让第三个LED(LED3)闪烁
4)设计出流水灯程序,从LED8—LED1
注:在做完实验时记得养成一个好习惯:把相应单元的短路帽和电源开关还原到原来的位置!以下将不再重述。

六、思考
修改延时常数,使发光二极管闪亮时间改变。

修改程序,使发光二极管闪亮移位方向改变。

七、实验电路
如有侵权请联系告知删除,感谢你们的配合!。

相关文档
最新文档