硬件实验一 预习报告

时间:2024.4.27

硬件实验一 P1口输入、输出实验

基本部分:

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

2、P1.0、P1.1作输入口接两个拨动开关,P1.2、P1.3作输出口,接两个发光二极管,编写程序读取开关状态,将此状态,在发光二极管上显示出来。编程时应注意P1.0、P1.1作为输入口时应先置1,才能正确读入值。 程序如下:

#include<reg52.h>

#include<intrins.h>

void delay();

void main()

{

unsigned char LED;

LED=0xfe;

P1=LED;

while(1)

{

delay(); //延迟500ms

LED=_crol_(LED,1); //左移一位,使LED灯循环点亮

P1=LED;

}

}

void delay()

{

unsigned int i,j;

for(i=0;i<500;i++)

{

for(j=0;j<125;j++)

{

_nop_();

}

}

}

扩展部分:

利用P1口控制发光二极管LED灯按照下面方式工作:

1、LED灯从左到右依次点亮;

2、LED灯从右到左依次点亮;

3、按照以上步骤重复运行,其中要求灯亮时间为500ms。 程序如下:

#include<reg52.h>

#include<intrins.h>

void delay();

void main()

{

unsigned char LED;

bit a; //定义变量a来控制左移还是右移

a=1;

LED=0x7f;

P1=LED;

while(1)

{

if(a) //当a为高电平时LED灯从左到右依次点亮 {

delay(); //延迟500ms

LED=_cror_(LED,1);

P1=LED;

if(LED==0xfe)

a=~a;

}

if(~a) //当a为低电平时LED灯从右到左依次点亮 {

delay(); //延迟500ms

LED=_crol_(LED,1);

P1=LED;

if(LED==0x7f)

a=~a;

}

}

}

void delay()

{

unsigned int i,j;

for(i=0;i<500;i++)

{

for(j=0;j<125;j++)

{

_nop_();

}

}

}


第二篇:硬件实验一 报告


硬件实验一 P1口输入、输出实验

一、实验目的

1. 学习P1口的使用方法。

2. 学习延时子程序的编写和使用。

二、实验要求

1、基本部分:

(1)P1口做输出口,接八只发光二极管,编写程序,使发光二极管循环点亮。

(2)P1.0、P1.1作输入口接两个拨动开关,P1.2、P1.3作输出口,接两个发光二极管,编写程序读取开关状态,将此状态,在发光二极管上显示出来。编程时应注意P1.0、P1.1作为输入口时应先置1,才能正确读入值。

2、扩展部分:

(1) 利用P1口控制发光二极管LED灯按照下面方式工作:

a) LED灯从左到右依次点亮;

b) LED灯从右到左依次点亮;

c) 按照以上步骤重复运行,其中要求灯亮的时间为500ms。

(2) 利用P1口控制发光二极管LED灯按照下面方式工作:

a)从左到右奇数LED灯依次点亮;

b)从右到左偶数LED灯依次点亮;

c)按照以上步骤重复运行,其中要求灯亮的时间为500ms。

三、实验程序

扩展部分

#include<reg52.h>

#include<intrins.h>

void delay();

void main()

{

unsigned char LED;

bit a; //定义变量a来控制左移还是右移

a=1;

LED=0x7f;

P1=LED;

while(1)

{

if(a) //当a为高电平时LED灯从左到右依次点亮

{

delay(); //延迟500ms

LED=_cror_(LED,1);

P1=LED;

if(LED==0xfe)

a=~a;

} if(~a) //当a为低电平时LED

硬件实验一报告

{

delay(); //延迟500ms

LED=_crol_(LED,1);

P1=LED;

if(LED==0x7f)

a=~a; }

}

} void delay()

{

unsigned int i,j; for(i=0;i<500;i++) { for(j=0;j<125;j++)

{

_nop_();

} }

}

四、实验心得: 扩展部分程序流程图

遇到问题:一开始,编程的实验结果为灯全亮依次灭,让我十分疑惑,后来得知,芯片的LED灯为低电平有效。只要将LED灯的初始值取反(LED=0x01改为LED=0x7f)即可使LED灯由全亮依次灭变成全灭依次亮。并且我们学会了延时程序的编写,只要通过for语句和空操作即可实现。

从一开始的一无所知到收集资料,慢慢了解相关知识并掌握自己修改编程,通过编写的程序来实现硬件控制,单片机实验让我觉得十分有趣。

更多相关推荐:
预习报告与实验报告要求

预习报告与实验报告要求预习要求1.课前必须认真预习将要做的实验。认真看理论课讲义与实验指导教材,了解实验要点(包括实验原理、实验方法、使用仪器、实验步骤);2.实验教学大纲规定需写预习报告的实验,必须认真撰写预…

实验预习报告格式

验证性实验预习报告格式手写电子科学与工程系实验预习报告课程名称实验教师预习成绩专业班级实验地点实验日期学生姓名学号同组者姓名实验项目名称一实验目的和要求二实验原理三实验方法与步骤四实验数据记录表格五预习遇到的问...

预习报告格式

预习报告格式学生在进实验室之前必须仔细阅读实验书中有关的实验及基础知识明确本次实验中测定什么量最终求算什么量用什么实验方法使用什么仪器控制什么实验条件在此基础上将实验目的操作步骤记录表和实验时注意事项写在预习报...

实验预习报告

盐酸氯化铵混合溶液各组分含量的测定1引言目前国内外测定盐酸氯化铵混合溶液中各组分含量的方法有三种第一种方案是蒸汽法即取一份混合溶液往其中加入适量的NaOH溶液加热使NH4全部转化为氨气用2硼酸溶液吸收用氢氧化钠...

金属材料实验预习报告

材料成分和热处理工艺对钢组织与性能的影响实验预习报告材科1104张明康一实验目的1了解热处理设备和几种热处理工艺的实际操作2了解材料成分热处理工艺组织和性能之间的关系3培养学生综合运用所学理论知识和实验技术独立...

大学物理实验预习报告

大学物理实验预习报告

设计性实验预习报告格式

设计性实验预习报告格式手写电子科学与工程系实验预习报告课程名称实验教师预习成绩专业班级实验地点实验日期学生姓名学号同组者姓名实验项目名称一实验目的和要求二实验原理三方案设计与论证四文献收集及分析五预习遇到的问题

热冰实验预习报告

班级姓名使用时间化学趣味实验预习报告实验题目热冰实验实验目的1培养学生学习化学的兴趣激发学生对知识的探究兴趣2培养学生查阅并分析总结资料及动手能力3理解溶解度过饱和溶液的定义4练习实验室中常用操作配置溶液加热液...

如何做好实验预习

如何做好实验预习缪长宗物理实验课与理论课不同它的特点是同学们在教师的指导下自己动手独立完成实验任务所以预习尤其重要预习的重点可以放在以下几个方面1对实验任务要明确应该明确实验当中需要测哪些物理量每个待测量又分别...

第六次实验预习报告

实验六预习报告一实验目的1进一步理解调制信号的解调原理和实现方法2掌握包络检波器的基本电路和低通滤波器RC参数对检波器输出的影响3进一步理解包络检波器中产生失真的机理及预防措施二仪器与设备双踪示波器数字频率计直...

用正态分布概率纸做正态性检验实验报告预习报告、原始数据记录表

广东第二师范学院学生实验报告123广东第二师范学院实验原始数据记录表45广东第二师范学院实验预习报告67

预习报告液体粘度的测量

肇庆学院电子信息与机电工程学院普通物理实验课实验预习报告班实验合作者简要原理预习问答使用时小球的释放高度要越高越好B越低越好C适当定性分析小球半径大小和密度大小对测量结果的影响如何判断小球在液体中已进入匀速运动...

实验预习报告(45篇)