当前位置:首页 > 专题范文 > 公文范文 >

gpio输出控制实验报告流水灯范文四篇

时间:2022-05-15 19:00:03 来源:网友投稿

流水(拼音:liú shuǐ),是指流动的水,如:流水落花春去也。另指像流水一样的动态过程,如:流水作业、流水线。银行流水的简称, 以下是为大家整理的关于gpio输出控制实验报告流水灯4篇 , 供大家参考选择。

gpio输出控制实验报告流水灯4篇

第一篇: gpio输出控制实验报告流水灯

流水灯实验报告记录


———————————————————————————————— 作者:

———————————————————————————————— 日期:

《微处理器与接口技术课程设计》报告

——流水灯的设计

专 业: 电气工程及其自动化

班 级: 电气1221

姓 名: 章健娅

学 号: 1230117129

2015年 7月 14日

1.课程设计目的

1.1巩固和加深对单片机原理和接口技术知识的理解;

1.2培养根据课题需要选学参考书籍、查阅手册和文献资料的能力;

1.3学会方案论证的比较方法,拓宽知识,初步掌握工程设计的基本方法;

1.4学会软、硬件的设计和调试方法;

1.5能按课程设计的要求编写课程设计报告,能正确反映设计和实验成果,

能用计算机绘制电路图和流程图。

2.课程设计要求

2.1 不得无故缺课。

2.2 独立完成规定的设计任务。

2.3 完成所有实验资料。

3. 硬件设计

3.1 设计思想

利用51单片机的基本原理来实现设计流水灯。通过左移右移实现灯来

回循环,通过延时让流水灯的闪烁更加显著。

3.2主要元器件介绍

杜邦线 ,51开发板

3.3 功能电路介绍

用杜邦线连接LED灯和P1口,运用低电平使共阳极LED灯亮的原理,

从而根据 题目要求来实现灯亮。

4. 软件设计

4.1 设计思想

(1)从左到右一盏一盏显示,共显示两遍;

(2)从右到左一盏一盏显示,共显示两遍;

(3)从左至右1,3,5,7,然后2,4,6,8;

(4)从右至左1,3,5,7,然后2,4,6,8;

(5)从左至右1,2(两盏同时,下同)—>3,4—>5,6—>7,8两遍;

(6)从右至左1,2(两盏同时,下同)—>3,4—>5,6—>7,8两遍;

重复(1),(2),(3),(4),(5),(6)

4.2软件流程图

4.3 源程序

ORG 00H

START:MOV A,#0FFH ;赋初值

CLR C

MOV R2,#17

LOOP1:RRC A ;带进位左移

MOV P1,A

LCALL DELAY1

DJNZ R2,LOOP1

MOV R2,#16

LOOP2:RLC A ;带进位右移

MOV P1,A

LCALL DELAY1

DJNZ R2,LOOP2

MOV R2,#5

LOOP3:RRC A

RRC A

MOV P1,A

LCALL DELAY1

DJNZ R2,LOOP3

MOV A,#0FFH

CLR C

MOV R2,#4

LOOP4:RRC A

RRC A

MOV P1,A

LCALL DELAY1

DJNZ R2,LOOP4

MOV R2,#3

LOOP5:RLC A

RLC A

MOV P1,A

LCALL DELAY1

DJNZ R2,LOOP5

MOV A,#0FFH

CLR C

MOV R2,#4

LOOP6:RLC A

RLC A

MOV P1,A

LCALL DELAY1

DJNZ R2,LOOP6

MOV R1,#2

L1: MOV A,#0FEH

CLR C

MOV R2,#4

LOOP7:RRC A

RRC A

MOV P1,A

LCALL DELAY1

DJNZ R2,LOOP7

DJNZ R1,L1

MOV R1,#2

L2: MOV A,#7FH

CLR C

MOV R2,#4

LOOP8:RLC A

RLC A

MOV P1,A

LCALL DELAY1

DJNZ R2,LOOP8

DJNZ R1,L2

SJMP START

DELAY1:MOV R3,#20 ;延时0.2秒

D1: MOV R4,#20

D2: MOV R5,#248

DJNZ R5,$

DJNZ R4,D2

DJNZ R3,D1

RET

END

5. 调试运行

5.1 调试成功

6.设计心得体会

本次实验是流水灯的设计,主要是要运用单片机的原理进行流水灯的闪烁。在与同学交流并且参考书本与资料情况下最终完成了本次实验。通过左移,右移实现了灯的来回,间隔,两两循环。通过本次试验,让我认识到了单片机的广泛运用,同时也增强了自己的动手能力和分析能力。总之,在这次课程设计中,我受益匪浅,懂得了理论联系实际的重要性。

参考书目:

[1] 肖金球.《增强型51单片机与仿真技术》,清华大学出版社,2011

[2] 何立民.《单片机应用技术选编》,北京航空航天大学出版社,1998

[3] 李华.《MSC-51系列单片机使用接口技术》,北京航空航天大学出版社,1993

第二篇: gpio输出控制实验报告流水灯

实验一 流水灯实验

一、实验目的

1)简单I/O引脚的输出

2)掌握软件延时编程方法

3)简单按键输入捕获判断

二、实验实现的功能

1)开机时点亮12发光二极管,闪烁三下

2)按照顺时针循环依次点亮发光二极管

3)通过按键将发光二极管的显示由顺时针改为逆时针方式

三、系统硬件设计

单片机STC10F08XE 1片

发光二极管led 红 4个

黄 4个

绿 4个

按键 6个

复位电路

时钟电路

如下图所示:

四、系统软件设计

#include

sbit L1=P0^5; sbit L2=P0^6; sbit L3=P0^7; void Delay(void)

{

unsigned char i,j,k;

for(i=10;i>0;i--)

for(j=132;j>0;j--)

for(k=150;k>0;k--); }

Scan_Key()

{ unsigned char FLAG=0;

unsigned char n;

n=(L1==0)||(L2==0)||(L3==0);

if(n) { FLAG=1;}

return FLAG; }

main()

{ unsigned char y,n,s=0,b=1,m=0;

unsigned char c=1;

unsigned char a[]={0xff,0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f};

unsigned char h[]={0xff,0x38,0x34,0x2f,0x1f};

n=Scan_Key(); for(y=0;y

第三篇: gpio输出控制实验报告流水灯

——LED流水灯

学院:计算机与信息工程学院

专业:电子信息工程1401班


一、设计要求及目的

1.熟悉了解ST89C52的功能及各管脚

2.熟悉并掌握KeiluVision和Proteus软件

二、实验器材

ST89C52、LED-RED、电阻、瓷片电容、电解电容、四脚开关、+5V电源

三、实验原理

P0口接低电平及可点亮LED灯,R2-R9是为了保证流经LED灯的电流在3-10mA以保证LED灯正常工作。XTAL1和XTAL2接外部晶振保证单片机正常工作,51系列单片机最大可接24MHz晶振,通常接12MHz的晶振。


四、程序代码

#include

#include

unsigned char temp;

unsignedint j=0;

void main()

{

TMOD=0x01;//让定时器0工作在方式1

TH0=(65536-50000)/256;//给定时器0高八位赋初值

TL0=(65536-50000)%256;//给定时器0低八位赋初值

EA=1;//开总中断

ET0=1;//开定时器0中断

TR0=1;//启动定时器0

temp=0xfe;

P1=temp;

while(1)

{

if(j==20)

{

j=0;

P1=_crol_(temp,1);

temp=P1;

}

}

}

void INT() interrupt 1//定时器0的中断

{

TH0=(65536-50000)/256;

TL0=(65536-50000)%256;

j++;

}

在这个程序中我给单片机加了一个中断,让定时器0以方式1工作,这样做是为了让每个LED灯间隔1s闪烁,让时间更精确。在循环的部分我使用_crol_位左移代码,故加入了#include头文件。


五、实验结果

LED灯以1s的间隔正常循环闪烁。

六、心得

1.最主要的收获就是为了让LED灯正常循环,学会了很多不同的代码,最开始时是用调用了子函数delay()的方法控制间隔,后来发现循环时间长了以后就不准确了,所以又学习了加入中断的方法,加入了中断可以让时间间隔更准确

2.现在已经非常熟悉keil和proteus软件的操作方法,为第二个设计做了良好的铺垫

3.更加深刻的理解了这门学科,从最初根本不知道单片机是什么、能干什么、该怎么做到现在已经可以用单片机做几个小的设计,感觉进步非常大。

第四篇: gpio输出控制实验报告流水灯

流水灯程序

一、实验目的

1.学习PI口的使用方法;

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

二、实验内容

分别采用ISP下载和仿真器在线仿真两种方式调试运行程序,编写流水灯程序(采用软件定时每隔0.5秒左右依次点亮八个LED)。

ISP下载:第一步 接串口线,USB转串口供电线。执行XLISP。JP17编程ISP实验时为弹起状态! 下载跑马灯HEX程序, 用一条8PIN排线一端插入CPU 部份的 P1 口(JP44) 另外一端插入八路指示灯部份的JP32,我们就看到P1口的8个发光管轮流闪烁。

仿真器在线仿真:接USB转串口供电线到仿真器,把仿真电缆(带仿真头)接到仿真器再插入CPU座。JP17仿真时为按下状态。

运行Keil UV2软件,编写程序,编译生成HEX文件,进入Debug调试模式,全速或单步执行。用一条8PIN排线, 一端插入CPU 部份的 P1 口(JP44) 另外一端插入八路指示灯部份的JP32,可以看到P1口的8个发光管轮流闪烁。

仿真器在线仿真,不能够同时运行其他可能占用串口资源的软件例如XLISP下载软件。

三、实验程序

org 0000h ;开始

ajmp loop

org 0080h ;到0080h 处避开00-30 的敏感地址

loop:

mov p1,#0ffh;关闭所有灯

clr p1.0 ;点亮灯p1.0

lcall delay ;延时一段时间?

clr p1.1 ;点亮灯p1.1

lcall delay

clr p1.2 ;点亮灯p1.2

lcall delay

clr p1.3 ;点亮灯p1.3

lcall delay

clr p1.4 ;点亮灯p1.4

lcall delay

clr p1.5 ;点亮灯p1.5

lcall delay

clr p1.6 ;点亮灯p1.6

lcall delay

clr p1.7 ;点亮灯p1.7

lcall delay

AJMP LOOP;到最开始loop 处重新运行

delay: mov r5,#20 ;延时。

d1: mov r6,#40

d2: mov r7,#248

djnz r7,$

djnz r6,d2

djnz r5,d1

ret

end

四、实验现象与结论

实验现象:可以观察到P1口的8个发光管轮流闪烁。

心得体会:通过本次的实验,熟悉了keil仿真软件、proteus仿真软件的使用。了解并熟悉了单片机I/O口和LED灯的电路结构。掌握了C51中单片机I/O口的编程方法和使用I/O口进行输入输出的注意事项。

推荐访问:输出 流水 实验