logo资料库

MC9S12超详细中文资料(本人认为最实用的一本讲S12的).pdf

第1页 / 共117页
第2页 / 共117页
第3页 / 共117页
第4页 / 共117页
第5页 / 共117页
第6页 / 共117页
第7页 / 共117页
第8页 / 共117页
资料共117页,剩余部分请下载后查看
目录
第一章 PWM模块
第一节 PWM模块介绍
第二节 PWM寄存器简介
2.1 PWME寄存器
2.2 PWMPOL寄存器
2.3 PWMCLK寄存器
2.4 PWMPRCLK寄存器
2.5 PWMCAE寄存器
2.6 PWMCTL寄存器
2.7 PWMSCLA寄存器
2.8 PWMCNTx寄存器
2.9 PWMPERx寄存器
2.10 PWMDTYx寄存器
第三节 PWM应用实例
3.1 周期和占空比计算举例
3.2 PWM初始化步骤总结
3.3 PWM应用实例
第二章 ECT模块
第一节 ECT模块介绍
1.1 简述
1.2 特征
1.3 运行模式
1.4 ECT的组成与工作模式
1.4.1 IC通道组
1.4.2 脉冲累加器
1.4.3 模数递减计数器
1.5 ECT的工作过程与设置
1.5.1 自由定时器、模数递减计数器与时钟频率设置
1.5.2 IC通道组
1.5.3 脉冲累加器
第二节 ECT寄存器简介
2.1 IC/OC选择寄存器(TIOS)
2.2 输出比较通道7屏蔽寄存器(OC7M)
2.3 输出比较通道7数据寄存器(OC7D)
2.4 定时器核心寄存器(TCNT)
2.5 计时器系统控制寄存器1(TSCR1)
2.6 计时器溢出绑定寄存器1(TTOV)
2.7 控制寄存器(TCTLl-TCTL4)
2.8 计时器中断使能寄存器(TIE)
2.9 计时器系统控制寄存器2(TSCR2)
2.10 主定时器中断标志寄存器(TFLG1、TFLG2)
2.11 IC/OC寄存器(TC0-TC7)
2.12 脉冲累加器A控制寄存器(PACTL)
2.13 脉冲累加器A标志寄存器(PAFLG)
2.14 脉冲累加寄存器(PACN3、PACN2、PACN1、PACN0)
2.15 模数递减计数器控制寄存器(MCCTL)
2.16 输入脉冲累加器控制寄存器(ICPAR)
2.17 输入覆盖控制寄存器(ICOVW)
2.18 输入系统控制寄存器(ICSYS)
2.19 脉冲累加器B控制寄存器(PBCTL)
2.20 脉冲累加器B标志寄存器(PBFLG)
2.21 脉冲累加器保持寄存器(PA3H-PA0H)
2.22 模数递减计数器工作寄存器(MCCNT)
2.23 IC保持寄存器(TC0H-TC3H)
第三节 ECT应用实例
3.1 定时器编程步骤
3.2 输入捕捉IC:
3.3 通道6输出比较
3.4 通道7输出比较
3.5 模数递减计数器
第三章 SCI模块
第一节 SCI寄存器简介
1.1 波特率控制寄存器(SCIBDH、SCIBDL)
1.2 控制寄存器1(SCICR1)
1.3 控制寄存器2(SCICR2)
1.4 状态寄存器1(SCISR1)
1.5 状态寄存器2(SCISR2)
1.6 数据寄存器(SCIDRH、SCIDRL)
第二节 SCI应用示例
第四章 SPI模块
第一节 SPI模块介绍
1.1 SPI的功能特点
1.2 SPl的组成与工作设置
第二节 SPI寄存器简介
2.1 SPI控制寄存器1(SPICR1)
2.2 SPI控制寄存器2(SPICR2)
2.3 SPI波特率选择寄存器
2.4 SPI状态寄存器
2.5 SPI数据寄存器
第三节 SPI应用实例
第五章 A/D转换模块
第一节 A/D模块介绍
1.1 A/D转换原理
1.2 A/D转换原理的应用前景
1.3 A/D转换模块
1.4 功能结构图
1.5 HCS12A/D特点
第二节 A/D寄存器简介
2.1 控制寄存器2(ATDCTL2)
2.2 控制寄存器3(ATDCTL3)
2.3 控制寄存器4(ATDCTL4)
2.4 控制寄存器5(ATDCTL5)
第三节 A/D应用示例
3.1 编程步骤
3.2 A/D程序示例—单通道查询
3.3 A/D程序示例—滤波
3.4 A/D程序示例—定时采样
第六章 EEPROM模块
第一节 EEPROM模块介绍
1.1 EEPROM功能
1.2 EEPROM结构
1.3 EEPROM特点
第二节 EEPROM寄存器简介
2.1 时钟分频寄存器ECLKDIV
2.2 配置寄存器ECNFG
2.3 保护寄存器EPROT
2.4 状态寄存器ESTAT
2.5 命令寄存器ECMD
第三节 EEPROM应用实例
3.1 EEPROM的写入操作
3.2 EEPROM的擦除操作
3.3 EEPROM示例程序
第七章 FLASH模块
第一节 FLASH模块介绍
1.1 FLASH功能
1.2 FLASH结构
1.3 FLASH特点
第二节 FLASH寄存器简介
2.1 时钟分频寄存器FCLKDIV
2.2 配置寄存器 FCNFG
2.3 安全寄存器 FSEC
2.4 保护寄存器 FPROT
2.5 状态寄存器 FSTAT 状态寄存器
2.6 命令寄存器 FCMD
第三节 FLASH应用实例
3.1 FLASH的写入操作
3.2 FLASH的擦除操作
3.3 FLASH的擦写操作注意事项
3.4 FLASH示例程序
第八章 CodeWarrior IDE 12应用第
目录 目录 .................................................................................................................................................. I 第一章 PWM模块...........................................................................................................................1 第一节 P WM模块介绍 .........................................................................................................1 第二节 P WM寄存器简介 .....................................................................................................2 2.1 PWME寄存器........................................................................................................2 2.2 PWMPOL寄存器...................................................................................................2 2.3 PWMCLK寄存器 ..................................................................................................3 2.4 PWMPRCLK寄存器 .............................................................................................3 2.5 PWMCAE寄存器 ..................................................................................................4 2.6 PWMCTL寄存器...................................................................................................4 2.7 PWMSCLA寄存器................................................................................................5 2.8 PWMCNTx寄存器 ................................................................................................5 2.9 PWMPERx寄存器.................................................................................................6 2.10 PWMDTYx寄存器................................................................................................7 第三节 P WM应用实例 .........................................................................................................8 3.1 周期和占空比计算举例..........................................................................................8 3.2 PWM初始化步骤总结 ............................................................................................9 3.3 PWM应用实例 ........................................................................................................9 第二章 ECT模块...........................................................................................................................12 第一节 E CT模块介绍 .........................................................................................................12 1.1 简述..........................................................................................................................12 1.2 特征..........................................................................................................................12 1.3 运行模式..................................................................................................................12 1.4 ECT的组成与工作模式 ...........................................................................................13 1.5 ECT的工作过程与设置 ...........................................................................................15 第二节 E CT寄存器简介 .....................................................................................................19 2.1 IC/OC选择寄存器(TIOS).................................................................................19 2.2 输出比较通道 7 屏蔽寄存器(OC7M) ................................................................20 2.3 输出比较通道 7 数据寄存器(OC7D).................................................................20 2.4 定时器核心寄存器(TCNT).................................................................................21 2.5 计时器系统控制寄存器 1(TSCR1)...............................................................21 2.6 计时器溢出绑定寄存器 1(TTOV) ................................................................22 2.7 控制寄存器(TCTLl-TCTL4) .........................................................................23 2.8 计时器中断使能寄存器(TIE)........................................................................24 2.9 计时器系统控制寄存器 2(TSCR2) ....................................................................24 2.10 主定时器中断标志寄存器(TFLG1、TFLG2) ...................................................25 2.11 IC/OC寄存器(TC0-TC7)..................................................................................26 2.12 脉冲累加器A控制寄存器(PACTL)....................................................................27 2.13 脉冲累加器A标志寄存器(PAFLG)....................................................................28 2.14 脉冲累加寄存器(PACN3、PACN2、PACN1、PACN0).................................29 I
2.15 模数递减计数器控制寄存器(MCCTL)..............................................................30 2.16 输入脉冲累加器控制寄存器(ICPAR) ...............................................................31 2.17 输入覆盖控制寄存器(ICOVW)..........................................................................31 2.18 输入系统控制寄存器(ICSYS)............................................................................32 2.19 脉冲累加器B控制寄存器(PBCTL) ....................................................................33 2.20 脉冲累加器B标志寄存器(PBFLG) ....................................................................34 2.21 脉冲累加器保持寄存器(PA3H-PA0H).........................................................34 2.22 模数递减计数器工作寄存器(MCCNT) .............................................................35 2.23 IC保持寄存器(TC0H-TC3H).........................................................................35 第三节 E CT应用实例 .........................................................................................................37 3.1 定时器编程步骤....................................................................................................37 3.2 输入捕捉IC:........................................................................................................37 3.3 通道 6 输出比较....................................................................................................38 3.4 通道 7 输出比较....................................................................................................39 3.5 模数递减计数器....................................................................................................40 第三章 SCI模块 ............................................................................................................................42 第一节 S CI寄存器简介 ......................................................................................................42 1.1 波特率控制寄存器(SCIBDH、SCIBDL) ............................................................42 1.2 控制寄存器 1(SCICR1).........................................................................................43 1.3 控制寄存器 2(SCICR2).........................................................................................44 1.4 状态寄存器 1(SCISR1)....................................................................................45 1.5 状态寄存器 2(SCISR2).........................................................................................47 1.6 数据寄存器(SCIDRH、SCIDRL) ........................................................................47 第二节 S CI应用示例 ..........................................................................................................48 第四章 SPI模块.............................................................................................................................53 第一节 SPI模块介绍...........................................................................................................53 1.1 SPI的功能特点......................................................................................................53 1.2 SPl的组成与工作设置 ..........................................................................................54 第二节 SPI寄存器简介.......................................................................................................60 2.1 SPI控制寄存器 1(SPICR1) ...................................................................................60 2.2 SPI控制寄存器 2(SPICR2) ...................................................................................62 2.3 SPI波特率选择寄存器..........................................................................................62 2.4 SPI状态寄存器......................................................................................................63 2.5 SPI数据寄存器......................................................................................................64 第三节 SPI应用实例...........................................................................................................64 第五章 A/D转换模块....................................................................................................................67 第一节 A /D模块介绍..........................................................................................................67 1.1 A/D转换原理.........................................................................................................67 1.2 A/D转换原理的应用前景.....................................................................................67 1.3 A/D转换模块.........................................................................................................67 1.4 功能结构图............................................................................................................68 1.5 HCS12A/D特点 .....................................................................................................68 第二节 A /D寄存器简介......................................................................................................69 2.1 控制寄存器 2(ATDCTL2)...............................................................................69 II
2.2 控制寄存器 3(ATDCTL3)...............................................................................71 2.3 控制寄存器 4(ATDCTL4)...............................................................................71 2.4 控制寄存器 5(ATDCTL5)...............................................................................73 第三节 A /D应用示例..........................................................................................................74 3.1 编程步骤................................................................................................................74 3.2 A/D程序示例—单通道查询.................................................................................74 3.3 A/D程序示例—滤波.............................................................................................75 3.4 A/D程序示例—定时采样.....................................................................................76 第六章 EEPROM模块 ..................................................................................................................79 第一节 EEPROM模块介绍.................................................................................................79 1.1 EEPROM功能 .......................................................................................................79 1.2 EEPROM结构 .......................................................................................................79 1.3 EEPROM特点 .......................................................................................................80 第二节 EEPROM寄存器简介.............................................................................................80 2.1 时钟分频寄存器ECLKDIV ..................................................................................80 2.2 配置寄存器ECNFG...............................................................................................81 2.3 保护寄存器EPROT ...............................................................................................81 2.4 状态寄存器ESTAT ...............................................................................................82 2.5 命令寄存器ECMD ................................................................................................84 第三节 EEPROM应用实例.................................................................................................85 3.1 EEPROM的写入操作............................................................................................85 3.2 EEPROM的擦除操作............................................................................................85 3.3 EEPROM示例程序................................................................................................86 第七章 FLASH模块......................................................................................................................91 第一节 F LASH模块介绍 ....................................................................................................91 1.1 FLASH功能...........................................................................................................91 1.2 FLASH结构...........................................................................................................91 1.3 FLASH特点...........................................................................................................92 第二节 F LASH寄存器简介 ................................................................................................92 2.1 时钟分频寄存器FCLKDIV ....................................................................................93 2.2 配置寄存器 FCNFG...............................................................................................94 2.3 安全寄存器 FSEC ..................................................................................................94 2.4 保护寄存器 FPROT ...............................................................................................95 2.5 状态寄存器 FSTAT 状态寄存器..........................................................................96 2.6 命令寄存器 FCMD ................................................................................................98 第三节 F LASH应用实例 ....................................................................................................98 3.1 FLASH的写入操作 ...............................................................................................98 3.2 FLASH的擦除操作 ...............................................................................................99 3.3 FLASH的擦写操作注意事项 .............................................................................100 3.4 FLASH示例程序 .................................................................................................100 第八章 CodeWarrior IDE 12 应用 ..............................................................................................103 III
第一章 PWM 模块 第一章 PWM模块 第一节 PWM模块介绍 PWM 调制波有 8 个输出通道,每一个输出通道都可以独立的进行输出。每 一个输出通道都有一个精确的计数器(计算脉冲的个数),一个周期控制寄存器 和两个可供选择的时钟源。每一个 PWM 输出通道都能调制出占空比从 0—100% 变化的波形。 PWM 的主要特点有: 1、它有 8 个独立的输出通道,并且通过编程可控制其输出波形的周期。 2、每一个输出通道都有一个精确的计数器。 3、每一个通道的 PWM 输出使能都可以由编程来控制。 4、PWM 输出波形的翻转控制可以通过编程来实现。 5、周期和脉宽可以被双缓冲。当通道关闭或 PWM 计数器为 0 时,改变周 期和脉宽才起作用。 6、8 字节或 16 字节的通道协议。 7、有 4 个时钟源可供选择(A、SA、B、SB),他们提供了一个宽范围的时 钟频率。 8、通过编程可以实现希望的时钟周期。 9、具有遇到紧急情况关闭程序的功能。 10、每一个通道都可以通过编程实现左对齐输出还是居中对齐输出。 1
第一章 PWM 模块 第二节 PWM寄存器简介 2.1 PWME寄存器 PWME 寄存器每一位如图 2 所示: 图 2 PWME 寄存器 每一个 PWM 的输出通道都有一个使能位 PWMEx。它是用来启动和关闭波 形输出的。当任意的 PWMEx 位置 1,则相关的 PWM 输出通道就立刻可用。然 而实际的 PWM 波形的输出还取决于时钟源。 此寄存器在任何时间都是可读、可写的,复位时全置 0。 用法: PWME7=1; 7通道可对外输出波形。 PWME7=0; 7通道不能对外输出波形。 注意:在通道使能后所输出的第一个波形可能是不规则的。当输出通道工作 在串联模式时(PWMCTL 寄存器中的 CONxx 位被设置),那么使能相应的 16 位 PWM 输出通道是由 PWMEx 的低电平位控制的(详情见 PWMCTL 寄存器)。 2.2 PWMPOL寄存器 PWMPOL 寄存器每一位如图 3 所示: 图 3 PWMPOL 寄存器 每一个 PWM 输出通道的波形都可以选择是在高电平时翻转,还是在低电平 时翻转。此功能就是由 PWMPOL 寄存器实现的。 此寄存器在任何时间都是可读、可写的,复位时全置 0。 用法: PWMPOL0=1; 0通道对外输出波形先是高电平然后再变为低电平。 2
第一章 PWM 模块 PWMPOL0=0; 0通道对外输出波形先是低电平然后再变为高电平。 2.3 PWMCLK寄存器 PWMCLK 寄存器每一位如图 4 所示: 图 4 PWMCLK 寄存器 每一个 PWM 输出通道都有两个时钟可供选择(A、SA 或 B、SB)。0、1、 4、5 通道可选用 A、SA 时钟,2、3、6、7 通道可选用 B、SB 通道。此寄存器 在任何时间都是可读、可写的,复位时全置 0。应当注意的是,如果当一个 PWM 输出波形正在产生时,时钟改变,这时就会产生一个平头的或线形脉冲。 此寄存器在任何时间都是可读、可写的,复位时全置 0。 用法: PCLK1=1; 1通道的时钟源设为 SA。 PCLK1=0; 1通道的时钟源设为 A。 2.4 PWMPRCLK寄存器 PWMPRCLK 寄存器每一位如图 5 所示: 图 5 PWMPRCLK 寄存器 PWMPRCLK 寄存器是单独用来给时钟源 A、B 进行预分频的。 PCKB2—PCKB0 是对 B 时钟源进行预分频。PCKA2 —PCKA0 是对 A 时钟 源进行预分频。这 6 位可以随时被读、被写。复位时置 0。 其 A 时钟设置分频值如图 6 所示: 其 B 时钟设置分频值如图 7 所示: 3
第一章 PWM 模块 图 6 时钟 A 预分频选择值 图 7 时钟 B 预分频选择值 2.5 PWMCAE寄存器 PWMCAE 寄存器每一位如图 8 所示: 图 8 PWMCAE 寄存器 PWMCAE 寄存器包含 8 个控制位来对每个 PWM 通道设置左对齐输出或居 中对齐输出。如果 CAEx 置为 1,则为居中对齐输出。如果置为 0,则为左对齐 输出。应当注意的是,只有输出通道被关闭后才能对其进行设置,即通道被激活 后不能对其进行设置。 2.6 PWMCTL寄存器 PWMCTL 寄存器每一位如图 9 所示: 图 9 PWMCTL 寄存器 此寄存器的 2—7 位为可读、可写位。只有当相应的通道关闭后,才能改变 这些控制字。 控制字介绍: 4
第一章 PWM 模块 CON67=1;这时通道 6、7 就串联为同一个输出通道。此时只有 7 通道的控 制字有用。例如:7 通道的 PWME 寄存器决定了他们的输出情况,7 通道的 PWMPOL 寄存器决定了他们是高电平翻转还是低电平翻转,7 通道的 PWMCLK 寄存器决定了他们两个的时钟源,7 通道的 PWMCAE 寄存器决定了他们是左对 齐输出还是居中对齐输出等。 CON67=0 ;这时 6,7 通道分别作为独立输出通道对外输出。 CON45、CON23、CON01 的用法同 CON67 相似。设置此控制字的意义在 于扩大了 PWM 对外输出脉冲的频率范围。 PSWAI=1;则 MCU 一旦处于等待状态,就会停止时钟的输入。这样就不会 因时钟在空操作而费电。当它置为 0,则 MCU 就是处于等待状态,也允许时钟 的输入。 2.7 PWMSCLA寄存器 PWMSCLA 寄存器每一位如图 10 所示: 图 10 PWMSCLA 寄存器 时钟 SA 是通过对 PWMSCLA 寄存器的设置来对 A 时钟进行分频而产生的。 其计算公式为: Clock SA=Clock A /(2*PWMSCLA) PWMSCLB 寄 存 器 同 PWMSCLA 寄 存 器 相 似 , 时 钟 SB 就 是 通 过 对 PWMSCLB 寄存器的设置来对 B 时钟进行分频而产生的。 其计算公式为: Clock SB=Clock B /(2*PWMSCLB) 2.8 PWMCNTx寄存器 PWMCNTx 寄存器共有 8 个,每一个通道都有一个。下面以 PWMCNT0 为 例对 PWMCNTx 寄存器进行介绍。 5
分享到:
收藏