流水(拼音: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口进行输入输出的注意事项。