51单片机C言语学习杂记
学习单片机真实不是件易事,一来要购买高价格的编程器,仿真器,二来要学习编程言语,还有许多品种的单片机挑选真是件让人头疼的事。在许多单片机中51架构的芯片流行好久,学习材料也相对许多,是初学的较好的挑选之一。51的编程言语常用的有二种,一种是汇编言语,一种是C言语。汇编言语的机器代码生成功率很高但可读性却并不强,杂乱一点的程序就更是难读懂,而C言语在大多数状况下其机器代码生成功率和汇编言语适当,但可读性和可移植性却远远超越汇编言语,并且C言语还能够嵌入汇编来处理高时效性的代码编写问题。关于开发周期来说,中大型的软件编写用C言语的开发周期一般要小于汇编言语许多。归纳以上C言语的长处,我在学习时挑选了C言语。今后的教程也仅仅我在学习过程中的一些学习笔记和漫笔,在这儿加以收拾和修正,期望和咱们一同肥翼,一同沟通,一同学习,一同前进。
*注:能够必定的说这个教程仅仅为初学或入门者预备的,笔者自己也仅仅菜鸟一只,有望各位大侠高手点拨过错提出主张。
明浩 2003-3-30 pnzwzw@cdle.net
榜首课 树立您的榜首个C项目
运用C言语必定要运用到C编译器,以便把写好的C程序编译为机器码,这样单片机才干履行编写好的程序。KEIL uVISION2是许多单片机运用开发软件中优异的软件之一,它支撑许多不同公司的MCS51架构的芯片,它集修改,编译,仿真等于一体,一起还支撑,PLM,汇编和C言语的程序设计,它的界面和常用的微软VC++的界面相似,界面友爱,易学易用,在调试程序,软件仿真方面也有很强壮的功用。因而许多开发51运用的工程师或一般的单片机爱好者,都对它十肥也欢。
以上简略介绍了KEIL51软件,要运用KEIL51软件,必需先要装置它。KEIL51是一个商业的软件,关于咱们这些一般爱好者能够到KEIL我国署理周建功公司的网站上下载一份能编译2K的DEMO版软件,根本能够满意一般的个人学习和小型运用的开发。(装置的办法和一般软件适当这儿就不做介绍了)
装置好后,你是不是刻不容缓的想树立自己的榜首个C程序项目呢?下面就让咱们一同来树立一个小程序项目吧。或许你手中还没有一块试验板,乃至没有一块单片机,不过没有关系咱们能够经过KEIL软件仿真看到程序运转的成果。
首要当然是运转KEIL51软件。怎样翻开?噢,天!那你要从头学电脑了。呵呵,开个打趣,这个问题我想读者们也不会提的了:P。运转几秒后,呈现如图1-1的屏幕。
图1-1 发动时的屏幕
接着按下面的过程树立您的榜首个项目:
(1)点击Project菜单,挑选弹出的下拉式菜单中的New Project,如图1-2。接着弹出一个规范Windows文件对话窗口,如图1-3,这个东东想必咱们是见了N次的了,用法技巧也不是这儿要说的,今后的章节中呈现相似状况将不再阐明。在”文件名”中输入您的榜首个C程序项目称号,这儿咱们用”test”,这是笔者惯用的称号,咱们不必照搬便是了,只需契合Windows文件规矩的文件名都行。”保存”后的文件扩展名为uv2,这是KEIL uVision2项目文件扩展名,今后咱们能够直接点击此文件以翻开从前做的项目。
图1-2 New Project菜单
图1-3 文件窗口
(2)挑选所要的单片机,这儿咱们挑选常用的Ateml公司的AT89C51。此刻屏幕如图1-4所示。AT89C51有什么功用、特色呢?不必急,看图中右边有简略的介绍,稍后的章节会作较具体的介绍。完结上面过程后,咱们就能够进行程序的编写了。
(3)首要咱们要在项目中创立新的程序文件或参加旧程序文件。假如你没有现成的程序,那么就要新建一个程序文件。在KEIL中有一些程序的Demo,在这儿咱们还是以一个C程序为例介绍怎么新建一个C程序和怎么加到您的榜首个项目中吧。点击图1-5中1的新建文件的方便按钮,在2中呈现一个新的文字修改窗口,这个操作也能够经过菜单File-New或方便键Ctrl+N来完成。好了,现在能够编写程序了,光标已呈现在文本修改窗口中,等候咱们的输入了。榜首程序嘛,写个简略明了的吧。下面是经典的一段程序,呵,假如你看过其他程序书或许也有相似的程序:
#include
#include
void main(void)
{
SCON =0x50; //串口办法1,答应接纳
TMOD = 0x20; //守时器1守时办法2
TCON =0x40; //设守时器1开端计数
TH1 =0xE8; //11.0592MHz 1200波特率
TL1 =0xE8;
TI =1;
TR1 =1; //发动守时器
while(1)
{
printf (“Hello World!\n”); //显现Hello World
}
}
图1-4选取芯片
图1-5新建程序文件
这段程序的功用是不断从串口输出”Hello World!”字符,咱们先不论程序的语法和意思吧,先看看怎么把它参加到项目中和怎么编译试运转。
(4)点击图1-5中的3保存新建的程序,也能够用菜单File-Save或方便键Ctrl+S进行保存。因是新文件所以保存时会弹出相似图1-3的文件操作窗口,咱们把榜首个程序命名为test1.c,保存在项目地点的目录中,这时你会发现程序单词有了不同的色彩,阐明KEIL的C语法检查收效了。如图1-6鼠标在屏幕左面的Source Group1文件夹图标上右击弹出菜单,在这儿能够做在项目中添加削减文件等操作。咱们?quot;Add File to Group Source Group 1″弹出文件窗口,挑选刚刚保存的文件,按ADD按钮,封闭文件窗,程序文件已加到项目中了。这时在Source Group1文件夹图标左面呈现了一个小+号阐明,文件组中有了文件,点击它能够翻开检查。
图1-6把文件参加到项目文件组中
(5)C程序文件已被咱们加到了项目中了,下面就剩余编译运转了。这个项目咱们仅仅用做学习新建程序项目和编译运转仿真的根本办法,所以运用软件默许的编译设置,它不会生成用于芯片烧写的HEX文件,怎么设置生成HEX文件就请看下面的第三课。咱们先来看图1-7吧,图中1、2、3都是编译按钮,不同是1是用于编译单个文件。2是编译当时项目,假如从前编译过一次之后文件没有做动修改改动,这时再点击是不会再次从头编译的。3是从头编译,每点击一次均会再次编译链接一次,不论程序是否有改动。在3右边的是中止编译按钮,只要点击了前三个中的任一个,中止按钮才会收效。5是菜单中的它们,我个人就不习气用它了。嘿嘿,这个项目只要一个文件,你按123中的一个都能够编译。按了?好快哦,呵呵。在4中能够看到编译的过错信息和运用的系统资源状况等,今后咱们要查错就靠它了。6是有一个小放大镜的按钮,这便是敞开\封闭调试形式的按钮,它也存在于菜单Debug-Start\Stop Debug Session,方便键为Ctrl+F5。
图1-7编译程序
(6)进入调试形式,软件窗口款式大致如图1-8所示。图中1为运转,当程序处于中止状况时才有用,2为中止,程序处于运转状况时才有用。3是复位,模仿芯片的复位,程序回到最最初处履行。按4咱们能够翻开5中的串行调试窗口,这个窗口咱们能够看到从51芯片的串行口输入输出的字符,这儿的榜首个项目也正是在这儿看运转成果。这些在菜单中也有,这儿不再逐个介绍咱们无妨找找看,其它的功用也会在后边的课程中渐渐介绍。首要按4翻开串行调试窗口,再按运转键,这时就能够看到串行调试窗口中不断的打?quot;Hello World!”。呵呵,是不是不难呀?这样就完结了您的榜首个C项目。最终咱们要中止程序运转回到文件修改形式中,就要先按中止按钮再按敞开\封闭调试形式按钮。然后咱们就能够进行封闭KEIL等相关操作了。
到此为止,榜首课现已完结了,开始学习了一些KEIL uVision2的项目文件创立、编译、运转和软件仿真的根本操作办法。其间一向有说到一些功用的方便键的运用,确实在实践的开发运用中方便键的运用能够大大提高作业的功率,主张咱们多多运用,还有便是对这儿所讲的操作办法触类旁通用于相似的操作中。