单片机重点(详)

上传人:鲁** 文档编号:485428279 上传时间:2022-11-07 格式:DOCX 页数:7 大小:30.17KB
返回 下载 相关 举报
单片机重点(详)_第1页
第1页 / 共7页
单片机重点(详)_第2页
第2页 / 共7页
单片机重点(详)_第3页
第3页 / 共7页
单片机重点(详)_第4页
第4页 / 共7页
单片机重点(详)_第5页
第5页 / 共7页
点击查看更多>>
资源描述

《单片机重点(详)》由会员分享,可在线阅读,更多相关《单片机重点(详)(7页珍藏版)》请在金锄头文库上搜索。

1、MSP430 单片机种类: MSP430F1xx 系列 MSP430F2xx 系列 Msp430G2xx 系列 MSP430F4xx 系列 MSP430F5xx 系列 MSP430F6xx 系列 MSP430FRAM 系列 RF SoC 系列注:(MSP430系列单片机种类繁多,每一系列的单片机又包含若干不同种类的单片机)命名规则:(MSP430F6638IPZ): MSP(Mixed Signal Processor为处理器类型(CC:嵌入式射频无线电,MSP:混 合信号处理器,XMS:实验性)、430代表430微控制器平台、F为器件类型(C: ROM, F: Flash,FR: FRAM)

2、,第 一个6表示6XX系列(16xx系列),第二个6表示子系列,38表示存储容量为256kb及相应的外设配置,I表示工业 级,PZ表示LQFP封装。MSP430系列单片机的特点:1超低功耗2强大的处理能力3高性能模拟技术及丰富的片内外围设备4系统工作稳定5 方便高校的开发环境超低功耗单片机的造型与设计原则:1电源电压一般采用1.83.6V低电压2独特的时钟系统设计,包括两个不同的时 钟系统:基本时钟系统和锁频环(FLL和FLL+ )时钟系统或DCO数字控制振荡器时钟系统。3采用矢量中断,支持多个 中断源,并可以任意嵌套。CPU有16个16位寄存器,包括4个专用寄存器(R0R3)和12个通用寄存

3、器(R4R15)1、R0:程序计数器(PC)16位的程序计数器存放着下一条将要从程序存储器中取出的指令的地址; 程序计数器的实现依赖于指令使用的字节数(总是偶数); 由于指令是16位的,所以程序计数器一定是在偶数地址对齐。2、R1:堆栈指针(SP)(R1可用于保存堆栈指针)*用户可使用堆栈指针存储数据PUSH指令用来存数据,POP指令用来取数据*用户和编译器均可使用堆栈为子函数传递参数(PUSH,POP用于调用函数,被调函数使用SP来计算偏移)*系统进入子函数之前,把PC值存储到堆栈中,从子函数返回时,在取出堆栈中的值,重新赋值给PC *系统堆栈在系统进入中断服务程序时,首先保护PC,然后将中

4、断矢量的地址送入PC,再执行中断服务程序。中断服务程序执行完毕,遇到返回指令时,堆栈的内容送PC,程序又回到原来的地方继续执行。在函数调用之前 保存的寄存器变量、局部变量和参数都不会变。3、R2:状态寄存器(SR)状态寄存器用来存储状态位和控制位。CPU根据计算结果自动修改系统标志 状态寄存器的预留位用来支持常量发生器SR 各位描述如下V:溢出位,当运算结果超出有符号数范围时置位,对字和字节格式均有效。SCG1:系统时钟生成器0,SCG1=1时DOC生成器被关闭SCG0:系统时钟生成器1,SCG0=1时FLL+循环控制被关闭注:SCG0/1:系统时钟生成器控制位(0/1),控制系统时钟生成器的

5、4种状态。OSCOFF:振荡器关闭,为1时关闭LFXT1CPUOFF: CPU关闭,为1时禁用CPUGIE: 一般中断使能位,为1时使能可屏蔽中断N:负数位(求反标志位),为1表示负数Z:零位(零标识位),为1时表示0C:进位位(进位标识位),为1时表示字节或字运算产生进位4、R2/R3:常量发生寄存器(CG1/CG2)根据源寄存器寻址模式(AS)的值,常量发生寄存器不需要通过代码 字或代码内存访问即可生成6个常用常量。R2/R3与AS(0011)值组合有8种方式,如下:R2 00:寄存器寻址模式R2 01:绝对寻址模式R2 10:生成常量 00004h,+4,位处理R2 11: 00008h

6、,+8,位处理R3 00: 00000h,0,字处理R3 01: 00001h,+1R3 10: 00002h,+2,位处理R3 11: 0FFFFh,-1,字处理5、通用寄存器可以用来保存数据值、地址指针或索引值可以通过字节或字指令访问通用寄存器指令系统(仿真、内核指令)1、指令集包括27 种内核指令,支持24 种仿真指令。2、内核指令是唯一的操作码3、汇编器和编译器用来生成仿真指令的助记符4、3 种内核指令格式:双操作数、单操作数、程序流控制跳转。1、MSP430系列单机5个时钟模块构成:低频振荡器、高频振荡器、控制逻辑、数字控制振荡器(DOC)锁频环(FLL)2、各系列单片机的基础时钟模

7、块都输出3种时钟:辅助时钟(ACLK)、主系统时钟(MCLK)、子系统时钟(SMCLK)ALCK 般用于低速外设模块MCLK主要用于CPU和系统SMCLK主要用于高速外设模块3、5XX/6xx时钟模块有5个时钟输入源*XT1CLK:低频时钟源(可工作于高频模式),4MHz32MHz。可作为FLL的参考时钟*XT2CLK:高频时钟源,4MHz32MHz。某些型号没有XT2CLK*VLOCLK:低功耗低频内部时钟源,典型值10kHz*REFOCLK:低频修整内部参考时钟源,典型值32768Hz,FLL基准时钟*DCOCLK:片内数字控制时钟源,可通过FLL稳定P53UCSCTL6寄存器及其每个字段

8、的含义-重点标准时钟系统控制寄存器6Bits 1514: XT2DRIVE,默认最大驱动(即11),可自行减小驱动00 最低电流消耗。 XT2 晶振频率 4MHz8MHz01 驱动力稍增大。 8MHz16MHz10 驱动力增大。 16MHz24MHz11 驱动力和电流消耗均达到最大。 24MHz32MHzBit 12: XT2BYPASS,XT2 旁路模式选择0 XT2 由晶振产生1 XT2 由外部引脚输入Bit 8: XT2OFF,关闭 XT2 晶振0 XT2 已通过端口选择,非旁路模式,则 XT2 被打开1 XT2没有被用作时钟源和FLL的校验源,则XT2关闭Bits 76: XT1DRI

9、VE,默认最大驱动可自行减小驱动00、01、10、11 与 XT2 相同Bit 5: XTS,XT1模式选择0 低频模式1 高频模式Bit 4: XT1BYPASS,XT1旁路模式选择(与XT2相同)Bits 32: XCAP,低频晶振电容选择Bit 1: SMCLKOFF,用于关闭 SMCLK 信号0 SMCLK开启1 SMCLK关闭Bit 0: XT1OFF,用于关闭XT1晶振0已经通过端口选择,非旁路模式,则XT1被打开1 没有被用作时钟源和 FLL 的校验源,则 XT1 关闭1、中断是应用程序的外部事件, CPU 能够快速响应中断,在没有中断请求时, CPU 执行其他程序,中断发生时执

10、 行中断服务程序(ISR),当中断程序执行结束后,程序返回到中断发生前的状态继续执行。2、MSP430中断源:内部中断、外部中断3、中断分为:复位中断、不可屏蔽中断(NMI),可屏蔽中断。P61低功耗模式(1种活跃,7种非活跃)、SCG1、SCG0、OSCOFF、CPUOFF如何设置1、MSP430系列单片机各个模块运行完全独立,可在CPU休眠状态下运行。系统以最低功耗运行,当需要CPU工 作时,任何模块都可以通过中断唤醒CPU。2、为了充分利用 CPU 低功耗性能,可使 CPU 处于突发状态。3、MSP430的瞬间响应特性是超低功耗事件驱动的重要保证4、控制位 SCG1、 SCG0、 OSC

11、OFF、 CPUOFF 可配置 8 中工作模式: 1 种活跃模式与 7 种低功耗模式。转换 P63 图3.12P65 响应中断堆栈的变化1、#1: PC入栈-SR入栈-中断向量赋给PC-GIE、CPUOFF、OSCOFF、SCG1清除(进入活动模式)-IFG标志位 清楚。#2:执行中断子程序。3#: SR出栈、PC出栈。堆栈的变化参考P65图3.13以及实例图3.14和图3.15.P72通用输入/输出端口(GPIO): PXDIR、PXOUT、PXSEL、PXIN上电为什么状态1、GPIO 可配置为可中断型和不可中断型;2、这些端口可被独立的配置成通用性I/O或者专用型I/O;3、MSP430

12、输入/输出都是通过指令来完成的4、PxDIR输入/输出寄存器(8个引脚方向):使用输入和输出功能时先定义端口方向(如:P1DIR = 0x01;表示 P1端口的P1.0设置为输出方向,其余(P1.1P.7)为输出)。作为输入时,只能读;作为输出时可读可写。5、PxIN输入寄存器:只读寄存器。(操作如:P2.6连接一个按键,若按键按下,则P2.6输入信号为低电平)6、PxOUT输出寄存器:可读可写,读寄存器时读出的值为上一次写入的值(P1OUT |= 0x01;表示P1.0为高电平, 其余保持不变)7、PxREN上拉或下拉电阻使能寄存器:为0禁用上拉/下拉电阻,为1使能上拉/下拉电阻。8、PxS

13、EL功能选择寄存器:0选择引脚为I/O端口,1选择引脚为外围模块功能9、PxDS 输出驱动强度寄存器: 0 低驱动强度, 1 高P80 定时器A的4种工作模式、两个中断(TAIFG、CCIFG)1、Timer_A由一个16位定时器和多个捕获/比较器组成2、4 种工作模式(停止、增计数、连续计数、增/减计数)(1)MCx为00:停止模式:定时器停止(2)01增计数模式:定时器重复从0计数到TAxCCR0(3)10连续计数模式:定时器重复从0计数到0FFFFh(4)11增/减计数模式:定时器重复从0计数到TAXCCR0,再减计数到零3、Timer_A中断可由计数器溢出引起,也可来自捕获/比较寄存器

14、4、Timer_A模块使用两个中断向量:一个单独分配给捕获/比较寄存器TAxCCR0;另一个为共用中断向量,用于定 时器和其他的捕获/比较寄存器。5、TAIFG: Timer_A中断标志位,0无中断发生,1有中断发生6、CCIFG:捕获/比较中断标志,0无中断发生,1有中断发生P93 TACCRx 寄存器(捕获/比较模式)重点1、在捕获/比较模块中中,可读可写2、比较模式:TAxCCRn与TAR进行比较。3、捕获模式:当满足捕获条件时,硬件自动将计数器TAR数据写入该寄存器。 测量某窄脉冲的高电平宽度(长度),定义上升沿和下降沿均捕获(数据在捕获寄存器中读出),两次捕获的定时器数据差就是窄脉冲

15、的高电平宽度。P96例题、Timer_A实现PWM (相关R的设置)PWM 信号是一种具有固定周期、不定占空比的数字信号。例题:Timer_A 实现 PWM 举例;设 ACLK=TACLK=LFTC1=32768 MCLK=SMCLK=DCOCLK=32*ALK=1.048576MHz,利用 Timer_A输出周期为512/32768=15.625ms、占空比分别为75%和25%的PWM矩形波。代码如下:#includevoid main(void)WDTCTL = WDTPW + WDTHOLD;FLL_CTL0 |= XCAP14PF; TACTL = TASSEL0 + TACLR; CCR0 = 512-1;CCTL1 = OUTMOD_7; CCR1 = 384;CCTL2 =OUTMOD_7;CCR2 = 128;P1DIR |= 0x04;P1SEL |= 0x04;/关看门狗/ALCK 清楚 TAR/PWM 周期/占空比 384/512=0.75/占空比 128/

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 学术论文 > 其它学术论文

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号