飞思卡尔单片机结构
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Flash的突发模式编程
通常,执行编程或擦除命令时,FLASH阵列相关的电荷泵 打开,以对阵列提供高电压。完成该命令之后,电荷泵关 闭。突发编程命令用来对连续的字节进行编程,与使用标 准编程命令比较,它需要更少的时间。因为突发编程命令 不需要关闭两次编程操作之间加在FLASH阵列上的高电 压。在完成突发编程操作之后,如果同时满足以下两个条 件时电荷泵不会关闭: 在本次编程操作完成之前,下次编程命令已经排队等候。 下次编程字节与本次编程字节在同一行。 FLASH存储器中的一行由64个字节组成,每一行字节的 低6位从000000—111111依次递增。在突发模式中编程一 系列连续字节中的第一个字节所花的时间与正常模式编程 一个字节的时间相同,后续字节将以突发模式编程。若下 一个连续地址在另一行,则字节按标准模式编程。
复位方式 外部复位电路(如前) 内部复位源触发: 低电压监测(LVD);COP看门狗;非法操 作码监测(ILOP);非法的地址检测(ILAD); 在BDM调试中触发背景调试强制复位源复位。
下载调试电路BDM
片内嵌入式背景调试控制器(BDC)和调 试模块(DBG)组成,单线连接; RS232(USB)MCU BDM插槽
1、CPU
2、总线(BUS):信息传送的公共通道
地址总线(AB):单向,用来传送CPU输出的地 址信号,确定被访问的存储单元、I/O端口。(8位 字长的MPU一般 AB为16条) 数据总线(DB):双向,传送数据信息和指令码。 (一般与MPU字长相同,8位MPU一般DB为8条)
控制总线(CB):双向,传送各种控制信号,如
MC/XC/PC/KMC/KXC 9-FLASH/0-ROM 60-模拟存储 X-温度 XX-封装,E-无铅
性能比较
闪存1/2/4/8/16/32/…256K; RAM 63/128/256/512/……8KB 定时器 1/2/3/4个; I/O 4/6/14/30/……70 通信口SCI/SPI/I2C/LCD/CAN/USB 工作电压:1.8~3.6/2.7~5.5V……
微型计算机的组成 软件:OS/AS/……. 硬件:CPU/MB/LCD/KB/……. 微型计算机的发展 微型计算机的工作原理
硬件DIY(机箱)
计算机内部基本组成
地址总线 AB
CPU
运算器
存 储 器
I/O 接 口
输 入 设 备
I/O 接 口
输 出 设 备
控制器
数据总线 DB
控制总线 CB
总线——连接多个功能部件的一组公共信号线
二、数制及数制间的转换
(一)计算机中的数制
1、十进制 (Decimal) 0~9 10D 2、二进制(Binary) 0、1 %1010 3、十六进制(Hexadecimal) 0~9、A、B、C、D、E、F
$0A
(二)数制间的转换
单片机基础
概念 MCU(micro-controller) SCU (single chip unit) Soc ( System on chip) 位数:481632 主要名词
读/写信号、中断请求、中断响应等
3、存储器和I/O接口
(1)存储器
内存直接与三总线相连,其内容可直接被CPU访问,
容量小,速度快
外存通过I/O接口与三总线相连,其内容一般先
传入内存,然后被CPU访问,容量大,速度慢
常用数制和编码
1.位和字节
位(bit):指的是取值只能为0或1的一个二 进制数值位。记作b 字节(byte):由8位二进制位组成,通常用 作计算存储容量的单位。记作B K(kelo),1K=1024=210 M(mega),1M=1024K=220 G(giga),1G=1024M=230 T(tera),1T=1024G=240
寄存器地址和位分配
寄存器
RAM:容量小,一般256B,存中间结果、 临时数据,有动态和静态之分; Flash:长期保持数据,擦写>1万次,程序 存储,容量大(8K/16K/…….),在线编程, 块保护,保密性,自动断电; Flash中&FFC0-FFFF为复位和中断时的入口 地址,在中断响应时,自动将中断地址装 入程序计数器,使程序转向该单元地址。
复位和中断入口地址
非易失寄存器
非易失寄存器包括8字节的后门钥匙,能够 选择性的用来获得对加密存储资源的访问。
编程和擦除时间
对FLASH进行编程和擦除之前,必须设置Flash时钟分频寄存器FCDIV, 使得总线时钟被分频后得到的Flash时钟fFCLK为150 kHz到200 kHz之间。 由于FCDIV只能写一次,因此一般在初始化期间进行,而且如果状态寄 存器FSTAT 中的出错标志FACCERR被置位时,将无法设置FCDIV。下 图是设置fFCLK为200kHz时,编程与擦除所需时间。
Flash块保护
块保护功能可以防止被保护的FLASH区域被意外擦除或更改。保护的区域设置由寄存 器FPROT决定,而FPROT不能被用户程序修改,该高页面寄存器的数值是复位后自 动从FLASH寄存器NVPROT中拷贝过来的。块保护的区域是最高地址0xFFFF往低地 址512字节的整数倍。由于NVPROT位于地址最高的,可保护的第一个512字节块里, 只要启动块保护,寄存器NVPROT自己也被保护起来,不能被用户程序访问。由于寄 存器FPROT的内容可被BDC修改,因此BDC可以先将FPROT设置成无保护状态,然 后就可以擦除、重编程被保护的FLASH块了。 编程中为了允许块保护,需要配置NVPROT寄存器,将其高7位(FPS7-FPS1)设 为最后一个未被保护的字节地址的高7位。例如,为了保护存储器中最后的1536(3*512) 个字节(地址从0xFA00到0xFFFF),则最后一个未被保护的地址是0xF9FF。所以寄存器 NVPROT的高7位需设置为1111 100,同时,NVPROT中的0位(FPDIS)必须写为0, 以确保块保护。因此NVPROT必须写入0xF8以保护最后的3块FLASH页。 块保护功能的一个应用,就是保护监控程序不被破坏
BKGD
GND NC REST NC VDD
BDM
寄存器与片内存储器
存储器: ROM、RAM、FLASH 哈佛结构(分开) 普林斯顿结构(共用) MC9S08QG8存储器配置 数据存储器RAM,flash,寄存器 (直接页面寄存器00-5F) ( 高页面寄存器1800-184F) (非易失寄存器FFB0-FFBF)
飞思卡尔单片机结构
飞思卡尔8位单片机MC9S08
MC9S08QG8的基本组成
MC9S08QG8引脚及功能
PTA[0:5] PTA5输入;PTA4输出;PTB[0:7] 通用I/O
Pin介绍
电源:VCC/VSS,1.8~5.5V 复位 PAT5/IRQ/TCLK/REST共用,低电平有效, STOP1(RSTPE=1) 背景/状态选择 PAT4、ACMP0/BKGD/MS STOP1(BKGDPE=1), 背景调试通信 通用I/O和外围接口 12个(PTA0~3;PTB0~7;PTA4(出);PTA5(入)) 多功能复用(定时器,SCI,ADC,KEY) *驱动与上拉输出
Flash编程中的错误 (错误标志FACCERR )
• 未设置FCDIV,得到合理的内部FLASH时钟之前,对FLASH某地址写数。 •FCBEF(命令缓冲空)标志位未设置的情形下,对FLASH写数。 •提交命令之前多次对FLASH某地址写数据。 •提交命令之前多次写FCMD寄存器。 •对FLASH某地址写数据后,不是接着写FCMD,而是其他控制寄存器。 •对FCMD写入的不是5个命令(0x05, 0x20, 0x25, 0x40, or 0x41)之一。 •写完FCMD之后不是去写FSTAT以清除FCBEF并提交命令,而是操作其他 FLASH 控制寄存器。 •正对FLASH编程或擦除时,MCU突然进入stop模式时。 •当MCU设置了安全保护,BDC对FLASH只能执行空检查和整体擦除命令,如 果此 时BDC试图执行字节编程、突发编程、页擦除命令(0x20、0x25、0x40)时会 出错。 • 对FCBEF写0以取消当前设置命令的执行时,会设置出错标志。
引脚复用时各引脚的优先级
MC9S08QG8单片机最小系统
电源电路 时钟电路 调试头 复位电路
系统详解
wenku.baidu.com
电源: 宽电源设计,内部自动稳压。1.8~3.6V 时钟电路: ICS内部时钟源,16MHz XOSC外部时钟,可达20MHz 计算机正确运行COP看门狗时钟
复位电路设计
复位功能
当前程序停止;大部分寄存器复位初始值; 屏蔽片内I/O模块,I/O变为通用高阻输入; 屏蔽可屏蔽中断CCR(I=1); 堆栈指针SP强制为$00FF;
主要内容
基于微处理器的应用(医学) 微型计算机组成、发展及工作原理 单片机系统及结构 引脚配置及功能 外围硬件组成 常用电路设计 存储器配置 最小单片机系统
数据采集系统结构
模拟信号与数字信号的连接
生物医学信号采集与系统
core
血压计
心电图与便携式心电机
脉搏血氧监测仪
MCU
微型计算机的组成、发展
微机原理课程
主要内容 讲述单片机的结构,系统,程序设计和应用。 课程安排 1-4周理论教学,5-8周金工实习, 9-20周理论教学,实验教学(待定) 考试 80%理论+20%实验 教材与参考文献 MCS-51教材,李朝青(?) 飞思卡尔8位单片机适用教程,李刚,2009 单片机原理及系统设计,胡汉才,2002 应用文献与网站
基于PSOC单片机(CYPRESS)
MSP430单片机内部结构
增强型51-C8051F120(Cygnal)
飞思卡尔单片机
概述(结构和基本组成) 飞思卡尔单片机最小系统 存储器地址、配置和功能 CPU寄存器和系统初始化 端口寄存器
FreeScale 8位机系列
系列识别 MC 9 S08 GB 60 X XX E
参数
需要的FCLK周期数
FCLK=200kHz时所需时间
字节编程
页擦除
9
4000
45 µs
20 µs 20 ms
字节编程(突发) 4
整体擦除
20,000
100 ms
Flash编程和擦除方法
在FCDIV寄存器被初始化,且FSTAT寄存器中的所有错误标志都被清零之后,对FLASH 编程和擦除的操作步骤如下: 对某FLASH单元写入数据值,且此次写的地址和数据信息都被锁存在FLASH接口中, 这种写入操作是执行任何FLASH命令的第一步。对于擦除和空检查命令而言,写入的数 据信息被忽略;对于页擦除命令,地址可以是该512字节页的任何地址;对于整体擦除 和空检查命令,地址可以是FLASH空间的任何地址。对于字节编程命令,必须给相应地 址单元赋实际要写入的值。注意在编程之前必须先擦除,否则会破坏FLASH中的数据。 对命令寄存器FCMD写入有效的5个命令之一:空检查 (0x05)、字节编程(0x20)、突发模 式编程(0x25)、页擦除(0x40)和整体擦除(0x41)。 对状态寄存器FSTAT 中的FCBEF写“1”以清除该位, 标明已有命令等待执行,同时提 交命令。如果在写1之前,向其写0会取消命令的执行。这种取消命令的方式会将出错标 志FACCERR置位,且在执行新命令之前需要人工清除错误标志。 观察命令执行完成标志(FCCF,Flash Command Complete Flag) 是否被设置,以便知道命 令是否完成。下图是非突发模式编程流程。 注意:在FLASH进行编程操作时,FLASH仍是不能读的,也就是说,对FLASH的操作程 序不在FLASH中进行,而是将程序复制到RAM执行。
CPU/ROM/RAM/FLASH/ADC/DAC/UART/TIM ER/SCI/I2C/WDT/SPI/BCD/ASCII/USB……
ISP(In System Programming )
MCS-51 (89C51)
40Pin P0-P3共32个I/O口 2个定时器 1个UART 5级中断 无ISP ……