合工大S12X单片机原理2_第1页
合工大S12X单片机原理2_第2页
合工大S12X单片机原理2_第3页
合工大S12X单片机原理2_第4页
合工大S12X单片机原理2_第5页
已阅读5页,还剩34页未读 继续免费阅读

下载本文档

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

文档简介

1、单片机原理Microcontrollers Principles MC9S12单片机原理及嵌入式应用开发技术6/21/2022 2.S12XS单片机的内部结构分析2.4 并行I/O口 MC9S12XS单片机有11个并行I/O端口,包括A、B、E、K、T、S、M、P、H、J和AD。其中A、B和K作为通用I/O口,其他端口除了作为通用I/O口外,还具有复用功能。2.S12XS单片机的内部结构分析2.4 并行I/O口I/O口的一般特性:1.I/O是和外部接口的最基本的手段是和外部接口的最基本的手段2.通常在微控制器中通常在微控制器中a)将将8个个I/O口合成一组口合成一组b)I/O通常是双向的通常是

2、双向的(部分管脚是单向的)(部分管脚是单向的)c)I/O引脚通常还和其他外设引脚复用引脚通常还和其他外设引脚复用3.I/O的相关寄存器的相关寄存器a)端口方向寄存器端口方向寄存器 (比如比如DDR)b)端口数据寄存器端口数据寄存器 (比如比如PT)c)端口状态寄存器端口状态寄存器 (比如比如PTI)d)端口设定寄存器端口设定寄存器 (如如key wakeup, pull-up )2.S12XS单片机的内部结构分析2.4 并行I/O口I/O口的结构示意图配置成输出配置成输入2.S12XS单片机的内部结构分析2.4 并行I/O口I/O口寄存器配置的示意图2.S12XS单片机的内部结构分析2.4 并

3、行I/O口pA、B、E和和K口口1.数据方向寄存器(以A端口为例)1=输出 0=输入2.数据寄存器(以A端口为例)3.上拉控制寄存器(PUCR) 1=上拉电阻使能 0=上拉电阻未被使能4.低功耗驱动寄存器(RDRIV)1=输出引脚功耗为正常值的1/5 0=输出引脚功耗为正常值2.S12XS单片机的内部结构分析2.4 并行I/O口pA、B、E和和K口口A、B、E和K口寄存器的地址2.S12XS单片机的内部结构分析2.4 并行I/O口pT、S、M、P、H和和J口口1.数据方向寄存器2.数据寄存器定义为输入时,读该寄存器,读出的是该寄存器的值,而不是对应引脚的电平(注意,这点定义为输入时,读该寄存器

4、,读出的是该寄存器的值,而不是对应引脚的电平(注意,这点与与A A口不同。口不同。3.输入寄存器只读寄存器,当数据方向寄存器定义为输入时,读出的值为对应引脚的电平;当引脚作为输只读寄存器,当数据方向寄存器定义为输入时,读出的值为对应引脚的电平;当引脚作为输出时,出时,该寄存器监视对应引脚是否负荷超载或电路短路,若是,则置该寄存器监视对应引脚是否负荷超载或电路短路,若是,则置1 1;否则;否则为为0.0.4.低功耗驱动寄存器5.上拉或下拉使能寄存器6.上拉或下拉选择寄存器 1=选择下拉电阻 0=选择上拉电阻2.S12XS单片机的内部结构分析2.4 并行I/O口pAD口口AD口除了作为AD转换模块

5、的模拟量输入口和外界触发脉冲的输人口外,也可作为普通输入口。AD口中没有数据方向寄存器,所以AD口只能作为输入口,而不能作为输出口。p端口的复用功能端口的复用功能a)a)T T口还具有接收输入捕捉功能,每个引脚作为一个输入捕捉端口。在系统复位时,引脚置位为高口还具有接收输入捕捉功能,每个引脚作为一个输入捕捉端口。在系统复位时,引脚置位为高阻态。阻态。b)b)S S口还与口还与SCISCI模块和模块和SPISPI模块关联作为通信接口。在系统复位时,引脚置位为带上拉电阻的输入状模块关联作为通信接口。在系统复位时,引脚置位为带上拉电阻的输入状态。态。c)c)M M口还与口还与ByteFlightBy

6、teFlight模块、模块、BDLC(J1850)BDLC(J1850)模块、模块、CANCAN模块和模块和SPISPI关联作为通信接口关联作为通信接口。在系统复位时,在系统复位时,引脚置位为高阻态。引脚置位为高阻态。d)d)P P口还与口还与PWMPWM模块和模块和SPISPI模块关联作为通信接口模块关联作为通信接口。另外,当另外,当P P口作为输入口作为输入/ /输出端口时,还提供中断输出端口时,还提供中断功能。在系统复位时,引脚置位为高阻态输入。功能。在系统复位时,引脚置位为高阻态输入。e)e)H H口与口与SPISPI模块关联作为通信接口,即模块关联作为通信接口,即P P。在系统复位时

7、,引脚置位为高阻态输入。在系统复位时,引脚置位为高阻态输入。f)f)J J口还与口还与CANCAN模块和模块和I2CI2C模块关联作为通信接口。另外,当模块关联作为通信接口。另外,当J J口作为输入口作为输入/ /输出端口时,还提供中断输出端口时,还提供中断功能。在在系统复位时,引脚置位为带上拉电阻的输入状态功能。在在系统复位时,引脚置位为带上拉电阻的输入状态。2.S12XS单片机的内部结构分析2.5 时钟与复位模块(Clocks and Reset Generator)2.S12XS单片机的内部结构分析2.5 时钟与复位模块(Clocks and Reset Generator)2.S12X

8、S单片机的内部结构分析2.5 时钟与复位模块(Clocks and Reset Generator)时钟模块1. 时钟分频寄存器(REFDV) 用于设定内部锁相环电路时钟分频系数。锁相环参考时钟晶振时钟具体参见芯片参考手册具体参见芯片参考手册 MC9S12XS256RMV1.PDF2.S12XS单片机的内部结构分析2.5 时钟与复位模块(Clocks and Reset Generator)时钟模块2. 时钟合成寄存器(SYNR)锁相环时钟频率晶振时钟频率锁相环中压控振荡器振荡频率单片机内部总线时钟频率2.S12XS单片机的内部结构分析2.5 时钟与复位模块(Clocks and Reset

9、Generator)时钟模块3. CRG时钟后分频寄存器(POSTDIV)2.S12XS单片机的内部结构分析2.5 时钟与复位模块(Clocks and Reset Generator)时钟模块4. CRG标志寄存器(CRGFLG)1) RTIF:实时中断标志位。 2) PORF:上电复位标志位。3) LVRF:低电压复位标志位。 4) LOCKIF:内部锁相环锁定中断标志位。5) LOCK:锁定状态位。 6) ILAF:非法地址复位标志位。7) SCMIF:自时钟模式中断标志位。 8) SCM:自时钟模式状态位,只读。2.S12XS单片机的内部结构分析2.5 时钟与复位模块(Clocks a

10、nd Reset Generator)时钟模块5. CRG时钟选择寄存器(CLKSEL)1) PLLSEL:1) PLLSEL:锁相环选择位。置锁相环选择位。置1 1,PLLCLKPLLCLK为系统时钟源;清为系统时钟源;清O O,选择,选择OSCCLKOSCCLK为系统时钟源;为系统时钟源;2) PSTP:伪停止位。该位控制在停止模式下晶振源的功能。置l,表示在停止模式下晶振继续运行;3) XCLKS:振荡器配置状态位。4) PLLWAI:等待模式PLL停止位。置1,PLL在待机模式时继续运行;清0,PLL在待机时停止;5) RTIWAI:等待模式RTI停止位;置1,只要进入等待模式RTI就

11、停止工作并将RTI的分频器清零;6) COPWAI:等待模式COP停止位。2.S12XS单片机的内部结构分析2.5 时钟与复位模块(Clocks and Reset Generator)时钟模块6. PLL控制寄存器(PLLCTL)1)CME:时钟监控使能位。当时钟监控器检测到时钟信号不稳定时,会复位MCU或者进入自时钟模式。置1,允许时钟监控器;清0,不允许时钟监控器。2)PLLON:IPLL启动位。当启动位。当PLLON1时,打开时,打开PLL电路;当电路;当PLLON0时,关闭时,关闭PLL电路。电路。3)FM1和FM0:IPLL频率调制使能位。4)FSTWKP:完全停止快速唤醒位。5)

12、PRE:在不完全停止模式下使能实时中断。6) PCE:在不完全停止模式下使能看门狗。7) SCME:自时钟模式使能位。2.S12XS单片机的内部结构分析2.5 时钟与复位模块(Clocks and Reset Generator)时钟模块7. CRG实时中断控制寄存器(RTICTL)1)RTDEC:十进制或二进制分频系数选择位。2)RTR6:4:实时中断预分频率选择位。3)RTR3:0:实时中断模数计数器选择位。如果采用二进制表示:如果采用二进制表示:溢出时钟周期溢出时钟周期(实时中断周期实时中断周期)=(RTR3:0+1)2 (RTR6:4 +9) /OSCCLK(晶振时钟频率晶振时钟频率)

13、 2.S12XS单片机的内部结构分析2.5 时钟与复位模块(Clocks and Reset Generator)时钟模块8. CRG看门狗控制寄存器(COPCTL) COP (Computer Operating Properly)1)WCOP:窗口COP模式使能位。置1后,必须在看门狗周期的后25%时间向ARMCOP中依次写人0 x55和0 xAA,在其他时间内写入或者写入其他值无效,并且会让MCU复位。WCOP=1,窗口COP模式;WCOP0,正常COP模式。2)RSBCK:,BDM模式下的COP和RTI停止位。3)WRTMASK:WCOP和CR2:0写屏蔽位。4)CR2:0:COP计时

14、速率选择位。COP溢出时钟周期溢出时钟周期= CR2:0 指示的分频值指示的分频值 /OSCCLK(晶振时钟频率晶振时钟频率) 2.S12XS单片机的内部结构分析2.5 时钟与复位模块(Clocks and Reset Generator)锁相环功能及应用注意事项CRG模块的锁相环电路由模块的锁相环电路由OSCCLK时钟产生一个规定的频率时钟时钟产生一个规定的频率时钟PLLCLK,为系统提为系统提供各种时钟频率源。它们之间的关系分别如下所述供各种时钟频率源。它们之间的关系分别如下所述:压控振荡器输出频率:压控振荡器输出频率:fVCOCLK = 2 fOSCCLK(SYNR + 1)/(REFD

15、V+1)内部锁相环输出频率:内部锁相环输出频率:fPLLCLK = fVCOCLK / ( 2 POSTDIV)选择锁相环时,内部时钟总线频率:选择锁相环时,内部时钟总线频率:fBUSCLK = fPLLCLK / 2fVCOCLK和和fPLLCLK之间的频率比例一般为之间的频率比例一般为1 1,所以一般情况下,所以一般情况下, ,POSTDIV=0。为了使时。为了使时钟源稳定,一般钟源稳定,一般REFDIV尽可能取最大值。尽可能取最大值。2.S12XS单片机的内部结构分析2.5 时钟与复位模块(Clocks and Reset Generator)锁相环应用范例1) 禁止总中断。2) 寄存器

16、CLKSEL的第7位置0,即CLKSEL_PLLSEL=0。3) 禁止锁相环(PLL),即PLLCTLPLLON=0。4) 根据想要的时钟频率设置SYNR和REFDV以及POSTDIV(可以不管)3个寄存器。5) 打开PLL,即PLLCTLPLLON=1。6) CRGFLGLOCK位确定PLL是否稳定。7) PLLCLK稳定后,允许锁相环时钟源PLLCLK为系统提供时钟,即CLKSELPLLSEL=1。2.S12XS单片机的内部结构分析2.5 时钟与复位模块(Clocks and Reset Generator)复位单片机产生复位的条件: 引脚加低电平。 电源电压低于特定值。 看门狗复位。 时

17、钟监控器复位。 执行复位指令引发的复位 非法指令引起的复位单片机的启动过程:上电复位后程序代码程序代码变量、堆栈变量、堆栈外设寄存器外设寄存器2.S12XS单片机的内部结构分析2.5 时钟与复位模块(Clocks and Reset Generator)复位中断向量表:详细的中断向量表见芯片手册“MC9S12XS256 Reference Manual”P54:Table 1-10. “Interrupt Vector Locations ” 2.S12XS单片机的内部结构分析2.5 时钟与复位模块(Clocks and Reset Generator)复位复位后单片机CPU要完成的任务:一从

18、固定地址取得复位向量并开始执行指令二初始化微控制器内部电路 将所有寄存器恢复成默认值 确认MCU的工作模式 禁止全局中断 关闭外设 将IO置为高阻输入状态 等待时钟振荡趋于稳定三初始化堆栈指针;四初始化内存,复制初始化数据,例如Init();五调用主函数,例如main();六设置系统时钟,是否启动PLL。自动执行3.单片机最小系统与软件运行环境3.1 硬件电路设计单片机最小系统:所谓最小系统就是能够在上电时,单片机正常工作的基本保障。MCU正常工作所需的最基本外围配置有:时钟电路,复位电路,BDM接口电路,以及供电电源。S12XS128单片机BDM接口Reset 按钮Crystal(晶振)LE

19、D发光二极管RS232 DB9(SCI0)异步串行通信接口MAX232 异步串行通信驱动芯片 Power socketSignal connector信号插排3.单片机最小系统与软件运行环境3.1 硬件电路设计实验扩展板:为了学习、调试单片机各种功能而设计的。Signal connectorSignal connectorkeypadPulse generatorPWM D/A convertAnalog voltage generator8 LEDswitchI2CSPIRS232 driver7Seg Numeric LEDConnect points3.单片机最小系统与软件运行环境3.1

20、 硬件电路设计单片机电源单片机最小系统:所谓最小系统就是能够在上电时,单片机正常工作的基本保障。MCU正常工作所需的最基本外围配置有:时钟电路,复位电路,BDM接口电路,以及供电电源。3.单片机最小系统与软件运行环境3.1 硬件电路设计单片机电源3.单片机最小系统与软件运行环境3.1 硬件电路设计单片机电源3.单片机最小系统与软件运行环境3.1 硬件电路设计单片机电源3.单片机最小系统与软件运行环境3.1 硬件电路设计单片机电源电路设计图3-1单片机系统电源滤波电路设计10uF的是滤波电容,起能量缓冲作用和滤波稳压作用,一般选电解电容。0.1uF、0.01uF的是去耦高频电容,是用来滤除高频信

21、号干扰的。3.单片机最小系统与软件运行环境3.1 硬件电路设计单片机电源电路设计图3-2单片机滤波电路内部电压调整模块需要外部连接滤波电路才能正常工作。3.单片机最小系统与软件运行环境3.1 硬件电路设计单片机时钟电路设计a)晶振和单片机引脚之间的连线尽可能短、线宽尽可能宽,这样可以保证其工作的稳定性和避免晶振体的高频信号对周围线路造成过多的干扰。b)晶振体的下方和周围尽量不要走线,尤其不要接对信号质量要求高的器件的线路。c)晶振体的周围和下面尽量用地线包围和覆盖,将晶振体的噪声阻挡起来,也防止其他干扰信号进来。单片机时钟电路XTALXTAL,EXTALEXTAL间可以接入不同形式的振荡电路间

22、可以接入不同形式的振荡电路, ,具体参数需要看器件文档。具体参数需要看器件文档。3.单片机最小系统与软件运行环境3.1 硬件电路设计复位电路设计 Power-On Reset External Hardware Reset Low voltage reset COP reset clock monitor reset不可屏蔽不可屏蔽可屏蔽可屏蔽3.单片机最小系统与软件运行环境3.1 硬件电路设计BDM接口电路设计BDM(Background Debug Mode)接口电路是)接口电路是S12单片机用单片机用来连接来连接BDM调试器的,主要用于调试器的,主要用于将应用程序从微机下载到单片机,将应用程序从微机下载到单片机,以及动态调试使用。以及动态调试使用。3.单片机最小系统与软件运行环境3.1 硬件电路设计BDM接口电路设计例子 (电路原理图)从内部VREG输出工作电压输入3.单片机最小系统与软件运行环境3.1 硬件电路设计C6C7C5Good isolation of PLL / Oscillator Power supply. C5 = 1nf, C6 = 100nF.Low impeda

温馨提示

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

评论

0/150

提交评论