汽车电脑原理与维修单片机基础教程含和入门基础.ppt_第1页
汽车电脑原理与维修单片机基础教程含和入门基础.ppt_第2页
汽车电脑原理与维修单片机基础教程含和入门基础.ppt_第3页
汽车电脑原理与维修单片机基础教程含和入门基础.ppt_第4页
汽车电脑原理与维修单片机基础教程含和入门基础.ppt_第5页
已阅读5页,还剩106页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

汽车电脑原理与维修 单片机概论 单片机即一块芯片上的计算机 以单片机为核心组成的硬件电路称为单片机系统 嵌入了应用软件的单片机系统则称为单片机应用系统 微处理器 微型计算机与单片机 典型的微型计算机 包括运算器 控制器 存储器 输入输出接口四个基本组成部分 如果把运算器与控制器封装在一小块芯片上 则称该芯片为微处理器 MPU MicroProcessingUnit 或称中央处理器 CPU CentralProcessingUnit 如果在一块芯片上 集成了一台微型计算机的四个基本组成部分 则这种芯片就被称为单片微型计算机 SingleChipMicrocomputer 简称单片机 微型计算机的基本结构 单片机的结构与组成 单片机的内部基本组成 单片机的结构与组成 程序存储器 ROM 用来存放用户程序 可分类为EPROM MaskROM OTPROM和FlashROM等 中央处理器 CPU 是单片机的核心单元 通常由算术逻辑运算部件ALU和控制部件构成 随机存储器 RAM 用来存放程序运行时的工作变量和数据 由于RAM的制作工艺复杂 价格比ROM高得多 所以单片机的内部RAM非常宝贵 通常仅有几十到几百字节 并行输入 输出 I O 端口 通常为独立的双向I O口 任何口既可以用作输入方式 又可以用作输出方式 通过软件编程设定 单片机的结构与组成 串口输入 输出口 用于单片机和串行设备或其他单片机的通信 定时器 计数器 T C 用于单片机内部精确定时或对外部事件 输入信号如脉冲 进行计数 有的单片机内部有多个定时 计数器 系统时钟 通常需要外接石英晶体或其他振荡源提供时钟信号输入 也有的使用内部RC振荡器 系统时钟相当于PC微机中主频 单片机技术的特点纵观20年来单片机发展历程可以看出 单片机技术的发展以微处理器 MPU 技术及超大规模集成电路技术的发展为先导 以广泛的应用领域拉动 表现出较微处理器更具个性的发展趋势 1 单片机应用周期长与微处理器相比 其应用周期更长 随着半导体技术的飞速发展 MPU更新换代的速度越来越快 以386 486 586为代表的MPU 很短的时间内就被淘汰出局 而传统的单片机如68HC05 8051等年龄已有15岁 产量仍是上升的 2 应用领域广据统计我国的单片机年容量已达13亿片且每年以大约16 的速度增长 但相对于世界市场我国的占有率还不到1 这说明单片机应用在我国才刚刚起步有着广阔的前景培意义合也毫不逊色 3 体积小4 内部存储量较小 I 0功能控制性强 但具有局限性 5 借助专门的开发系统进行开发 6 功耗低 7 价格低 以2002年的市场价为例 89C51的单价为人民币7元 单片机的类型国际上比较流行的单片机有以下几种 Intel系列 Motorola系列 NEC系列 Philip系列 NS系列 美国国家半导体公司生产 Zilog系列 美国Zilog公司生产 ATMEL系列 美国ATMEL公司生产 MSP430系列 TI ARM系列 典型单片机生产厂家及性能概览 美国IntelMotorolaZilogNSMicrochipAtmelTI日本NECToshibaFujitsuHitachi 荷兰Philips英国Inmos德国Siemens Infineon 中国台湾Acer宏基Winbond华邦Holtek合泰凌阳 典型单片机有MCS 51 MSP430 EM78 PIC Motorola AVR等 MCS 51为主流产品 性能如表1 1 1 MSP430为低功耗产品 功能较强 性能如表1 1 2 EM78为低功耗产品 价格较低 性能如表1 1 3 PIC为低电压 低功耗 大电流LCD驱动 低价格产品 性能如表1 1 4 Motorola是世界上最大的单片机生产厂家之一 品种全 选择余地大 新产品多 其特点是噪声低 抗干扰能力强 比较适合于工控领域及恶劣的环境 性能如表1 1 5 AVR为高速 低功耗产品 支持ISP IAP I O口驱动能力较强 性能如表1 1 6 1 1典型单片机性能概览 Intel单片机 TI公司MSP430单片机 美国德州仪器1996年推出MSP430 这款单片机以它的高性能逐渐被广大单片机设计者接受 MSP430目前的型号已达到100多种 使用的技术包括超低功耗 FLASH在线编程 数控振荡器 DCO FFL倍频 硬件乘法器 JTAG调试等微控制器领域的先进技术产品种类齐全 既有能够通用类型的单片机 也有具有一定专用性能的单片机 如MSP430FE42x MSP430FW42x 可以适合不同的产品开发需要MSP430单片机的设计充分考虑了设计者对功能模块的需求 功能模块比较适合设计的需要 很多设计可以达到一片设计 比如MSP430FE427一片即可设计多功能电表MSP430已经被广泛用于家用仪表 水表 气表 热表 电表等 家用电器 热工仪表 医疗仪器 安保产品 无线通讯等许多产品中 TI公司MSP430单片机 极低功耗 支持电池工作数据保持模式0 1uA 2 2V 能够响应来自外部的中断信号时钟运行模式0 8uA 2 2V 内部定时器继续工作活动模式200 A 1MHz 2 2V 正常处理 复杂运算等MSP430是工业级16bitRISCMCU 40 85 C 工作在各种复杂工作环境成为可能运行速度快指令周期125ns 8MHz晶振6 s从备用模式唤醒 唤醒过程的功耗极低FLASH支持在线编程支持FLASH保存数据支持程序在线升级 程序修改方便内部资源丰富 功能模块强一片解决方案 许多产品中一片MSP430完成 单片机技术的应用遍布国民经济与人民生活的各个领域 ICE 200 UP NetARM2410 S 目前常用的嵌入式开发平台 一 AVR系列单片MCU为核心构成的单片嵌入式系统 数字电路与计算机二进制 掌握二进制 十六进制 十进制之间的换算关系 13F4H 1 4096 3 256 15 16 40110B 0 8 1 4 1 2 0 113F4H 0001001111110100B0101011010101110B 56AEH 二进制B Binary 十进制D Decimal 十六进制H Hexadecimal BCD码 BinaryCodedDecimal 二进制代码表示的十进制数 参右图 例 求十进制数876的BCD码876BCD 100001110110 压缩的BCD码 用4位二进制数表示一个十进制数位 整个十进制数用一串BCD码来表示 例如 十进制数59表示成压缩的BCD码为01011001十进制数1946表示成压缩的BCD码为0001100101000110 非压缩的BCD码 用8位二进制数表示一个十进制数位 其中低4位是BCD码 高4位是0 例如 十进制数78表示成压缩的BCD码为0000011100001000 美国标准信息交换码ASCII AmericanStandardCodeforInformationInterchange 用于计算机与计算机 计算机与外设之间传递信息 记忆 0 930H 39H A Z41H 5AH a z61H 7AH 位 字节 字位 bit 1位二进制代码字节 byte 8位二进制代码字 word 16位 两个字节半字节即4位二进制数 编程器编程器 又称烧写器 下載器 通过它将调试好的程序烧写到程序存贮器中 单片机内程序存贮器或片外的EPROM EEPROM或FLASH 不同档次的编程器价格相差很大 从几百元 几千多元不等 档次的差别在于烧写的可编程芯片的类型多少 使用界面是否方便及是否还有其他功能等 目前市面编程器型号很多 根据应用对象及单位经济实力进行选择 通常专用编程器应具备以下功能 对多种型号单片机 MCU E E PROM FLASH ROM PLD FPGA等进行读取 擦除 烧写 加密等操作 高档的编程器可独立于电脑运作 编程的方法可以脱机编程或在系统编程 计算机的基本结构 计算机主要模块 CPU 存储器 接口连接三者用 总线 数据总线DB 地址总线AB 控制总线CB接口连接外部设备 显示器 键盘 鼠标 打印机 以及硬盘 光盘 软盘 U盘 还有互联网等等 单片机浓缩了计算机基本模块 两种计算机对比 计算机的内存 内存分为只读存储器ROM和随机存储器RAM两类 ROM存放启动 开机程序以及一些系统子程序 PC机的BIOS就是存放在ROM中 用户编写的单片机程序也是存放在ROM中 RAM存放变量 数据 PC机还要存放从硬盘等处读入的可执行程序 ROM中的程序用于开机时 计算机能引导进入运行状态 这些程序在掉电后应保证不会消失 单片机 麻雀虽小 五脏俱全 单片机设计为 专用于控制目的计算机 用于专门目的 为了降低成本 没有必要将不用的功能包含进来 单片机通常只有8位 16位字长 运算速度不是很快 但用于专门的控制足够了 因数据量不大 单片机内存也没有必要做得太大 单片机应用系统功能单一 可见于我们生活中的时时处处 手机 微波炉 洗衣机 电视机 遥控器 电子词典 高档玩具 计算机的数据交换接口 尽管计算机外部设备多种多样 根本上来说就是数据的传输 外部设备把指令 数据送到计算机内让计算机进行处理计算机把处理情况和处理结果 以及需要保存的数据送到外部设备 显示 打印 保存 交换 计算机接口就是完成以上数据传输任务的基本电路模块 计算机基本接口 并行接口 多条线 8线 同时传输数据 一次传输一字节 串行接口 单线传输 一次传输一位 分时传送 定时器 产生设定的时间间隔信号 用于安排计算机的多种任务执行时间 中断控制器 用于使CPU能及时响应多种外部设备申请的服务 通讯接口举例 并行接口 LPT打印机 内部FDD软驱 IDE光驱 硬盘 串行接口 COM1 COM2串行接口 USB通用串行接口 键盘 鼠标接口 红外线接口 网络接口 串行接口还有更广泛的应用 手机 数字电视 卫星通讯 MCS 51单片机的组成 CPU 进行运算 控制 RAM 数据存储器 ROM 程序存储器 I O口 串口 并口 内部总线和中断系统等 组成 运算器 控制器 1 8位CPU 2 布尔代数处理器 具有位寻址能力 3 128B内部RAM数据存储器 21个专用寄存器 4 4KB内部掩膜ROM程序存储器 5 2个16位可编程定时器 计数器 6 32个 4 8位 双向可独立寻址的I O口 1 中央处理器 CPU 1 中央处理器 CPU 7 1个全双工UART 异步串行通信口 8 5个中断源 两级中断优先级的中断控制器 9 时钟电路 外接晶振和电容可产生1 2MHz 12MHz的时钟频率 10 外部程序 数据存储器寻址空间均为64KB 11 111条指令 大部分为单字节指令 12 单一 5V电源供电 双列直插40引脚DIP封装 1 运算器组成 8位算术逻辑运算单元ALU ArithmeticLogicUnit 8位累加器A Accumulator 8位寄存器B 程序状态字寄存器PSW ProgramStatusWord 8位暂存寄存器TMP1和TMP2等 功能 完成算术运算和逻辑运算 1 中央处理器 CPU 1 中央处理器 CPU 2 控制器组成 程序计数器PC ProgramCounter 指令寄存器IR InstructionRegister 指令译码器ID InstructionDecoder 堆栈指针SP 数据指针DPTR 定时控制逻辑和振荡器OSC等电路 功能 CPU根据PC中的地址将欲执行指令的指令码从存储器中取出 存放在IR中 ID对IR中的指令码进行译码 定时控制逻辑在OSC配合下对ID译码后的信号进行分时 以产生执行本条指令所需的全部信号 2 存储器 MCS 51的存储器可分为程序存储器和数据存储器 又有片内和片外之分 1 程序存储器一般将只读存储器 ROM 用做程序存储器 可寻址空间为64KB 用于存放用户程序 数据和表格等信息 2 数据存储器 一般将随机存储器 RAM 用做数据存储器 可寻址空间为64KB MCS 51数据存储器可分为片内和片外两部分 片外RAM 最大范围 0000H FFFFH 64KB 用指令MOVX访问 片内RAM 最大范围 00H FFH 256B 用指令MOV访问 又分为两部分 低128B 00 7FH 为真正的RAM区 高128B 80 FFH 为特殊功能寄存器 SFR 区 2 存储器 单片机的时序 时序 CPU在执行指令时所需控制信号的时间顺序称为时序 时序是用定时单位来描述的 MCS 51的时序单位有四个 分别是时钟周期 节拍 状态 机器周期和指令周期 MCS 51的时序单位 1 时钟周期 又称为振荡周期 节拍 用P表示 定义为单片机提供时钟信号的振荡源 OSC 的周期 它是时序中的最小单位 2 状态 用S表示 单片机振荡脉冲经过二分频后即得到整个单片机工作系统的状态 一个状态有两个节拍 前半周期对应的节拍定义为P1 后半周期对应的节拍定义为P2 3 机器周期 通常将完成一个基本操作所需的时间称为机器周期 MCS 51中规定一个机器周期包含12个时钟周期 即有6个状态 分别表示为S1 S6 若晶振为6MHz 则机器周期为2 s 若晶振为12MHz 则机器周期为1 s 4 指令周期 执行一条指令所需要的时间称为指令周期 它是时序中的最大单位 一个指令周期通常含有1 4个机器周期 指令所包含的机器周期数决定了指令的运算速度 机器周期数越少的指令 其执行速度越快 以机器周期为单位 指令可分为单周期 双周期和四周期指令 a b c a 双列直插封装 DIP DualIn linePackage b 塑料双列直插封装 PDIP PlasticDualIn linePackage c 超小型双列直插封装 SDIP ShrinkDualIn linePackage 微控制器常用封装 d e f d 塑料有引线芯片载体 PLCC PlasticLeadedChipCarrier e 四边引出扁平封装 QFP QuadFlatPackage f 薄形四边引出扁平封装 LQFP LowQuadFlatPackage g h i g 薄小外形封装 TSOP ThinSmallOutlinePackage h 小外形集成电路封装 SOIC SmallOutlineIntegratedCircuitPackage i 底触点无引脚扁平封装 HVQFN heatsinkverythinquadflatpacknoleads 7 微控制器常用封装 MSP430专题 超低电压范围 1 8V 3 6V超低功耗 待机模式1 6uA 关闭模式0 1uA16位RISC结构48个I O引脚FLASH闪存技术 空调机控制系统框图 CPU单元 温度采集单元 压缩机风机 键盘 显示 MSP430开发流程 编写源代码 修改程序 硬件准备 结束 仿真调试 满意 修改硬件 软件不满意 硬件不满意 满意 MSP430开发调试过程 1 建立工程项目2 编写源代码3 将源代码添加到项目文件4 选择器件5 选择仿真方式6 编译下载代码到芯片7 仿真调试 演示 MSP430C语言 表达式语句 结构 条件语句开关语句循环语句返回语句 条件语句 语句表达形式有3种 a b c aif 条件表达式 语句bif 条件表达式 语句1else语句2cif 条件表达式 语句1elseif 条件表达式 语句2elseif 条件表达式 语句3 开关语句 switch 表达式 case常量表达式1 语句1break case常量表达式2 语句2break case常量表达式3 语句3break default 语句d 循环语句 while 条件表达式 语句 当条件满足时 就反复执行后面的语句 一直执行到条件不满足时 以软件延时程序为例说明该语句是如何执行的 voiddelay longv while v 0 v do语句while 条件表达式 先执行一次循环体的语句 再判断条件是否满足 以决定是否再执行循环体 下面的程序将数组BUFF 20 中的全部数据相加 Intx 0 CharI 0 Do x BUFF I x I I 1 while I 20 for 初值设定表达式 循环条件表达式 条件更新表达式 语句for语句常用于需固定循环次数的循环 下面的程序段同样实现将数组BUFF 20 中的全部数据相加的功能 Intx 0 CharI 0 for I 0 I 20 I x BUFF I x 函数的定义与调用 函数类型函数名 形式参数表 形式参数说明 局部变量定义函数体语句 存储变量类型 interrupt 中断矢量变量 函数类型函数名 形式参数表 形式参数说明 局部变量定义函数体语句 经常使用的延时函数 voiddelay longv while v 0 v delay 100 究竟延时多久呢 就是这句话执行需要的时间 时间等于 机器周期 需要的机器周期数 在仿真环境中可以测试出来 MSP430单片机的输入输出 P1P2P3P4P5P6 引脚控制寄存器 PnDIR方向寄存器1为输出 0为输入PnOUT输出寄存器1输出高 0为低PnIN输入寄存器读出口线的状态PnSEL第二功能寄存器n 1 2 3 4 5 6 引脚使用举例 控制连接在P2 1口线的发光二极管的亮与熄 P2DIR 0Xff P2OUT 0XFF for P2OUT 0Xfd 如何让发光二级管闪烁 1 亮2 延时1秒钟3 熄灭4 延时1秒钟5 跳转到步骤1 while 1 P2OUT 0Xfd delay P2OUT 0XFF delay voiddelay unsignedinti j for i 0 i 1000

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论