新闻中心

EEPW首页 > 专题 > 学51单片机必看!51单片机导论

学51单片机必看!51单片机导论

作者:时间:2016-08-19来源:网络收藏

一:引脚

本文引用地址:http://www.eepw.com.cn/article/201608/295775.htm

http://www.21ic.com/d/file/201607/3cfd1d9aaf7ae3f39319e6f084589ac2.jpg

STC89C52

全称单片微型计算机;它内部有存储器、处理器、输入输出接口,具有计算机的属性。

STC代表生产公司,8代表80内核,9代表Flash内存,C代表属于CMOS类,5(表示单片机)固定不变,2的位置可由1-16任意数字代替,代表存储区大小为4KB的倍数。

引脚功能:VCC(40)是单片机电源正,GND(20)是电源正;P0P1P2P3是四组输入输出口,显高电阻状态,对外能发出高电平和低电平;10脚是串行输入口,11脚是串行接收口;1213脚是外部中断输入;1819脚用于外接时钟;9脚是复位引脚,有两个机器周期以上的高电平则使单片机复位;其它引脚不要求掌握。

晶振,11.0592MHz

晶振全称为晶体振荡器,是用电损耗很小的石英晶体经精密切割磨削并镀上电极、焊上引线做成。这种晶体有一个很重要的特性,如果给它通电,它就会产生机械振荡,反之,如果给它机械力,它又会产生电,这种特性叫机电效应。在工作时,他们的机电效应是机---..的不断转换,因而产生周期性的振荡。他们有一个很重要的特点,其振荡频率与他们的形状,材料,切割方向等密切相关。利用石英晶体可以产生想要的非常稳定的振荡。

注意点:

1、区分集成电路芯片的引脚。我们观察单片机的表面(如右图),有一个凹进去的半圆缺口,它所对应的左边第一个脚就是这个芯片的脚1。然后按逆时针的方向数下去,依次为2,3,•••40(如左图)

2、电容、晶振离单片机越近越好,因为晶振的频率非常高,易受影响。

3、单片机应该安在锁紧座上,而不是直接焊在板上。

4、单片机P0口要接上10kΩ的上拉电阻。

二:

电路图:

http://www.21ic.com/d/file/201607/3d361aeb173b5f6d32d2ed58d372eb8c.jpg

烧写模块:

http://www.21ic.com/d/file/201607/9556c4cf4a71e3b4fad50ef366a5b348.jpg

材料清单:

1:烧写电路:

DB9母座一个 USB串口线一个

MAX232芯片及芯片座各一个

104瓷片电容 5 

2:单片机接触电路:

40PDIP 锁紧座一个

10K排阻1排针4

3:时钟电路:

11.0592晶振一个

30pF瓷片电容 2

4:复位电路:

10uF点解电容一个

10K电阻一个

按键一个

5:便于调试电路

发光二极管8 1K电阻8

6:导线焊锡若干,电路板一块

7:如果用USB供电,需要D形口及USB方口线一条。(推荐~)

8:总开关

自锁式开关一个,LED一枚 1K电阻1~

主要元件:

RS232(DB9)接口:

RS232接口是一种串行通讯的标准。该标准规定采用一个25个脚的DB25连接器,对连接器的每个引脚的信号内容加以规定,还对各种信号的电平加以规定。之后出现了代替DB25DB9接口,现在都把RS232接口叫做DB9DB9如图

http://www.21ic.com/d/file/201607/71825c484fd604192d2f518f3c6b8533.jpg

MAX232

是美信公司生产的一款专用于电平转换的芯片。详见注意点。

注意点:

1、电平。通常数据是采用二进制来存储、传输的,可以用电平信号表示逻辑的01,这种表示逻辑01的电平叫逻辑电平。在TTL电平信号系统里,+5V等价于逻辑“1”0V等价于逻辑“0”。当然,实际使用时不可能这么严格;一般数据输出时,高电平>2.4V,低电平<0.4V;输入时,高电平>2.0V,低电平<0.8V(数据来源网络)RS232采用负逻辑电平,-15~-3V为逻辑1+15~+3V为逻辑0。用MAX232芯片可完成TTL电平←→RS232所用逻辑电平的双向电平转换。

29针串口(DB9)除了235脚外其余的都不连入电路。不要让其余脚碰到练习版上高电平或低电平,碰到的话可能会使不稳定。

3、笔记本电脑没有DB9接口,因此我们选用USBRS232串口线。建议网购,WIN7系统选用型号HL340XP系统可选HL340PL2303

4MAX232不要直接焊接在练习板上,应该把芯片座焊在电路板上,注意引脚的序号。

三:Keil入门

Keil

Keil C是美国KeilSoftware公司出品的51系列兼容单片机C语言软件开发系统,该软件包括C器、宏汇编、连接器、库管理和一个功能强大的仿真调试器等在内,全Windows界面。Keil C51生成的目标代码效率非常高,多数语句生成的汇编代码很紧凑,容易理解。本教程讲解的Keil版本为V8.02

Keil的使用:

一、进入Keil工作界面

http://www.21ic.com/d/file/201607/135d31cc9f93fc0c157ffd068907135c.jpg

二、建立工程

点击“Project”→“NewProject”。如下图所示。

http://www.21ic.com/d/file/201607/be8144e936509afb8a1933be4d0c3b53.jpg

在弹出的窗口选择工程要保存的路径,输入工程文件名。然后点击保存按钮。

http://www.21ic.com/d/file/201607/1112f75732329826d9b265e3e368607f.jpg

在弹出的对话框要求选择单片机的型号,因为51内核单片机具有通用性,所以我们任选一款89C52就行。在这里我们选择Atmel89C52,然后点击确定按钮。

http://www.21ic.com/d/file/201607/d40d3ef983767b659df88af33173c3db.jpg

完成上一步后,窗口界面如图所示。

http://www.21ic.com/d/file/201607/ab311f4f731f01858289e6680ade2308.jpg

至此,我们已经建立一个工程,但工程中还没有任何文件及代码。

三、添加文件及代码

1、添加代码到文件

点击“File” →“New”或者点击按钮来新建文件。

http://www.21ic.com/d/file/201607/e029e763e641f6785d7f818733ba11c3.jpg

新建文件后,窗口界面如图所示。

http://www.21ic.com/d/file/201607/50fc23c937bf58ed08b41884f0a0f29a.jpg

点击“File” →“Save”或者点击,弹出窗口如图所示,在文件名处输入要保存的文件名(例:pmd.c),必须输入正确的扩展名(如果用C语言编写程序,则扩展名必须是.c;如果用汇编语言编写程序,则扩展名必须是 .asm)。这里的文件名不一定和工程名相同,可以随意填写文件名,然后单击保存按钮。

http://www.21ic.com/d/file/201607/b384091c3ad5b644ab3063aace55a11c.jpg

此时这个新建文件格式就变成了C语言源文件,与我们刚刚建的工程还没有直接联系。

比较好的习惯是先将其添加到工程,再编写代码

单击“Target 1”前面的“+”号,然后右键单击“Source Group 1”,选择“Add Files to Group ‘SourceGroup 1’”,如图所示。

http://www.21ic.com/d/file/201607/2553940695dc40c071e043d6272f012f.jpg

在弹出对话框中,选中pmd.c,单击“Add”按钮,再单击“Close”按钮,然后再单击左侧“Source Group 1”前面的“+”号,屏幕窗口如图所示。

http://www.21ic.com/d/file/201607/2a9a6afaa216ca2f6a976c772eb15945.jpg

这时,源代码文件就与工程关联起来了。

然后就可以放心的去编码了~~

如果要看昨天上课用P1口实现的

流水灯代码,请移步至http://blog.csdn.net/metalseed/article/details/8196727

编码完成后。

四、、连接

点击“Project”→“Rebuild all target files”或者点击http://www.21ic.com/d/file/201607/1db82eca5b40a4eeef3594f80c34636c.jpg信息输出窗口中显示了过程和编译结果,如图所示。

http://www.21ic.com/d/file/201607/a64900c9d022b5b215ad802ad6fc08f1.jpg

如果源代码中有语法错误,会有错误报告出现,双击该行,可以定位到出错的位置,对源程序反复修改之后,最终会得到“”pmd”- 0 Error(s),0 Warning(s).”的结果。

五、生成HEX文件

单击“Project” →“Options for Target ‘Target 1’”或者单击,弹出窗口,选择“Output”,然后选中“Create HEX File”,使程序编译后产生HEX代码,供下载器下载到单片机中。

http://www.21ic.com/d/file/201607/53a536a11ee71797daa8c025ba7aa14e.jpg

再次单击http://www.21ic.com/d/file/201607/1d776c8f84ff5661818611790cc1ccd5.jpg,编译工程,编译过程和编译结果如图所示。

http://www.21ic.com/d/file/201607/49e04157207634e517f5872f273a193b.jpg

 

我们发现编译过程多出一行“creating hex file from“pmd”…”。当创建并编译一个工程时,生成的HEX文件名与工程名是相同的。

现在,我们就可以把HEX文件烧到单片机内使用了。

四、用STC-ISP烧录

这个程序用于将二进制程序(hex文件,详见KEIL软件的使用)烧录到STC单片机中。具体的步骤,该软件标明了操作步骤,一看便知。

1:选择单片机类型(我们用的是STC89C52RC)

2:选择hex文件(Keil生成的那个)

3:选择COM口。选择COM口时,可以查看设备管理器,如图。要改端口号,双击划线的项、选择端口设置选项卡、单击高级、选择COM端口号下拉菜单中的项。(如果是无法识别,则需要安装串口线的驱动,百度或者问卖家要)

http://www.21ic.com/d/file/201607/a552fcfc4efff1dcedeb028ae157dabc.jpg

步骤4可以跳过。

5:点Download然后重新启动单片机(握手连接)

http://www.21ic.com/d/file/201607/126d76319f5d855ce7e2e321d47a0381.png

也可严格按照软件界面上的说明步骤来搞~

烧录程序时,要在单片机电源未开的状态下点击步骤5里的“Download/下载,然后再给单片机上电(因为此处我们用的STC89c51/STC89c52不支持在线可编程ISP)。点了“Download/下载之后,若USBRS232串口线没问题,则步骤三的串口指示灯应该亮。当烧录不成功时,要检查硬件电路的焊接,当检查好几遍没有问题时,我们才可以开始怀疑芯片、单片机的质量问题。

 



评论


相关推荐

技术专区

关闭