资源简介 (共74张PPT)单片机与C语言技术应用第一单元 任务11.1 安装IAR开发环境学习目标01知识储备03任务工单05任务要求与任务分析02任务实施04任务小结06知识与技能提升07延伸阅读08学习目标01了解单片机的基本知识(概念、类型、开发环境等);了解软件工程概念;掌握IAR开发环境的安装方法;掌握IAR开发环境工程建立与配置方法;掌握单片机C语言的程序结构;了解单片机仿真器下载和仿真的基础知识和操作方法。学习目标01具有软件工程概念;具有工程思维解决问题的概念;能独立安装IAR开发环境;能够独立新建IAR工程和配置IAR工程;能够使用单片机仿真器下载和仿真。学习目标01知识储备03任务工单05任务要求与任务分析02任务实施04任务小结06知识与技能提升07延伸阅读081.1 安装IAR开发环境任务要求与任务分析02任务要求:能独立搭建IAR开发环境。任务分析:下载并安装IAR软件,建立IAR for C51的开发环境。学习目标01知识储备03任务工单05任务要求与任务分析02任务实施04任务小结06知识与技能提升07延伸阅读081.1 安装IAR开发环境单片机简介单片机分类简介12知识储备0334单片机编程语言简介单片机开发环境简介●单片机最初的英文为“Single Chip Microcomputer”,英文简称SCM,中文简称单片机,直译为“单片微型计算机”。●单片机将CPU(Central Processing Unit)、RAM(Random Access Memory)和ROM(Read-Only Memory)整合在一个芯片中,专门为嵌入式产品而设计。知识储备03●随着单片机在技术上、体系架构上不断扩展其控制功能, SCM已不能够准确表达其内涵,国际上最终统一用MCU(Micro Controller Unit)命名,直译为“微控制单元”。在国内,因为单片机一词已约定俗成,故而继续沿用,意指“芯片级计算机”。知识储备03几种常用的单片机:(a)AT89C51(b)CC2530F256(c)ATmega32U4-AU(d)PIC18F14K50(e)GD32F103RBT6(f)MSP430AFE253知识储备03同PC系统一样,单片机应用系统也是由硬件和软件组成的,硬件是系统的基础,软件则在硬件的基础上对其资源进行合理调配,从而完成应用系统所要求的任务,是功能的体现者。硬件和软件相互依赖,缺一不可。硬件并非指单片机本身,还包括很多与单片机一起协同工作的各类外部电子元件。知识储备03单片机外部搭配不同的电子元件,可以组建不同的硬件系统。本教材使用的实训用设备包括Zigbee模块白板(教材中统称白板)和Zigbee模块黑板(教材中统称黑板),其中白板上单片机的外围电路相对简单,而黑板则相对比较复杂。知识储备03知识储备03Zigbee模块白板和Zigbee模块黑板:知识储备03在上图的白板和黑板中,一些关键的电子元件在两块板中均有,具体如下:标号①:CC2530F256单片机;标号②:晶振;标号③:LED灯,作为输出指示;标号④:按键,作为输入设备。在软件方面,一般可分为操作系统和应用程序两大类。其实,操作系统也是一个复杂的应用程序,是一个运行环境或者说平台。绝大多数应用程序都必须依赖于这个平台运行,如果平台出问题,那么应用程序必将受到影响,而单一应用程序出问题一般不会影响到操作系统,但严重的应用程序问题也会导致操作系统和所有程序一起崩溃。知识储备03PC中有Windows、Unix、Linux和Mac这四大类主流操作系统,单片机中使用的嵌入式操作系统常见的大约有40余种,可以分为两大类,一类是面向控制、通信等领域的实时操作系统,例如μClinux、μC/OS-II、VxWorks和FreeRTOS等;另一类是面向消费电子产品的非实时操作系统,例如Android和Linux等。对于简单功能的单片机程序中可以不使用操作系统,通过顺序运行和中断调度实现产品功能,例如本书的智通交通信号灯。知识储备03国产单片机厂商主要在消费电子、智能卡和水电煤气仪表等中低端应用领域中竞争,在市场潜力大且利润比较高的领域,比如工业控制、汽车电子和物联网领域都被国外的单片机厂商垄断。近几年在芯片行业涌现了一批优质企业,其中芯片设计企业包括华为海思、紫光展锐、兆易创新和汇顶科技等,晶圆制造企业包括中芯国际、华虹半导体和华力微电子等,芯片封测企业包括长电科技、华天科技、通富微电和晶方科技等。知识储备03这些企业带动了国产单片机在高端领域的突破,市场占有率逐年快速增长。美国对中国的芯片出口限制虽然对华为等厂商有负面影响,但却间接带动了“国产替代”热,为国产单片机替代进口提供了契机,预计到2023年国产单片机在消费电子领域占比将达到86%。知识储备03单片机简介单片机分类简介1234单片机编程语言简介单片机开发环境简介知识储备03单片机可以有多种分类方式:(1)按用途可分为专用型和通用型单片机。专用型单片机用途专一,出厂时程序己经一次性固化好且不能再修改,例如应用于遥控器和电子计算器中的单片机。通用型单片机的用途很广泛,使用不同的接口电路,编写不同的应用程序就可实现不同的功能,例如正在学习和使用的CC2530单片机。知识储备03(2)按内部总线的位数可分为4位、8位、16位、32位和64位。随着单片机制造工艺的改善,32位单片机的成本逐年降低,现在32位已经成为主流,正在逐渐替代过去由8/16位主导的应用和市场。知识储备03(3)按照指令集架构可以分为复杂指令集(CISC)和精简指令集(RISC)。常用的单片机中只有8051采用复杂指令集,除此之外都是精简指令集,例如AVR、PIC、MSP430和ARM等。知识储备03(4)按生产厂家分类生产单片机的厂家可以说数不胜数,排名靠前的主流厂商为瑞萨电子、恩智浦、微芯科技、意法半导体、英飞凌、德州仪器、赛普拉斯,暂时都是国外的厂商;国产单片机主要厂商为兆易创新、中颖电子、灵动微电、芯海科技和新唐科技等。知识储备03MCS-51单片机是指由美国英特尔公司生产的一系列单片机的总称,这一系列单片机包括了许多品种,其中8051是最早最典型的产品。知识储备03下面介绍与本书相关的英特尔(Intel)的8051和德州仪器(TI)的CC2530。●英特尔公司将8051的核心授权给了很多公司使用,这些公司在保持与英特尔8051指令系统兼容的同时,也对8051进行功能扩展和改进。●国内习惯称呼兼容英特尔8051指令系统的单片机为51单片机,这一称呼包括了很多不同品牌不同种类的单片机,并不是单指英特尔的MCS-51单片机。知识储备03TI将全部的高频电路和英特尔8051内核集成到同一芯片内部,称之为射频SoC,也称为无线单片机,CC2530就是射频SoC的典型代表之一。射频SoC芯片外部只有很少的元件,电路板设计也非常简化,大幅降低了高频产品的设计难度。CC2530片上集成的8051扩展高频通讯相关的寄存器,将高频通讯的处理简化为对寄存器的操作,即只需要对这些寄存器进行操作,就可以轻松完成无线通讯功能。知识储备03CC2530集成了增强型工业标准8051和IEEE802.15.4 RF收发器,通过TI公司提供的Z-Stack协议栈实现ZigBee的无线通讯功能。CC2530有四种不同型号CC2530F32、CC2530F64、CC2530F128和CC2530F256,分别具有32KB、64KB、128KB和256KB的Flash存储器。知识储备03单片机简介单片机分类简介1234单片机编程语言简介单片机开发环境简介33知识储备03单片机和PC机所使用的编程语言一样,分为机器语言、汇编语言和高级语言三大类。(1)机器语言CPU只能识别0和1这样的二进制代码,用二进制代码编写的程序称为机器语言程序,现在已经没有人使用机器语言对单片机进行编程。知识储备03(2)汇编语言由于机器语言编程很不方便,使用一些有意义并且容易记忆的符号来表示不同的二进制代码指令,这些符号称为助记符,用助记符表示的指令称为汇编语言指令,用汇编语言编写出来的程序称为汇编语言程序。现在只有0.5KB及以下容量,或者极少数不支持高级语言的单片机,才会使用汇编语言编程,除此之外很少人使用汇编语言编程。知识储备03(3)高级语言高级语言是依据数学语言设计,使用高级语言编程时不用过多考虑单片机的内部结构,与汇编语言相比,高级语言易学易懂,而且通用性强。高级语言的种类很多,目前在51系列单片机中可以使用的高级语言有:C(包括C++)、BASIC、FOXBASE和PL/M-96,以及近几年出现的MicroPython和Blockly。知识储备03这几种高级语言中最主流就是C语言,特别在只有0.5KB~2KB存储容量的单片机编程中,如果想用高级语言编程,C语言是唯一选择,在更大容量的单片机中,如果不是特殊要求或特殊应用,一般也是使用C语言。知识储备03C语言与别的高级语言相比,其语言表现能力和操作处理能力更强,不仅具有丰富的运算符和数据类型,便于实现各类复杂的数据结构,可以直接访问物理内存,还能进行数据的位操作。C语言广泛地移植到了各种类型的单片机和计算机上,形成了不同版本的C语言,应用于51单片机的C语言称为C51。由C51产生的目标代码短,运行速度高,存储空间小。知识储备03单片机简介单片机分类简介1234单片机编程语言简介单片机开发环境简介知识储备0351系列单片机常用开发环境包括如下几种:(1)IAR for C51IAR是一款可支持绝大多数主流8位、16位和32位单片机的IDE(集成开发环境),具有界面简洁、操作方便、编译效率较高、支持丰富的第三方插件等特点。IAR系列编译器中,IAR Embedded Workbench For 8051(简称IAR for 8051)是一款针对51系列单片机的编译器,支持各种常见型号的51系列单片机。知识储备03(2)Keil C51Keil主要支持ARM和51两种结构的单片机,集成C编译器、宏汇编、连接器、库管理以及功能强大的仿真调试器,使用向导化生成启动代码,甚至完整的工程文件。Keil C51编译器支持超过500种基于8051内核的单片机。知识储备03(3)SDCCSDCC的全称是Small Device C Compiler,是一款免费、开源、跨平台的C编译套件,但其编译环境是命令行模式,如果用不习惯,还可以下载一个开源的MCU8051 IDE配合使用。知识储备03针对开发环境的选择,没有哪款开发环境是万能的,也没有哪款开发环境在所有方面都具有绝对优势。对于Keil和IAR两款开发环境,各有特色,各有所长,国内大多数的嵌入式开发工程师都是使用其中之一或者两种都用。由于Keil和IAR为商业软件,需要购买软件使用许可,有些注重版权的公司或工程师就使用免费的SDCC。知识储备03CC2530在某些应用场合需要使用TI公司提供的Z-Stack协议栈,只能使用IAR for 8051作为开发环境。本书只是将CC2530当成普通的51单片机使用,并没有使用到ZigBee或无线相关资源,也没有使用Z-Stack协议栈,也可以使用KeilC51和SDCC开发环境,但为了兼容后面Zigbee的学习,本书选择IAR for 8051作为开发环境。知识储备03学习目标01知识储备03任务工单05任务要求与任务分析02任务实施04任务小结06知识与技能提升07延伸阅读081.1 安装IAR开发环境任务实施04序号 设备/资源名称 数量 是否准备到位(√)1 计算机(已安装好IAR软件) 1台 2 NEWLab实训平台 1套 3 CC-Debugger 仿真器 1套 4 黑板 1块 任务实施前必须先准备好以下设备和资源:12下载或找到安装包安装软件3安装结果验证任务实施04从IAR官网或本书配套资源中找到安装包。任务实施0412下载或找到安装包安装软件3安装结果验证任务实施04双击安装程序,进入安装向导界面,在弹出来的对话框里单击“Next”按钮。任务实施04安装向导界面:任务实施04打开安装说明界面,在界面中单击“Next”按钮,后面都是按默认设置,一直单击“Next”按钮,直到输入用户名界面,具体步骤就不在书中列出,如有需要请参见书籍配套资源。在输入用户名界面中,Company非必须填,可以空着,名字(Name)和许可证号(Licanse#)为必填,输入完成之后再单击“Next”按钮。任务实施04输入用户名界面:任务实施04输入许可证密钥(License Key),再单击“Next”按钮。输入许可证密钥界面:任务实施04后面又都是按默认设置,一直单击“Next”,直到安装完成,单击“Finish”按钮。任务实施04安装完成界面:任务实施0412下载或找到安装包安装软件3安装结果验证任务实施04运行安装好的IAR Embedded Workbench软件,如果能够进入启动IAR界面,说明安装成功。任务实施04IAR启动界面:任务实施04学习目标01知识储备03任务工单05任务要求与任务分析02任务实施04任务小结06知识与技能提升07延伸阅读081.1 安装IAR开发环境05任务工单本次任务关键知识引导:1.单片机最初的英文为“Single Chip Microcomputer”,简称( ),国际上最终统一用( )简称命名,直译为( )。2.同PC系统一样,单片机应用系统也是由硬件和( )组成的。3.Zigbee模块包含了( )、( )、( )、按键和PCB。4.单片机中使用的嵌入式操作系统可以分为两大类,一类是面向控制、通信等领域的( ),另一类是面向消费电子产品的( )。5.单片机按用途可分为专用型和通用型单片机,遥控器中的单片机属于( ),CC2530单片机属于( )。6.按内部总线的位数可分为4位、( )位、( )位、( )位和64位。7.CC2530有四种不同型号CC2530F32、CC2530F64、CC2530F128和( ),分别具有32KB、64KB、128KB和( )的Flash存储器。(注意K的大小写)7.目前在51单片机中可以使用的高级语言有很多种,其中最主流就是( ),可以直接访问( ),还能进行( )操作。8.IAR Embedded Workbench For 8051,简称为( ),是一款针对51系列单片机的编译器,本书使用该编译器开发( )单片机。任务检查与评价05各组选派代表分析本组任务实施经验;01添加标题请参照评价标准完成自评;02完成对其他小组的评价。03互评经验分享自评评价方式 可采用自评、互评、老师评价等方式 说明 主要评价学生在项目学习过程中的操作技能、理论知识、学习态度、课堂表现、学习能力等。 序号 评价内容 评价标准 分值 得分1 知识运用(20%) 掌握相关理论知识,完成本次任务关键知识的作答准确率(20分) 20分2 专业技能(40%) 安装IAR软件,软件启动界面正常。(40分) 40分安装IAR软件,软件启动界面异常。(30分)找到IAR安装包,但没有安装,或者安装过程异常退出。(20分)没有找到IAR安装包(。10分)电脑没有开机,或者不知知道如何找安装包。(0分)3 核心素养(20%) 具有良好的自主学习、分析解决问题、帮助他人的能力、整个任务过程中有指导他人并解决他人问题(20分) 20分具有较好的学习能力和分析解决问题的能力,任务过程中无指导他人(15分)具有主动学习并收集信息的能力,遇到问题有请教他人并得以解决(10分)不主动学习(0分)4 职业素养(20%) 实验完成后,设备无损坏、设备摆放整齐、工位区域内保持整洁、无干扰课堂秩序(20分) 20分实验完成后,设备无损坏、无干扰课堂秩序(15分)无干扰课堂秩序(10分)干扰课堂秩序(0分)总得分学习目标01知识储备03任务工单05任务要求与任务分析02任务实施04任务小结06知识与技能提升07延伸阅读081.1 安装IAR开发环境任务小结06学习目标01知识储备03任务工单05任务要求与任务分析02任务实施04任务小结06知识与技能提升07延伸阅读081.1 安装IAR开发环境任务拓展07动动脑单片机和PC机都是由软硬件组成,网上搜一搜,找一找两者的异同点。任务拓展07动动手请自行安装仿真器硬件驱动和程序下载工具软件SmartRF Flash Programmer,可以参考书籍配套资源。学习目标01知识储备03任务工单05任务要求与任务分析02任务实施04任务小结06知识与技能提升07延伸阅读081.1 安装IAR开发环境1.ARM类型的单片机说明ARM类型的单片机与51单片机类似,并不是指某个型号的单片机,而是通指兼容ARM指令集的单片机统称。ARM准确来讲是一种处理器的IP核(半导体知识产权),ARM公司开发出处理器结构后向其他芯片厂商授权制造,芯片厂商可以根据自己的需要进行结构与功能的调整,因此各大主流的单片机供应商都有提供ARM内核的单片机。08延伸阅读有部分厂商将ARM内核与RAM、ROM和GPIO等集成在一个芯片中,这类ARM内核的芯片是归类于单片机,例如ST的STM32系列和国产兆易创新的GD32系列。还有部分ARM内核嵌入其他专用芯片中作为中央处理单元使用,例如手机产品中的华为麒麟9000(ARM V8a)、高通骁龙888(ARM V9)和苹果A15(ARM V9)等,这些在使用时需要外接RAM和ROM,更接近处理器的范畴,因此不被认为是单片机。08延伸阅读2.集成电路的封装分类集成电路的分类方法大致有以下五种,前三种属一级封装的范畴,涉及裸芯、片及其电极和引线的封装或封接,后二种属二级封装的范畴,对PCB板的设计有影响。(1)按芯片的装载方式分类裸芯片在装载时,有电极的一面可以朝上也可以朝下,因此,芯片就有正装片和倒装片之分,布线面朝上为正装片,反之为倒装片。08延伸阅读(2)按芯片的基板类型分类基板的作用是搭载和固定裸芯片,同时兼有绝缘、导热、隔离及保护作用。它是芯片内外电路连接的桥梁。从材料上看,基板有有机和无机之分,从结构上看,基板有单层的、双层的、多层的和复合的。08延伸阅读(3)按芯片的封接或封装方式分类裸芯片及其电极和引线的封装或封接方式可以分为两类,即气密性封装和树脂封装,而气密性封装中,根据封装材料的不同又可分为:金属封装、陶瓷封装和玻璃封装三种类型。08延伸阅读(4)按芯片的封装材料分类按芯片的封装材料可分为金属封装、陶瓷封装、金属-陶瓷封装、塑料封装。塑料的可塑性强,成本低廉,工艺简单,适合大批量生产,目前使用的单片机几乎都是塑料封装的。(5)按芯片的外型和结构分类按芯片的外型和结构分大致有:DIP、ZIP、SIP、PGA、SOP、QFP、QFN、SOJ和BGA等,其中前4种属引脚插入型,随后的5种为表面贴装型。08延伸阅读(a)DIP(b)ZIP( c)SIP(d)PGA(e)SOP(f)QFP08延伸阅读(g)QFN(h)SOJ(i) BGA08延伸阅读3.超级计算机(1)特点●具有很强的计算和处理数据的能力●高速度和大容量●多种外部和外围设备●丰富的、高功能的软件系统(2)分类●采用专用处理器●采用兼容处理器08延伸阅读(3)应用领域●可以高效地处理同一类型问题,多用于天体物理学、密码破译等领域,国际象棋高手“深蓝”●可一机多用,使用范围比较灵活,主要应用于互联网/机器学习、科学计算、工程计算和信息服务领域,例如军事、医药、气象、金融、能源、环境和制造业等。08延伸阅读 展开更多...... 收起↑ 资源预览