从单片机基础到程序框架(全集 2019pdf版).pdf - 第8页

第四节:平台软件和编译器软件的简介。 【4.1 平台软件和编译器软件的各自分工。 】 C 语 言 写 在哪 ? 谁 来 把 C 语言 翻 译 成 单 片 机 可 以 识 别 的 机 器 语 言 ? 这 就 是 平 台 软 件 和 编 译 器 软 件 的 分 工。平台软件负 责编辑 C 语言 ,编译软件 负责把 C 语言翻 译成单片机 可以识别的机 器语言。 【4.2 每一种单片机的平台软件和编译器软件不一定是唯一的。 】 C 语言在单片…

100%1 / 836
测到的电压低于或等于 0.8V 时是低电平,程序里读取到的是 0 数字。单片机 IO 口管脚检测到的电压高于
等于 2.4V 时是高电平,程序里读取到的 1 数字。必须注意的是,IO 口输入的最大电压不能超过单片机的
供电电压。单片机输出的低电平是 0V,单片机输出的高电平等于它的供电电压值,往往 3.3V 或者 5V
【3.6 时间。
时间是单片机程序必不可少的元素。跟外围芯片通信的时序节拍需要时间,驱动发光二极管闪烁需要
间,工控自动化的某些延时需要时间。单片机的时间来源自两方面。第一方面源自指令的周期时间。单片机
是根据节拍来执行程序指令的,每执行一条指令都要消耗一点时间,只要让程序执行的指令数量越多产生
的时间就越长,通过调整所执行指令的数量就可以得到所需的时间长度。第二方面源自单片机内部自带的定
时器。假如设置定时器每 20 毫秒产生一次中断现在要获取 10 秒钟的时间只需在程序里统记 500 次定时
中断就可以了,因为 1 秒等 1000 毫秒。指令和定时器这两者的时间最后都来源于晶振。
第四节:平台软件和编译器软件的简介。
【4.1 平台软件和编译器软件的各自分工。
C 在哪 C 语言
工。平台软件负责编辑 C 语言,编译软件负责把 C 语言翻译成单片机可以识别的机器语言。
【4.2 每一种单片机的平台软件和编译器软件不一定是唯一的。
C 语言在单片机的应用也是最近这些年发展起来的,早期做单片机的原厂更关注芯片硬件本身,配套的
C 语言开发软件方面涉入不深,他们往往只管把单片机芯片生产出来后,给大伙提供一个汇编语言的编译器
软件就草率了事,所以给了很多第三方商家做平台软件和 C 编译器的机会,后来单片机原厂也乐意支持和配
合这些第三方开发软件的厂商,也有一些单片机原厂直接收购这类第三方软件公司。因此,不同厂家的单片
机,它所用的平台和编译器软件可能都不一样。即使是同样一个厂家的单片机,它也有可能存在多种不同的
第三方平台软件和编译器软件,每一种单片机所用的平台软件和编译器不一定是唯一的。比如 stm8 单片
可以用 STVD 软件平台,也可以 IAR 平台。stm32 单片机可以 keil 平台,也可以用 IAR 平台。
【4.3 平台软件和编译器软件的宿主与寄生关系。
平台软件选定了之后,所用的编译器软件也可能存在多种选择,不是一种平台软件就绑定一种编译器
软件。生物学的比喻,平台软件是宿主编译器软件是寄生在平台软件里的。一个平台软件可以嵌入多种不
同的编译软件平台件和译器件存一对的关。比,PIC 机的台软 MPLAB,8
PIC 单片机是 PICC 编译器,12 PIC 片机 PIC18 译器,16 PIC 片机 C30 编译器。而且 MPLAB
平台软件与上述各种编译器软件都要单独一个一个分开来安装,后运行 MPLAB 平台软件,在里面操作某个
菜单设置选项,把各种 C 编译器软件跟 MPLAB 平台软件关联起来。
【4.4 51 单片机的平台软件和编译器软件。
我后面的讲解,51 单片机的平台软件用 keil2,编译器软件 C51。单片机程序开发需要用到这两种软
件,在项目开发的时候,只要跟平台软件打交道就可以了,因为编译器软件是当做一种独立配件嵌入到
台软件里,统一接受平台软件的控制。我在用 PIC 8 位单片机时,需要安装一 MPLAB 平台软件,也需
独立再安装一次 PICC 编译器软件然后运行 MPLAB 平台软件在里面操作某个菜单设置选项 PICC 编译
器跟 MPLAB 平台软件关联起来,也就是我所说的 PICC 编译器嵌入到 MPLAB 台软件里,统一接受平台
件的控制,但我平常写代码时只需要 MPLAB 平台软件打交道就可以了。我早期在 51 单片机开发时,
是需要把 keil 平台软件 C51 软件分开安装,然后再把它们关联起来,但是现在从 keil2 本开始,在
keil 平台软件时就已经默认把 C51 安装好了,并且自动把 C51 嵌入到了 keil 平台软件。我现在 keil2
这个版本的平台软件,只需要安装一次 keil2 平台软件就可以了,不需要像早期那样再单独安装 C51 编译器。
第五节:用
keil2
软件关闭,新建,打开一个工程的操作流程。
【5.1 本教程选择 keil2 软件版本的原因
Keil 软件目前有 Keil2,Keil4,Keil5 等版本。本教程之所以选 keil2 版本,是因为 keil2 版本比
较单纯,它本身内置了 C51 编译器,并且只适用 51 单片机不能适用于 stm32 这类单片机。 Keil4,Keil5
等版本不仅可以适用于 51 单片机的,还可以适用于 ARM 类的单片机,它们 C51 编译器和 MDK-ARM 编译器
两种选择,在同一个 keil4 或者 keil5 版本里,C51 MDK-ARM 两者往往只能二选一,MDK-ARM 编译器是针
stm32 这类单片机如果你电脑上用了 MDK-ARM 编译器想再切换到 C51 编译器就很麻烦了往往不兼容,
了电脑上既能用 C51 编译器,又能兼容 MDK-ARM 编译器,我的电脑上是同时安装 C51 编译器的 keil2
MDK-ARM 编译器的 keil4,一台电脑同时安装 keil2 keil4 不会冲突,能兼容的。
【5.2 如何在不用关闭 keil2 软件的前提下又能关闭当前被打开的工程
要关闭当前工程,最简单的方法是直接点击 keil2 软件右上角的“X”直接 keil2 软件也一起关了,
这种方法不在讨论范围,现在要介绍的是如何在不关闭 keil2 软件的前提下又能关闭当前被打开的工程。
5.2.1 启动 keil2 软件
第一步:启动 keil2 软件。
双击桌面”keil uVision2”的图标启动 keil2 件。
----------------------------------步骤之间的分割线----------------------------------------