单片机与C语言课件.ppt_第1页
单片机与C语言课件.ppt_第2页
单片机与C语言课件.ppt_第3页
单片机与C语言课件.ppt_第4页
单片机与C语言课件.ppt_第5页
已阅读5页,还剩39页未读 继续免费阅读

下载本文档

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

文档简介

1 物联网工程导论 单片机与C语言 知识点结构 3 什么是单片机 单板机将CPU芯片 存储器芯片 I O接口芯片和简单的I O设备 小键盘 LED显示器 等装配在一块印刷电路板上 再配上监控程序 固化在ROM中 就构成了一台单板微型计算机 简称单板机 单板机 单片机在一片集成电路芯片上集成微处理器 存储器 I O接口电路 从而构成了单芯片微型计算机 即单片机 Intel公司推出了MCS 51系列单片机 集成8位CPU 4K字节ROM 128字节RAM 4个8位并口 1个全双工串行口 2个16位定时 计数器 寻址范围64K 并有控制功能较强的布尔处理器 单板机 单片机 单片机能做什么 手持粮库温度寻检设备毕设答辩打分器电话台灯自动感应水龙头凡是与控制或简单计算有关的电子设备都可以用单片机来实现 再根据具体实际情况选择不同性能的单片机 如 atmel stc pic avr 凌阳 80C51 arm等 工业自动化 数据采集 测控技术 智能仪器仪表 数字示波器 数字信号源 数字万用表 感应电流表等 消费类电子产品 洗衣机 电冰箱 空调机 电视机 微波炉 手机 IC卡 汽车电子设备等 通讯方面 调制解调器 程控交换技术 手机 小灵通等 武器装备 飞机 军舰 坦克 导弹 航天飞机 鱼雷制导 智能武器等 等等 常见单片机的种类 根据总线的宽度 单片机一般可分为4位 8位 16位和32位单片机 4位单片机多用于冰箱 洗衣机 微波炉等家电控制中 8位 16位单片机主要用于一般的控制领域 一般不使用操作系统 32位单片机主要用于网络操作 多媒体处理等复杂处理的场合 一般要使用嵌入式操作系统 8位和16位单片机的用途非常广泛 遍及日常生活的各个角落 从儿童玩具到电饭煲 电视机等家用电器都有其身影 目前高校的教学也以8位和16位单片机为主 本文主要介绍常用的8位单片机 常用的8位和16位单片机主要有以下一些系列 常见单片机的种类 1 MCS 51系列及与之兼容的80C51系列单片机MCS 51系列及与之兼容的80C51系列单片机种类最多 发展也最快 主要有ATMEL的AT89系列 NXP 原PHLIPIS公司 的51PLC系列单片机 美国SiliconLabs公司的C8051F系列单片机 国内宏晶公司的STC系列单片机 1 ATMEL公司的8位单片机有AT89 AT90两个系列 AT89系列是8位Flash单片机 与8051系列单片机相兼容 AT89S5X系列单片机支持ISP编程 成本低 资料多 适合初学者学习 常见单片机的种类 2 AT90系列单片机是增强RISC结构 全静态工作方式 内载在线可编程Flash的单片机 也叫AVR单片机 AVR单片机是采用RISC精简指令集的高速8位单片机 高速 低功耗 保密 具有A D转换 E2PROM PWM RTC SPI UART TWI ISP AD AnalogComparator WDT等电路和功能 已被广泛应用 AVR的市场占有一直在扩展 年用量也一直在上涨 但指令集和51不同 入门稍难 常见单片机的种类 3 NXP 原PHLIPIS 51PLC系列单片机 51单片机 原PHILIPS公司的单片机是基于80C51内核的单片机 嵌入了掉电检测 片内RC振荡器等功能 部分型号的还具有AD DA等功能 这使得51LPC在高集成度 低成本 低功耗的应用设计中可以满足多方面的性能要求 常见单片机的种类 4 C8051F系列单片机是由美国SiliconLabs公司推出的全兼容8051指令集 其峰值执行速度可达100MIPS C8051F120等 部分型号片内ADC的采样精度最高可达24bit 采样速率最高可达500ksps 还集成了单个或两个独立的高分辨率DAC 可满足绝大多数混合信号系统的应用并实现与模拟电子系统的无缝接口 此外还根据不同的需要集成了SMBus SPI USB CAN LIN等接口 以及RTC部件 成为SOC的典型代表 具有广泛的市场前景 5 国内宏晶公司销售的STC系列单片机兼容51内核 价格便宜 支持串口ISP 具有A D D A功能 也适合初学者学习 常见单片机的种类 2 与51不兼容的单片机 1 Microchip 微芯公司 的PIC系列单片机MicroChip单片机的主要产品是PIC16C系列和17C系列8位单片机 CPU采用RISC结构 分别仅有33 35 58条指令 采用Harvard双总线结构 运行速度快 低工作电压 低功耗 较大的输入输出直接驱动能力 价格低 一次性编程 体积小 在办公自动化设备 消费电子产品 通信 智能仪器仪表 汽车电子 金融电子 工业控制等领域都有广泛的应用 PIC系列单片机在世界单片机市场份额排名中逐年提高 发展非常迅速 常见单片机的种类 2 TI公司的超低功耗Flash型MSP430系列单片机MSP430系列单片机是美国德州仪器 TI 1996年开始推向市场的一种16位超低功耗的混合信号处理器 MixedSignalProcessor 称之为混合信号处理器 主要是由于其针对实际应用需求 把许多模拟电路 数字电路和微处理器集成在一个芯片上 以提供 单片 解决方案 具有高速 低功耗 信号处理能力强大等特点 也是一种SOC单片机 3 ADI公司的带A D与D A转换器的单片机 片内A D D A转换精度高 但价格昂贵 常见单片机的种类 4 台湾凌阳生产 国内北阳电子通过大学计划主推的16位SPEC061A单片机 具有增强的语音信号AGC 滤波 AD DA功能 并开发了语音识别实例 有专门的网站 宣传推广做得好 在一些学校有专门的共建实验室 5 FreescaleSemiconductor 飞思卡尔半导体 单片机 飞思卡尔是全球20大半导体公司之一 中国大学生智能汽车电子竞赛的赞助商 在汽车半导体产品 通信处理器 整个微控制器 数字信号处理器等市场居世界前列 常见单片机的种类 6 还有其它很多公司像SanSung 东芝等等在单片机市场都有一定份额 主要用于一些家用电器的微处理器 但国内高校的学生接触不多 作为学生学习入门还是建议采用51系列单片机 本书将介绍ATMEL公司的8位单片机AT89S52 进行产品开发和电子竞赛 可以选51系列 也可以根据自己的项目要求选取成本低 效果好的单片机 一些含A D D A的单片机可能比单一的A D D A芯片都要便宜很多 单片机今后的处理速度会越来越快 功耗越来越低 位数上随着对语音 图像等信号处理的要求 会逐步向32位的方向发展 当然8位单片机在一些控制领域仍具有巨大的市场 郭天祥 出生年月 1983年10月2004年5月首次与电子元件见面 6月开始学习单片机 9月参加黑龙江省大学生电子设计大赛获一等奖 04年主要学会了单片机的汇编语言编程和非常简单的常用电路设计 05年开始学单片机C语言编程 5月获学校五四杯电子设计竞赛二等奖 6月参加 枭龙杯 全国空中机器人比赛于11月在成都举行 获全国亚军 9月参加 索尼杯 全国大学生电子设计竞赛未获奖 05年期间学会了C语言 C 语言 VC 编程 VHDL语言 FPGA CPLD 可编程逻辑器件 06年5月获校五四杯电子设计大赛一等奖 同年被免试保送信通学院读硕士研究生 06年开始和同学一起对外承接工程项目 同时学习DSP 数字信号处理器 8月建立了个人网站 天祥电子 主要是产品宣传与销售 07年5月获校五四杯电子设计大赛一等奖 黑龙江省挑战杯电子设计竞赛一等奖 07年主要对外承接工程项目 同年学习ARM7 嵌入式系统设计 学单片机需要什么基础 与以前所学的知识关联很少 只需要掌握很基本的数电模电知识 如二进制 十进制 十六进制之间的转换 与 或 非逻辑关系等 对各种器件的概念基本上是从0开始 如果要用C语言编程 需具备简单的C语言基础 所有人都站在了同一起跑线上 怎么开始学习 实践第一 补充必要的理论知识 即缺什么补什么 做工程项目积累经验 可在网络上搜集题目 也可自己有什么想法大胆的去试验 推荐几个好网站 阿莫电子论坛 电子发烧友等 80C51系列介绍 Intel的 80C31 80C51 87C51 80C32 80C52 87C52等 ATMEL的 89C51 89C52 89C2051等 Philips 华邦 Dallas STCSiemens Infineon 等公司的许多产品 80C51是MCS 51系列中的一个典型品种 其它厂商以8051为基核开发出的CMOS工艺单片机产品统称为80C51系列 当前常用的80C51系列单片机主要产品有 80C51的引脚封装 总线型 非总线型 2019 12 20 23 可编辑 总线 BUS 是计算机各部件之间传送信息的公共通道 微机中有内部总线和外部总线两类 内部总线是CPU内部之间的连线 外部总线是指CPU与其它部件之间的连线 外部总线有三种 数据总线DB DataBus 地址总线AB AddressBus 和控制总线CBControlBus CPU 由运算和控制逻辑组成 同时还包括中断系统和部分外部特殊功能寄存器 RAM 用以存放可以读写的数据 如运算的中间结果 最终结果以及欲显示的数据 ROM 用以存放程序 一些原始数据和表格 I O口 四个8位并行I O口 既可用作输入 也可用作输出 T C 两个定时 记数器 既可以工作在定时模式 也可以工作在记数模式 五个中断源的中断控制系统 一个全双工UART 通用异步接收发送器 的串行I O口 用于实现单片机之间或单片机与微机之间的串行通信 片内振荡器和时钟产生电路 石英晶体和微调电容需要外接 最高振荡频率取决于单片机型号及性能 C51知识 C语言是一种编译型程序设计语言 它兼顾了多种高级语言的特点 并具备汇编语言的功能 目前 使用C语言进行程序设计已经成为软件开发的一个主流 用C语言开发系统可以大大缩短开发周期 明显增强程序的可读性 便于改进 扩充和移植 而针对8051的C语言日趋成熟 成为了专业化的实用高级语言 C语言作为一种非常方便的语言而得到广泛的支持 很多硬件开发都用C语言编程 如 各种单片机 DSP ARM等 C语言程序本身不依赖于机器硬件系统 基本上不作修改就可将程序从不同的单片机中移植过来 C提供了很多数学函数并支持浮点运算 开发效率高 故可缩短开发时间 增加程序可读性和可维护性 C 51的特点 C 51与ASM 51相比 有如下优点 1 对单片机的指令系统不要求了解 仅要求对8051的存贮器结构有初步了解 2 寄存器分配 不同存贮器的寻址及数据类型等细节可由编译器管理 3 程序有规范的结构 可分成不同的函数 这种方式可使程序结构化 4 提供的库包含许多标准子程序 具有较强的数据处理能力 5 由于具有方便的模块化编程技术 使已编好程序可容易地移植 C 51的数据类型 基本数据类型 类型 符号 关键字 数的表示范围 所占位数 整型 字符型 实型 有 无 signed int 16 32768 32767 signed short 16 32768 32767 signed long 32 2147483648 2147483647 16 unsignedint 0 65535 32 0 4294967295 unsignedlongint unsignedshortint 16 0 65535 有 float 32 3 4e 38 3 4e38 有 double 64 1 7e 308 1 7e308 有 char 8 128 127 无 unsignedchar 8 0 255 C语言中的基本数据类型 类型 符号 关键字 数的表示范围 所占位数 整型 字符型 实型 有 无 signed int 16 32768 32767 signed short 16 32768 32767 signed long 32 2147483648 2147483647 16 unsignedint 0 65535 32 0 4294967295 unsignedlongint unsignedshortint 16 0 65535 有 float 32 3 4e 38 3 4e38 有 double 64 1 7e 308 1 7e308 有 char 8 128 127 无 unsignedchar 8 0 255 C 51的数据类型扩充定义 sfr 特殊功能寄存器声明sfr16 sfr的16位数据声明sbit 特殊功能位声明bit 位变量声明例 sfrSCON 0X98 sfr16T2 0 xCC sbitOV PSW 2 例 数据类型变量名charvar1 bitflags unsignedcharvextor 10 intwwww 注意 变量名不能用C语言中的关键字表示 C 51数据的存储类型 C 51的包含的头文件 通常有 reg51 hreg52 hmath hctype hstdio hstdlib habsacc h常用有 reg51 hreg52 h 定义特殊功能寄存器和位寄存器 math h

温馨提示

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

评论

0/150

提交评论