项目1 单片机及相关软件介绍与应用(一)项目任务
ü 掌握C51单片机的基础知识;
ü 完成Keil及烧录软件的安装并正确使用。
(二)相关知识点2.1、单片机基本概念
1)单片机的基本组成
单片机又称单片机,类似于微型计算机。 内部资源主要可分为Flash、RAM、SFR。
Flash,俗称“闪存”,用于存储程序。 其最大特点是断电后数据不会丢失。 其存储特性相当于计算机的硬盘。
RAM(Random-Access Memory),俗称“存储器”,主要用于存储短期使用的程序。 它的特点是断电后数据丢失,但读写速度很快,其特性相当于计算机内存。
SFR(特殊功能寄存器)是单片机中各个功能部件对应的寄存器。 用于存储相应功能部件的控制命令、状态或数据。 通过读写SFR可以实现单片机的各种功能。 。
通常提到的51微控制器是指兼容Intel MCS-51架构的一系列微控制器。 51是它的流行缩写。 全球许多半导体厂商都推出了无数型号的该系列单片机,如Atmel的AT89C52、NXP(飞利浦)的P89V51、Acer Technology的STC89C52……具体型号差异很大,但它们的基本原理和操作都是相同的。 程序开发环境也是如此。
在所有项目中,选择STC89C52单片机进行学习。 STC89C52是宏晶科技生产的51核单片机。 它具有标准的51架构和全部51个标准功能。 程序下载方法简单易学。 其资源情况:Flash程序空间为8K字节(1K=1024,1字节=8位),RAM数据空间为512字节。
2)单片机引脚分布(位的概念)
如图1所示,共有40个引脚,其中P0为准双向口,P1、P2、P3为双向口。 除了这 32 个引脚之外,还常用以下引脚:
图1 MCS-51引脚图
EA:该引脚信号为高电平时,从内部存储器开始读取ROM操作; 当该引脚信号为低电平时,从外部存储器开始读取ROM。 因此,正常情况下,EA外接高电平。
RST:复位引脚。 当输入高电平信号持续两个机器周期以上时,单片机执行复位操作。
XTAL1和XTAL2:晶振信号引脚。 外部石英晶体振荡器和微调电容器为微控制器提供精确的时钟。 常用的晶振有11.0592M和12M。
VSS:地线。
VCC:接电源,一般为+5V。
其中,RXD和TXD是引脚的第二功能,用于接收和发送数据。
3)微控制器最小系统
使单片机能够运行的最简单的配置称为单片机的最小系统,包括电源、晶振和复位电路,如图2所示。
1.电源
目前主流单片机的供电分为两种标准:5V和3.3V。 当然,也有电压要求较低的单片机系统,一般用于一些特定的场合。
STC89C52需要5V供电系统,开发板使用USB口输出的5V直流电直接供电。 从图2可以看出,电源电路在引脚40和20处。引脚40连接到+5V,通常也称为VCC或VDD,代表电源正极。 20脚接GND,代表电源负极。 +5V和GND之间还有一个电容。
2. 晶振
晶体振荡器也称为晶振。 其作用是为单片机系统提供参考时钟信号。 单片机内部的所有工作都是以这个时钟信号为步调参考的。 STC89C52单片机的18、19引脚是晶振引脚。 项目中连接了一个11.0592M(或12M)的晶振(每秒振荡11,059,200次),加上两个20pF的电容。 电容的作用是帮助晶振发挥作用。 振荡并保持振荡信号的稳定性。
3.复位电路
图2左侧是复位电路,连接到单片机的9脚RST(Reset)复位引脚。 单片机复位一般有三种类型:上电复位、手动复位、程序自动复位。
假设单片机程序有200行。 当某个操作进行到第20行时,突然断电。 此时,单片机内部有些区域数据会丢失,有些区域数据可能不会丢失。 那么当你下次打开设备时,你希望单片机能够正常运行,所以上电后,单片机会经历一个内部初始化过程。 这个过程可以理解为上电复位。 上电复位确保微控制器每次都从固定值启动。 在相同的状态下开始工作。 这个过程和打开电脑是一样的。
程序运行时,如果遇到意外干扰导致程序崩溃、程序跑掉,可以按复位按钮重新初始化程序并重新运行。 这个过程称为手动重置,最典型的就是重新启动计算机。 按钮。
当程序崩溃或跑飞时,微控制器往往具有自动复位机制,例如看门狗。 具体应用稍后学习。 这种情况下,如果程序长时间失去响应,MCU看门狗模块会自动复位,重启MCU。 也有程序故意重启并重置微控制器的情况。
电源、晶振、复位构成了单片机最小系统的三要素。 换句话说,如果微控制器满足这三个条件,它就可以运行该程序。 其他如LED灯、数码管、液晶等器件都是微控制器。 外部设备,即外围设备。 通过对微控制器进行编程来控制各种外设来实现最终所需的功能。
图2 MCS-51单片机最小系统
4)本书附带的电路图
本书附带的电路原理图如图3所示,科普原理图知识。 电路原理图的存在是为了表达电路的工作原理。 在绘制多个器件时,更多地考虑到原理分析的方便,并没有表达每个器件的实际位置。 例如原理图中单片机的引脚图,引脚可以放在任何你想要的地方,但每个引脚上都有一个数字标签。 该数字标签代表微控制器的真实引脚位置。 一般情况下,这种双列直插式封装芯片的引脚1在左上角。 逆时针旋转针数会增加,直到右上角为最大的针。 目前使用的单片机一共有40个引脚,所以右上角是40(方框内代表芯片)。 请务必区分原理图引脚编号和实际引脚位置之间的差异。
图3 配套原理图2.2、Keil软件和STC-ISP软件介绍
1)Keil软件功能
Keil是美国Keil软件公司出品的51系列兼容单片机C语言软件开发系统。 该软件包括完整的开发解决方案,包括 C 编译器、宏汇编、链接器、库管理和强大的仿真调试器。 在本教材中用于程序编译、调试等,通过Keil编译后生成HEX文件,结合STC-ISP烧录软件,将HEX烧录到单片机中。
Keil 软件有很多版本。 本教材使用Keil u4Vision4,也称为Keil C51。 由于版权问题,该软件的试用版可以编译最大4K大小的HEX文件。 有需要的读者可以从Keil官网购买正版软件。
2)STC-ISP烧录软件
STC-ISP是一款可下载的微控制器编程和烧录软件。 它专为STC系列微控制器设计,易于使用。 在本研究中,HEX文件通过STC-ISP烧录到微控制器中。
(3)设计实现3.1、Keil软件安装
Keil软件安装只需一步步安装即可,如图4所示。
图4 Keil C51安装界面
安装到图5所示界面时,只需在空白处填写任意字母,右下角“下一步”就会高亮显示,即可进行下一步。
图5 Keil C51安装界面
安装完成后,桌面上会出现如图6所示的快捷方式。
图6 Keil C51快捷键
双击软件后,可能会出现图7红框内的文件,名为“Project”。 内置项目不是我们需要的,所以在创建新项目之前关闭原来的项目。 操作如图8,Project —>Colse Project,关闭项目即可。
图7 Keil C51界面(一)
图8 Keil C51界面(二) 3.2. 项目立项
单片机操作流程:新建工程→程序编写、调试→程序烧录→运行。
首先,创建本教材的第一个项目,在桌面上新建一个文件夹,命名为“MyFirstPJ”,双击打开安装好的Keil C51,如图9所示,点击ProjectàNew uVision Project,然后导航到新建文件 折叠 MyFirstPJ 并输入文件名 MyFirstPJ,如图 10 所示。您可以选择任何文件名。 小编建议选择一个与项目相关的名称,方便识别。 单击“保存”。 出现如图11所示的对话框,选择Atmel—>AT89C52,点击“确定”,如图12所示,弹出如图13所示的对话框。 您可以选择“是”或“否”。 本例中选择“否”,表示使用默认启动代码。 如果需要修改启动代码选择“yes”。
图9 新建工程界面(一)
图10 新建工程界面(二)
图11 新建工程界面(3)
图12 新建工程界面(4)
图13 新建工程界面(5)
项目构建完成后,新建一个项目文档,点击FileàNew。 将出现如图 14 所示的界面。 点击
出现如图15所示界面,输入“main.c”,点击保存。 注意后缀必须是“.c”。 如果汇编语言后缀是“.asm”,则大小写无关紧要。 后缀必须正确。 文件名要有实际意义,否则会给后续查找带来很大麻烦。 方便,初学者应该养成这个好习惯。
图14 新建项目(1)
图15 新建项目(2)
项目文档创建完成后,将文档与项目关联起来,如图16所示。右键单击“Source Group 1”,选择“Add Files to Group 'Source Group 1'”。 将出现图 17 所示的界面。 选择“main.c”,点击“添加”关闭界面。
图16 添加项目界面(一)
图17 添加项目界面(二)
至此,文档与项目的连接就完成了,如图18左框所示。
图18 编程界面(一)
3.3. 程序编写和HEX文件生成
编写程序如图19所示。注意括号分为方括号和小括号。 完成程序后,单击
,出现图20的对话框,选择“输出”,勾选“创建HEX文件”前面的复选框,然后点击“确定”,这样编译后就生成了HEX文件。
图19 编程界面(二)
图20 生成HEX文件设置界面
编译之前,先解释一下下面图19中的三个按钮。
,左边第一个是编译按钮。 它只是检查编写的程序是否存在语法错误。 它不会链接,因此无法生成HEX文件,很少使用。 第二种比较常用。 该按钮的作用是只编译当前文件。 并进行库连接等,这将完成生成HEX所需的所有操作; 第三个按钮也会生成 HEX 文件,但会重新编译所有文件。 例如,如果文件很大,修改后每次重新编译都会消耗大量金钱。 时间上,大多数情况下只需要重新编译修改后的文件即可。 与本例中编译较小的程序类似,两者没有本质区别。
程序编写和设置完成后,点击菜单栏中的
,界面左下角出现如图21所示的界面,其中ERROR(S)代表程序中的错误数量,WARNING(S)代表程序中的警告数量。 如果程序中存在ERROR(S),则说明程序存在绝对错误,此时无法生成HEX文件。 如果程序中存在WARNING(S),则说明程序存在某种不完善之处,但这种不完善之处并不是绝对意义上的错误。 生成的HEX可以在硬件上运行。 读者需要清楚这个警告是什么类型的“警告”。 如果您不知道“警告”的来源,则需要排除此“警告”。 该程序显示 0 个错误和 0 个警告。 到目前为止生成的HEX可以在微控制器上使用。 普通手术。
打开MyFirst文档,可以看到MyFirstPJ.hex文件,如图22所示。
图21 编译成功界面
图22 HEX文件生成文件位置
为了更好的使用Keil软件,可以进行一些字体大小等设置。 选择菜单栏中的Edit—>Configuration,出现如图23所示的界面。首先选择Editor,在Tab size中写上“4”,即编程时按TAB键会相应缩进4个空格。
图23 TAB键格式设置界面
选择Configuration中的“Colors&Fonts”->“8051: Editor C Files”->“Test”->“Courier New”更改字体大小,如图24所示。
图24 字体调整界面 3.4、驱动软件安装
单片机开发需要与计算机进行串口通信。 现在电脑上的串口很少,比较常见的是USB接口。 因此,计算机的USB端口被映射到串口。 CH340是一款常用的USB转串口芯片,它还可以实现USB转串口、USB转IrDA红外或USB转打印口。
CH340芯片已集成在配套的开发板上,需要安装相应的驱动。 配套软件包中有相应的驱动程序。 文件名为“CH341SER”。 读者也可以在线下载安装。
安装界面如图25所示。以Win7为例,右键单击我的“计算机”->属性->打开设备管理器,显示如图26所示界面。 “端口”下只有“通讯端口”。 安装驱动后最后“端口”中出现“USB-SERIAL CH340”,通道为“COM3”,如图27界面所示。下一节将使用“COM3”。
图25 CH340安装界面
图26 串口安装界面(一) 3.5. 刻录软件的使用
打开配套软件包中的“STC-ISP-v4.80”,也可以前往STC官网下载最新的STC-ISP软件。 软件操作类似。 以软件包中的烧录软件为例。
第一次使用本软件时,首先找到后缀为“.exe”的可执行文件,右键以管理员身份运行,如图28所示。 操作步骤: ①选择单片机型号,选择“STC89C52RC”; ② 打开程序文件,找到对应的HEX文件; ③ 选择串口号,计算机à属性à设备管理器à端口找到对应的串口号; ④ 点击“下载”按钮
图28 STC-ISP设置界面
点击后,界面仍如图29所示,显示“仍在连接,请给MCU上电…”。 由于单片机是冷启动型的,所以需要关闭单片机的电源,然后再打开。 此时界面如图30所示,说明下载成功。
图29 STC-ISP烧录设置界面(一)
图 30 STC-ISP 烧录设置界面(二) 3.6. 常见问题解答
程序无法下载或运行不正常,原因如下:
1、观察单片机是否正确安装在单片机底座上。 如果安装不正确,长时间通电,会烧毁单片机!
2、如果开发板长期不使用,引脚上的氧化层会过厚,表现为单片机与单片机底座接触不良。 此时,只需将单片机放入单片机固定器中,并锁定单片机固定器(注意:是锁定,不是锁定),然后左右移动单片机来摩擦引脚,如此重复大约十次。
3、是否安装了相关驱动,烧录程序时是否选择了正确的序列号。
3、长期不用时一定要避免灰尘侵入。 由于开发板本身是裸板,因此必须避免灰尘。 一旦这些地方有灰尘,导致引脚之间导通,可能会导致工作不稳定,甚至烧毁芯片。
您可以在b站观看相关视频! !
为哔哩哔哩干杯(゜-゜)つロ~哔哩哔哩