点亮一个LED程序Word格式.docx
《点亮一个LED程序Word格式.docx》由会员分享,可在线阅读,更多相关《点亮一个LED程序Word格式.docx(15页珍藏版)》请在冰豆网上搜索。
![点亮一个LED程序Word格式.docx](https://file1.bdocx.com/fileroot1/2022-10/28/175d901e-9ae7-47b8-887e-aced570d8b1f/175d901e-9ae7-47b8-887e-aced570d8b1f1.gif)
intx,y;
for(x=z;
x>
0;
x--)
for(y=200;
y>
y--);
reg51.h>
sbitD=p1^3;
voidmain(void)
{intj;
while
(1)
{D=0;
for(j=0;
j<
30000;
j++);
D=1;
}
手把手教您编写第一个单片机程序
来源:
21ic作者:
关键字:
手把手
编写
单片机程序
51单片机的开发环境是Keil软件。
Keil软件虽然是一个收费软件,但从uVision2到目前的uVison4版本都有破解版,在网上都可以找到下载。
笔者推荐大家使用uVisong4破解版本,好处不用多说。
KeiluVision4软件的压缩包里附有安装和破解说明,本文不再赘述。
开发一个单片机程序,一般都要经过这几个步骤:
建立工程->
建立C文件->
添加C文件到工程->
编写C代码->
设置目标工程的选项->
编译工程产生HEX文件->
将HEX文件下载到单片机。
本文将一步一步手把手教您开发一个LED闪烁的简单且实用的C51程序。
让您从0基础起步学习开发51单片机。
安装KeiluVison4之后,第一次运行出现如图1的界面,从上往下数,依次是菜单栏、第一条工具栏、第二条工具栏,接下来左边白色部分为工程文件区(显示文件、函数、语言模板和相关书籍),右边灰色部分为文本区(编写源文件),最下边为编译信息栏(显示编译时产生的相关信息)。
图1
一.建立工程
点击“Project”菜单项,选“NewuVisionProject…”,跳出创建新工程对话框,选择工程放置位置,在这里笔者选择F盘,并在根目录创建LED这个文件夹,用来放置工程文件,如图2:
图2
打开LED文件夹,然后给新工程取个名字(可以任意取),在这里笔者取工程名字为“LED”,如图3:
图3
点击“保存”按钮,跳出器件选择对话框,如图4:
图4
找到Atmel单片机,选择AT89S52,同时右边的描述栏里显示了该器件的基本信息,如图5:
图5
点击“OK按钮,”跳出提示对话框,如图6:
图6
提示对话框问您“是否将8051标准启动代码复制到工程文件夹并添加到工程?
”,根据您的需要选择,一般不需要,在这里笔者选择“否”。
此时,可看到keiluVision4界面左边的工程窗口里多了一个目标文件夹“Target1”,其下有一个源文件组文件夹“SuorceGroup1”,如图7。
此时,新工程已经建立,但还只是一个空的工程。
图7
二.建立C文件和保存C文件
从图7可看到,“SuorceGroup1”这个源文件夹下还没有任何文件。
接下来就是创建一个C文件。
点击“File”菜单,选择“New”,文档区便出现了一个默认文件名为“Text1”的空白文档,如图8:
图8
在该文档上随便输入一个空格,然后点击“File”菜单,选择“Save”,跳出保存对话框,如图9,输入文件名为“LED.c”,点击“保存”按钮。
这一步需要注意的是这个C文件必须保存在刚才创建的工程文件夹下,否则在后面编译时会出错。
C文件的文件名一般和工程名一致。
扩展名必须为“.c”。
这个C文件就是您后面要编写C语言源代码的源文件,现在已经在你的工程文件夹里了。
图9
三.添加C文件到工程
虽然“LED.c”这个文件已经在您的工程文件夹里,但还不属于你的工程文件,如果您不把它添加到工程里去,它的存在对您这个工程没有任何意义。
接下来就是把C文件添加到您的工程里,让它变成您的工程文件。
右键点击左边工程窗口里的“SuorceGroup1”这个源文件夹,选“AddFiletoGroup‘SuorceGroup1’…”,跳出添加源文件对话框,找到刚才建立的“LED.c”文件,点击“Add”按钮后,再点击“Close”按钮退出,不要重复点击,如图10:
图10
这时可以看到“SuorceGroup1”这个源文件下多了一个源文件“LED.c”,同时,右边的文档区的文件名也改变了,如图11。
图11
四.编写C代码
在空白的文档区输入如下C代码:
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
#include//包含头文件
sbitled=P2^0;
//定义位变量led,使其关联单片机管脚P2.0
voidDelayms(unsignedintt);
//声明延时函数
/////////////////////////////////////////////////////////////////////////////////
intmain(void)//主函数(C语言程序入口函数)
while
(1)
led=0;
//P2.0拉低,点亮LED
Delayms(500);
//调用延时函数,延时500毫秒
led=1;
//P2.0拉高,熄灭LED
return0;
//////////////////////////////////////////////////////////////////////////////////
voidDelayms(unsignedintt)//定义延时函数
unsignedinti,j;
for(i=0;
i
for(j=0;
120;
//大约延时1毫秒
这是一个常用的指示灯闪烁的程序,输入完成以后,先不要马上编译,还需要作一些设置。
五.工程选项设置
这一步主要是设置时钟频率和产生HEX文件这两项。
进入工程选项有两个途径:
从“Project”菜单进入和直接点击工具栏快捷按钮进入。
这里使用工具栏快捷按钮进入,点击第二条工具栏的第7个按钮(TargetOpsions…)
,跳出选项对话框,默认选项卡为“Target”,如图12,将晶振频率设为你目标板所使用的晶振频率,这里设为12.0;
再点击“Output”选项卡,将“CreateHEXFile”复选框打勾,这个项设置绝不能忽略,否则您的工程就没有HEX文件产生。
其他选项保持默认。
最后点击“OK”按钮,完成选项设置。
图12
六.编译工程产生HEX文件
点击第二条工具栏的第三个按钮(Rebuild)
,工程便进入编译状态,“BuildOutput”信息栏就会出现相关的编译信息,如图13。
从该信息栏可以知道程序的大小,使用了的多少部RAM和外部RAM、生成多少个代码、是否生成HEX文件、有多少个错误和警告等信息。
如果有错误,目标文件将不会被创建,只要双击错误信息,光标就会跳到C文档错误代码的行号或错误代码的附近,方便您排查错误。
图13
七.将HEX文件下载到单片机
编译通过的C代码,在工程文件夹下就会生成很多文件,其中有两个文件是最重要的,一个是扩展名为“.c”文件“LED.c”,这是移植程序用的C源文件,是程序的核心,拥有这个文件就相当于拥有整个程序;
另一个是扩展名为“.hex”的文件“LED.hex”,这是下载程序用的文件。
这两个文件都可以用记事本打开。
“LED.hex”文件是采用Intelhex文件格式存储程序代码的。
下载程序的时用下载软件打开这个hex文件,将文件里的程序代码提取出来写入单片机的程序存储区里。
在下载单片机程序之前,您需要构建一个单片机最小系统,请参阅笔者的《学单片机从构建最小系统开始》一文。
下载软件使用WSFISP软件,也可以用AtmelISP软件。
下载线可根据笔者提供的原理图自己DIY,也可以购买。
51单片机程序下载软件操作都很简单,本文不再叙述。