1单片机并口简单应用(流水灯)
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
试验1单片机并口简单应用(流水灯)
实验目的
1、了解单片机C 语言程序的基本结构
2、了解单片机C 语言程序的设计和调试方法
3、掌握顺序控制程序的简单编程
4、熟悉51单片机的端口使用
实验仪器
单片机开发试验仪、稳压电源、计算机
实验原理
1、硬件电路
如图1所示,流水灯硬件电路由发光二极管、单片机并口( P0)、限流电阻等组成。
发
光二极管连接成共阳极结构。发光二极管点亮的条件是:阳极接高电平、各阴极接低电平。 因此,二极管公共端阳极就接成高电平,然后再按一定规则从 P0 口输出数据,发光二极管 就会点亮。
图1流水灯电路图
2、程序流程图如下。
RST
KMC P0.1PC 1 刃河 P03W03
RIAM M 眄
邮
ras^s POFAMV P2.CA5
RStN P2JW1 羸
喙低1? F2J6M< 唧邓
P :JO PUMOD
pf 1 P3.1O
pf J 砰酗1:
p:』 阴冊 PU 內如 Pr5 P3.SJ1 FJ6 P36vfi Pf.7 <3?TD
- -rb 2 - --
fl- - _OJ- I ・
Dr —- -R " "nl H
吧血
D5H R6渤
1
FL £
J
Rv
渤
AT2K;1
开始
P0 口输出 OXFE
P0 口状重新赋值OXFE
实验内容:
1、开发板接线图 ••••••• •••••••• ••••••••
/
□
TT
2
■
二
I
M e -t 4- w
• I t -
% r 二 b t-f !I
L
O
2、开发环境设置
打开keil 软件,版本卩Vision2 ,口vision3,口vision4 都一样,在这里用口vision4 版本演示,打开之后如下图,有的时候会默认打开上次使用的工程,单击
F二吕wh Debus F怎忙二口丹曰ha■二李loo La
ME u X-E-&n Fr©js-ct.・・
Project 菜单,选择Close Project 关闭了默认打开的工程,显示下图界面:
我们要建立新的工程,选择Project T new卩vision projiect
点击保存后会弹出一个对话框,要求用户选择单片机型号,可以根据用户使用的单片机来选择,我们使用的STC90单片机是兼容51内核的,Keil C51几乎支持所有的51内核单片机,51内核具有通用型,如果程序用的资源不是太复杂,我们可以选择任意一款51单片机内核就行。例程以添加Atmel的AT89C51来说明。如图,然后,单击确定(0K)。
如果出现下面的界面:单击是就可以,意思是将单片机的启动代码添加到工程, 我们不用修改。
到目前我们还没建立一个完整的工程,只是有工程的名字,框架,工程中还没有任何文件代码,(除了启动代码,有的keil版本不显示启动代码),接下来我们添加文件及代码。
单击菜单选项,或者单击界面上的快捷图标新建文件串口如下。
界面显示的Textl就是我们刚刚加入的文件,但是这个文件与我们的工程还没有直接联系起
来,单击图标上」,保存我们当前的textl文件,输入要保存的文件名,同时要输入文件扩展名,扩展名很关键,用C语言编写的程序,则必须为**.c,汇编语言必须为**.asm (**
为文件名),文件名是用户自己取的。填好文件名后单击保存。
回到编辑界面,单击Targetl前面的"+”号,然后在Source Group 1 上右键单击,选择
Add Files to Group Source Groupl ,选中我们刚才建立的.c文件,这里是led test.c
单击add,只需单击一次。之后单击Close就可以。
回到主界面后,单击Source Group 1前的"+”号,刚刚添加的文件显示在里面。
-T 1
- 、Sourcfe Group 1
国 STARIVr. A51 筍 i«ti c
通过以上步骤我们就建立好了一个工程。接下来就可以写代码了。 在写代码之前介绍介个常用的按钮:
按钮:用来编译我们正在操作的文件。
匸/按钮:用来编译修改过的文件,并生成应用程序共单片机下载。
按钮:用来重新编译当前工程中所有的文件,并生成应用程序共单片机下载。因为很 多工程不止有一个文件,当有多个文件时,用它进行编译。
宀、按钮:用来打开"Option for Target ”对话框,对当前工程进行设置。工程的各个参 数都可以在这里设置,具体的设置方法用到的时候,再和大家详细讲述。 以上几个按钮是常用的,其他按钮在使用的时候再介绍。
3、编写程序 实验名:流水灯实验 实验说明:延时实现LED 流水灯效果P0 口八个灯作跑马灯。 //--包含你要使用的头文件 #include
#in clude vintrin s.h> //--声明全局函数--//
void Delay10ms( un sig ned int c); //
**************************************************************************** *函数名:main *函数功能:主函数 *输
入:无
*输 出:无
****************************************************************************
延时10ms
/**