MSP430主系统时钟以及430的低功耗设置
- 格式:docx
- 大小:11.14 KB
- 文档页数:3
MSP430混合信号微控制器数据手册产品特性●低电压范围:2.5V~5.5V 超低功耗●超低功耗——活动模式:330μA at 1MHz, 3V——待机模式:0.8μA——掉电模式(RAM数据保持):0.1μA ●从待机模式唤醒响应时间不超过6μs ●16位精简指令系统,指令周期200ns ●基本时钟模块配置基本时钟模块配置——多种内部电阻——多种内部电阻——单个外部电阻——单个外部电阻——32kHz晶振晶振——高频晶体——高频晶体——谐振器——谐振器——外部时钟源——外部时钟源●带有三个捕获/比较寄存器的16位定时器(Timer_A)串行在线可编程●串行在线可编程●采用保险熔丝的程序代码保护措施采用保险熔丝的程序代码保护措施该系列产品包括●该系列产品包括——MSP430C111:2K字节ROM,128字节RAM ——MSP430C112:4K字节ROM,256字节RAM ——MSP430P112:4K字节OTP,256字节RAM 原型●EPROM原型——PMS430E112:4KB EPROM, 256B RAM ●20引脚塑料小外形宽体(SOWB)封装,20引脚陶瓷双列直插式(CDIP)封装(仅EPROM)●如需完整的模块说明,请查阅MSP430x1xx系列用户指南(文献编号:SLAU049 产品说明TI公司的MSP43O系列超低功耗微控制器由一些基本功能模块按照不同的应用目标组合而成。
在便携式测量应用中,这种优化的体系结构结合五种低功耗模式可以达到延长电池寿命的目的。
以达到延长电池寿命的目的。
MSP430MSP430系列的CPU 采用16位精简指令系统,集成有16位寄存器和常数发生器,发挥了最高的代码效率。
它采用数字控制振荡器(DCO DCO)),使得从低功耗模式到唤醒模式的转换时间小于6μs.MSP430x11x 系列是一种超低功耗的混合信号微控制器,系列是一种超低功耗的混合信号微控制器,它拥有一个内置的它拥有一个内置的16位计数器和14个I/0引脚。
MSP430G2553学习笔记(数据手册)MSP430G2553性能参数(DIP-20) 工作电压范围:1.8~3.6V。
5种低功耗模式。
16位的RISC结构,62.5ns指令周期。
超低功耗:运行模式-230µA;待机模式-0.5µA;关闭模式-0.1µA;可以在不到1µs的时间里超快速地从待机模式唤醒。
基本时钟模块配置:具有四种校准频率并高达16MHz的内部频率;内部超低功耗LF振荡器;32.768KHz晶体;外部数字时钟源。
两个16 位Timer_A,分别具有三个捕获/比较寄存器。
用于模拟信号比较功能或者斜率模数(A/D)转换的片载比较器。
带内部基准、采样与保持以及自动扫描功能的10位200-ksps 模数(A/D)转换器。
16KB闪存,512B的RAM。
16个I/O口。
注意:MSP430G2553无P3口!MSP430G2553的时钟基本时钟系统的寄存器DCOCTL-DCO控制寄存器DCOxDCO频率选择控制1MODxDCO频率校正选择,通常令MODx=0注意:在MSP430G2553上电复位后,默认RSEL=7,DCO=3,通过数据手册查得DCO频率大概在0.8~1.5MHz之间。
BCSCTL1-基本时钟控制寄存器1XT2OFF不用管,因为MSP430G2553内部没有XT2提供的HF时钟XTS不用管,默认复位后的0值即可DIV Ax设置ACLK的分频数00 /101 /210 /411 /8RSELxDCO频率选择控制2BCSCTL2-基本时钟控制寄存器2SELMxMCLK的选择控制位00 DCOCLK01 DCOCLK10 LFXT1CLK或者VLOCLK11 LFXT1CLK或者VLOCLK DIVMx设置MCLK的分频数00 /101 /210 /411 /8SELSSMCLK的选择控制位0 DCOCLK1 LFXT1CLK或者VLOCLK DIVSx设置SMCLK的分频数00 /101 /210 /411 /8DCORDCO直流发生电阻选择,此位一般设00 内部电阻1 外部电阻BCSCTL3-基本时钟控制寄存器3XT2Sx不用管LFXT1Sx00 LFXT1选为32.768KHz晶振01 保留10 VLOCLK11 外部数字时钟源XCAPxLFXT1晶振谐振电容选择00 1pF01 6pF10 10pF11 12.5pFmsp430g2553.h中基本时钟系统的内容/************************************************************* Basic Clock Module************************************************************/#define __MSP430_HAS_BC2__ /* Definition to show that Module is available */SFR_8BIT(DCOCTL); /* DCO Clock Frequency Control */SFR_8BIT(BCSCTL1); /* Basic Clock System Control 1 */SFR_8BIT(BCSCTL2); /* Basic Clock System Control 2 */SFR_8BIT(BCSCTL3); /* Basic Clock System Control 3 */#define MOD0 (0x01) /* Modulation Bit 0 */#define MOD1 (0x02) /* Modulation Bit 1 */#define MOD2 (0x04) /* Modulation Bit 2 */#define MOD3 (0x08) /* Modulation Bit 3 */#define MOD4 (0x10) /* Modulation Bit 4 */#define DCO0 (0x20) /* DCO Select Bit 0 */#define DCO1 (0x40) /* DCO Select Bit 1 */#define DCO2 (0x80) /* DCO Select Bit 2 */#define RSEL0 (0x01) /* Range Select Bit 0 */#define RSEL1 (0x02) /* Range Select Bit 1 */#define RSEL2 (0x04) /* Range Select Bit 2 */#define RSEL3 (0x08) /* Range Select Bit 3 */#define DIVA0 (0x10) /* ACLK Divider 0 */#define DIVA1 (0x20) /* ACLK Divider 1 */#define XTS (0x40) /* LFXTCLK 0:Low Freq. / 1: High Freq. */ #define XT2OFF (0x80) /* Enable XT2CLK */#define DIVA_0 (0x00) /* ACLK Divider 0: /1 */#define DIVA_1 (0x10) /* ACLK Divider 1: /2 */#define DIVA_2 (0x20) /* ACLK Divider 2: /4 */#define DIVA_3 (0x30) /* ACLK Divider 3: /8 */#define DIVS0 (0x02) /* SMCLK Divider 0 */#define DIVS1 (0x04) /* SMCLK Divider 1 */#define SELS (0x08) /* SMCLK Source Select 0:DCOCLK /1:XT2CLK/LFXTCLK */#define DIVM0 (0x10) /* MCLK Divider 0 */#define DIVM1 (0x20) /* MCLK Divider 1 */#define SELM0 (0x40) /* MCLK Source Select 0 */#define SELM1 (0x80) /* MCLK Source Select 1 */#define DIVS_0 (0x00) /* SMCLK Divider 0: /1 */#define DIVS_1 (0x02) /* SMCLK Divider 1: /2 */#define DIVS_2 (0x04) /* SMCLK Divider 2: /4 */#define DIVS_3 (0x06) /* SMCLK Divider 3: /8 */#define DIVM_0 (0x00) /* MCLK Divider 0: /1 */#define DIVM_1 (0x10) /* MCLK Divider 1: /2 */#define DIVM_2 (0x20) /* MCLK Divider 2: /4 */#define DIVM_3 (0x30) /* MCLK Divider 3: /8 */#define SELM_0 (0x00) /* MCLK Source Select 0: DCOCLK */#define SELM_1 (0x40) /* MCLK Source Select 1: DCOCLK */#define SELM_2 (0x80) /* MCLK Source Select 2: XT2CLK/LFXTCLK */#define SELM_3 (0xC0) /* MCLK Source Select 3: LFXTCLK */#define LFXT1OF (0x01) /* Low/high Frequency Oscillator Fault Flag */#define XT2OF (0x02) /* High frequency oscillator 2 fault flag */#define XCAP0 (0x04) /* XIN/XOUT Cap 0 */#define XCAP1 (0x08) /* XIN/XOUT Cap 1 */#define LFXT1S0 (0x10) /* Mode 0 for LFXT1 (XTS = 0) */#define LFXT1S1 (0x20) /* Mode 1 for LFXT1 (XTS = 0) */#define XT2S0 (0x40) /* Mode 0 for XT2 */#define XT2S1 (0x80) /* Mode 1 for XT2 */#define XCAP_0 (0x00) /* XIN/XOUT Cap : 0 pF */#define XCAP_1 (0x04) /* XIN/XOUT Cap : 6 pF */#define XCAP_2 (0x08) /* XIN/XOUT Cap : 10 pF */#define XCAP_3 (0x0C) /* XIN/XOUT Cap : 12.5 pF */#define LFXT1S_0 (0x00) /* Mode 0 for LFXT1 : Normal operation */ #define LFXT1S_1 (0x10) /* Mode 1 for LFXT1 : Reserved */#define LFXT1S_2 (0x20) /* Mode 2 for LFXT1 : VLO */#define LFXT1S_3 (0x30) /* Mode 3 for LFXT1 : Digital input signal */#define XT2S_0 (0x00) /* Mode 0 for XT2 : 0.4 - 1 MHz */#define XT2S_1 (0x40) /* Mode 1 for XT2 : 1 - 4 MHz */#define XT2S_2 (0x80) /* Mode 2 for XT2 : 2 - 16 MHz */#define XT2S_3 (0xC0) /* Mode 3 for XT2 : Digital input signal */基本时钟系统例程(DCO)MSP430G2553在上电之后默认CPU执行程序的时钟MCLK来自于DCO时钟。
MSP430单片机实现时钟显示MSP430单片机实现时钟显示MSP430系列振荡器是一种超低功耗存储器,它的每一系列根据不同的需要由不同的模块组成,其FLASH系列使高效电子系统变得轻巧。
FLASH驱动器同时也具有很强的灵活性。
同时为了在低控制器strong的驱动下得到较高的稳定频率,某些MSP430器件上使用了锁频技术FLL或增强型锁频环技术FLL+。
如MSP430F412的时钟模块中使用了FLL+技术,这样可以得到稳定的频率。
MSP430F413的典型工作电流为350uA(1MHz,3V)工作电压为1.8V;-;3.6V,由于它的程序代码熔丝保护,多次可擦写功能的FLASH 程序存储器,96字段的电阻电容可以直接驱动通常应用在测量频率上的字段型LCD,从而广泛应用于要求功耗低、时钟准确度高、进行实时时钟显示以及定时处理某些操作的仪表(如电子水表、电表、煤气表等)中。
本文介绍用MSP430F413实现实时时钟及其显示。
在驱动电路中,液晶可以等效为设备。
两个电极分别为公共极与段极。
公共极由CMOn信号驱动,段极由SEGn信号驱动。
由此可以得到4种驱动方法。
(1)静态驱动:使用一个引脚作为液晶公共端COM0,而每一段段极需要另一个引脚驱动。
(2)2MUX驱动:使用两个引脚作为液晶公共端COM0、COM1每两段段极需要另一引脚驱动。
(3)LCDUX驱动:使用三个引脚作为液晶公共端COM0、COM1、COM2,每3段段极需要另一引脚驱动。
(4)4MUX驱动:使用4个引脚作为液晶公共端COM0、COM1、COM2,每4段段极需要另一引脚驱动。
MSP430对液晶的驱动主要是通过液晶模块的寄存器LCD3ML和LCDMx来实现。
而驱动能力的不同也就是LCDMx寄存器的数量不同。
显示缓存器LCDMx越多,缓存越大,显示的内容就越多。
MSP430F413集成了96段液晶驱动器,具有较强的显示功能。
在本文中MSP430F413采用了4MUX方式,其显示缓存器中位与液晶段的对应关系如图1所示。
MSP430F169的时钟设置MSP430F169的时钟设置1. 设置使⽤DCOCLK时钟源DCOCLK时钟源的配置DCOCTL = DCO0 + DCO1 + DCO2; // Max DCOBCSCTL1 = RSEL0 + RSEL1 + RSEL2; //设置成功DCOCLK时钟源,复位后MCLK默认是DCO//t = (32 - MODx) * t_DCO + MODx * t_DCO+1//f_t = (f_DCO * f_DCO+1)/(32 * f_DCO+1 + MODx *(f_DCO - f_DCO+1))DCOCTL = MOD0 + MOD1 + MOD2 + MOD3 + MOD4; //如果上述设置的频率不够就⽤该语句实现频率混合,MOD_N(1~31)SCSCTL2 |= DCOR //DCOR为0时,选择内部电阻,受温度影响⼤;DCOR为1时,选择外部精密电阻,受温度影响⼩MCLK信号使⽤DCOCLK时钟源,结合DCOCLK时钟源的配置//BCSCTL2 = SELM_(0,1,2,3); //SELM_0和SELM_1都是DCOCLK SELM_2是XT2CLK(⾼频) SELM_3是LFXT1CLK(低频)BCSCTL2 |= SELM_1; //MCLK信号选择时钟源为DCOCLK//BCSCTL2 = DIVM_(0,1,2,3); //DIVM_N就是对MCLK信号的频率进⾏2^N分频,依次为1、2、4、8分频BCSCTL2 |= DIVM_0; //对MCLK信号分频SMCLK信号使⽤DCOCLK时钟源,结合DCOCLK时钟源的配置//BCSCTL2 = SELS; //SELS为0时,选择DCOCLK时钟源;SELS为1时,选择外部时钟源,若XT2CLK时钟源,就为XT2CLK,否则就为LFXT1CLK时钟 BCSCTL2 &= ~SELS; //SMCLK信号选择时钟源为DCOCLK//BCSCTL2 = DIVS_(0,1,2,3); //DIVS_N就是对SMCLK信号的频率进⾏2^N分频,依次为1、2、4、8分频BCSCTL2 |= DIVS_0; //对SMCLK信号分频2. 设置使⽤XT2CLK时钟源XT2CLK时钟源的配置BCSCTL1 &= ~XT2OFF; //XT2OFF置位时关闭XT2CLK时钟源,XT2OFF复位时打开XT2CLK时钟//BCSCTL1 |= XTS; //XTS复位时LFXT1CLK为低频模式,置位时为⾼频模式,此时LFXT1CLK就可以替换XT2CLK时钟源volatile unsigned int i;do{IFG1 &= ~OFIFG; //复位后OFIFG为1,使⽤外部时钟源必须复位OFIFGfor (i = 0xFF; i > 0; i--); //等待复位}while ((IFG1 & OFIFG)); //如果还是置位则再次复位MCLK信号使⽤XT2CLK时钟源,结合XT2CLK时钟源的配置//BCSCTL2 = SELM_(0,1,2,3); //SELM_0和SELM_1都是DCOCLK SELM_2是XT2CLK(⾼频) SELM_3是LFXT1CLK(低频)BCSCTL2 |= SELM_2; //MCLK信号选择时钟源为XT2CLK//BCSCTL2 = DIVM_(0,1,2,3); //DIVM_N就是对MCLK信号的频率进⾏2^N分频,依次为1、2、4、8分频BCSCTL2 |= DIVS_0; //对SMCLK信号分频SMCLK信号使⽤XT2CLK时钟源,结合XT2CLK时钟源的配置//BCSCTL2 = SELS; //SELS为0时,选择DCOCLK时钟源;SELS为1时,选择外部时钟源,若XT2CLK时钟源村⼦,就为XT2CLK,否则就为LFXT1CLK时钟 BCSCTL2 = SELS; //SMCLK信号选择时钟源为XT2CLK//BCSCTL2 = DIVS_(0,1,2,3); //DIVS_N就是对SMCLK信号的频率进⾏2^N分频,依次为1、2、4、8分频BCSCTL2 |= DIVS_0; //对SMCLK信号分频3. 设置使⽤LFXT1CLK时钟源LFXT1CLK时钟源的配置//BCSCTL1 |= XTS; //XTS复位时LFXT1CLK为低频模式,置位时为⾼频模式,此时LFXT1CLK就可以替换XT2CLK时钟源volatile unsigned int i;do{IFG1 &= ~OFIFG; //复位后OFIFG为1,使⽤外部时钟源必须复位OFIFGfor (i = 0xFF; i > 0; i--); //等待复位}while ((IFG1 & OFIFG)); //如果还是置位则再次复位MCLK信号使⽤LFXT1CLK时钟源,结合LFXT1CLK时钟源的配置//BCSCTL2 = SELM_(0,1,2,3); //SELM_0和SELM_1都是DCOCLK SELM_2是XT2CLK(⾼频) SELM_3是LFXT1CLK(低频)BCSCTL2 |= SELM_3; //MCLK信号选择时钟源为LFXT1CLK//BCSCTL2 = DIVM_(0,1,2,3); //DIVM_N就是对MCLK信号的频率进⾏2^N分频,依次为1、2、4、8分频BCSCTL2 |= DIVS_0; //对SMCLK信号分频SMCLK信号使⽤LFXT1CLK时钟源,结合LFXT1CLK时钟源的配置,此时LFXT1CLK必须在⾼频模式下,LFXT1CLK时钟源的配置中的第1⾏不能注释//BCSCTL2 = SELS; //SELS为0时,选择DCOCLK时钟源;SELS为1时,选择外部时钟源,若XT2CLK时钟源存在,就为XT2CLK,否则就为LFXT1CLK时钟 BCSCTL2 = SELS; //SMCLK信号选择时钟源为LFXT1CLK⾼频//BCSCTL2 = DIVS_(0,1,2,3); //DIVS_N就是对SMCLK信号的频率进⾏2^N分频,依次为1、2、4、8分频BCSCTL2 |= DIVS_0; //对SMCLK信号分频ACLK信号使⽤LFXT1CLK时钟源,结合LFXT1CLK时钟源的配置//BCSCTL1 |= XTS; //XTS复位时LFXT1CLK为低频模式,置位时为⾼频模式,此时LFXT1CLK就可以替换XT2CLK时钟源//BCSCTL2 = DIVA_(0,1,2,3); //DIVA_N就是对ACLK信号的频率进⾏2^N分频,依次为1、2、4、8分频BCSCTL2 |= DIVA_0; //对SMCLK信号分频。
T EXAS I NSTRUMENTSMPS430系列混合信号微控制器结构及模块用户指南目录1MSP430系列1.1特性与功能1.2系统关键性能1.3MSP430系列的各型号2结构概述2.1CPU2.2代码存储器2.3数据存储器(RAM)2.4运行控制2.5外围模块2.6振荡器、倍频器和时钟发生器3系统复位、中断和运行模式3.1系统复位和初始化3.2中断系统结构3.3中断处理3.3.1SFR中的中断控制位3.3.2外部中断3.4运行模式3.5低功耗模式3.5.1 低功耗模式0与模式1,LPM0和LPM1 3.5.2 低功耗模式2与模式3,LPM2和LPM3 3.5.3 低功耗模式4,LPM43.6 低功耗应用要点4 存储器组织4.1 存储器中的数据4.2 片内ROM组织4.2.1 ROM表的处理4.2.2 计算分支跳转和子程序调用4.3 RAM与外围模块组织4.3.1 RAM4.3.2 外围模块—地址定位4.3.3 外围模块--SFR5 16位CPU5.1 CPU寄存器5.1.1 程序计数器PC5.1.2 系统堆栈指针SP5.1.3 状态寄存器SR5.1.4 常数发生寄存器CG1与CG25.2 寻址模式5.2.1 寄存器模式5.2.2 变址模式5.2.3 符号模式5.2.4 绝对模式5.2.5 间接模式5.2.6 间接增量模式5.2.7 立即模式5.2.8 指令的时钟周期与长度5.3 指令组概述5.3.1 双操作数指令5.3.2 单操作数指令5.3.3 条件跳转5.3.4 模拟指令的短格式5.3.5 其它指令5.4 指令分布6 硬件乘法器6.1 硬件乘法器的操作6.2 硬件乘法器的寄存器6.3 硬件乘法器的SFR位6.4 硬件乘法器的软件限制6.4.1 硬件乘法器软件限制--寻址模式6.4.2 硬件乘法器软件限制--中断程序7 振荡器与系统时钟发生器7.1 晶体振荡器7.2 处理机时钟发生器7.3 系统时钟运行模式7.4 系统时钟控制寄存器7.4.1 模块寄存器7.4.2 与系统时钟发生器相关的SFR位7.5 DCO典型特性8 数字I/O配置8.1 通用端口P08.1.1 P0控制寄存器8.1.2 P0原理图8.1.3 P0中断控制功能8.2 通用端口P1、P28.2.1 P1、P2控制寄存器8.2.2 P1、P2原理图8.2.3 P1、P2中断控制功能8.3 通用端口P3、P48.3.1 P3、P4控制寄存器8.3.2 P3、P4原理图8.4 LCD端口8.5 LCD端口--定时器/端口比较器9 通用定时器/端口模块9.1 定时器/端口模块操作9.1.1 定时器/端口计数器TPCNT1,8位操作9.1.2 定时器/端口计数器TPCNT2,8位操作9.1.3 定时器/端口计数器,16位操作9.2 定时器/端口寄存器9.3 定时器/端口SFR位9.4 定时器/端口在A/D中的应用9.4.1 R/D转换原理9.4.2 分辨率高于8位的转换10 定时器10.1 Basic Timer110.1.1 BasicTimer1寄存器10.1.2 SFR位10.1.3 BasicTimer1操作10.1.4 BasicTimer1操作:LCD时钟信号f LCD 10.2 8位间隔(Interval)定时器/计数器10.2.1 8位定时器/计数器的操作10.2.2 8位定时器/计数器的寄存器10.2.3 与8位定时器/计数器有关的SFR 10.2.4 8位定时器/计数器在UART中的应用10.3 看门狗定时器10.3.1 看门狗定时器寄存器10.3.2 看门狗定时器中断控制功能10.3.3 看门狗定时器操作10.4 8位PWM定时器10.4.1 操作10.4.2 PWM寄存器11 Timer_A11.1 Timer_A的操作11.1.1 定时器操作11.1.2 捕获模式11.1.3 比较器模式11.1.4 输出单元11.2 Timer_A的寄存器11.2.1 Timer_A控制寄存器TACTL11.2.2 捕获/比较控制寄存器CCTL11.2.3 Timer_A中断向量寄存器11.3 Timer_A的应用11.3.1 Timer_A增计数模式应用11.3.2 Timer_A连续模式应用11.3.3 Timer_A增/减计数模式应用11.3.4 Timer_A软件捕获应用11.3.5 Timer_A处理异步串行通信协议11.4 Timer_A的特殊情况11.4.1 CCR0用作周期寄存器11.4.2 定时器寄存器的启/停11.4.3 输出单元Unit012 USART外围接口,UART模式12.1 异步操作12.1.1 异步帧格式12.1.2 异步通信的波特率发生器12.1.3 异步通信格式12.1.4 线路空闲多处理机模式12.1.5 地址位格式12.2 中断与控制功能12.2.1 USART接收允许12.2.2 USART发送允许12.2.3 USART接收中断操作12.2.4 USART发送中断操作12.3 控制与状态寄存器12.3.1 USART控制寄存器UCTL12.3.2 发送控制寄存器UTCTL12.3.3 接收控制寄存器URCTL12.3.4 波特率选择和调制控制寄存器12.3.5 USART接收数据缓存URXBUF12.3.6 USART发送数据缓存UTXBUF12.4 UART模式,低功耗模式应用特性12.4.1 由UART帧启动接收操作12.4.2 UART模式波特率与时钟频率12.4.3 节约MSP430资源的多处理机模式12.5 波特率的计算13 USART外围接口,SPI模式13.1 USART的同步操作13.1.1 SPI模式中的主模式,MM=1、SYNC=1 13.1.2 SPI模式中的从模式,MM=0、SYNC=1 13.2 中断与控制功能13.2.1 USART接收允许13.2.2 USART发送允许13.2.3 USART接收中断操作13.2.4 USART发送中断操作13.3 控制与状态寄存器13.3.1 USART控制寄存器13.3.2 发送控制寄存器UTCTL13.3.3 接收控制寄存器URCTL13.3.4 波特率选择和调制控制寄存器13.3.5 USART接收数据缓存URXBUF 13.3.6 USART发送数据缓存UTXBUF14 液晶显示驱动14.1 LCD驱动基本原理14.2 LCD控制器/驱动器14.2.1 LCD控制器/驱动器功能14.2.2 LCD控制及模式寄存器14.2.3 LCD显示存储器14.2.4 LCD操作软件例程14.3 LCD端口功能14.4 LCD与端口模式混合应用实例15 A/D转换器15.1 概述15.2 A/D转换操作15.2.1 A/D转换15.2.2 A/D中断15.2.3 A/D量程15.2.4 A/D电流源15.2.5 A/D输入端与多路切换15.2.6 A/D接地与降噪15.2.7 A/D输入与输出引脚15.3 A/D控制寄存器16 其它模块16.1 晶体振荡器16.2 上电电路16.3 晶振缓冲输出附录A 外围模块分布附录B 指令组说明附录C EPROM编程本书用途及表述约定MSP430用户指南以方便工程师及程序员使用的方式提供软件和硬件资料,以帮助开发应用MSP430系列的产品。
MSP430AFE2x3MSP430AFE2x2MSP430AFE2x1 ZHCS136A–NOVEMBER2010–REVISED MARCH2011混合信号微控制器特性•低电源电压范围:1.8V至3.6V•多达3个具有差分可编程增益放大器(PGA)输入的24位三角积分模数(A/D)转换器•超低功耗•具有3个捕获/比较寄存器的16位Timer_A –激活模式:220μA(在1MHz频率和2.2V电压条件下)•串行通信接口(USART),可用软件来选择异步UART或同步SPI–待机模式:0.5μA•16位硬件乘法器–关闭模式(RAM保持):0.1μA•欠压检测器•5种节能模式•具有可编程电平检测功能的电源电压监控器/监视器•可在不到1μs的时间里超快速地从待机模式唤醒•串行板上编程,无需从外部进行电压编程,利用安•16位精简指令集(RISC)架构,高达12MHz系统时全熔丝实现可编程代码保护钟•片上仿真模块•基本时钟模块配置•系列成员汇总于表1。
–带有两个已校准频率的高达12MHz的内部频率•如需了解完整的模块说明,请参阅《MSP430x2xx –内部超低功耗低频(LF)振荡器系列用户指南》,文献编号SLAU144–高达16MHz的高频(HF)晶振–谐振器–外部数字时钟源说明德州仪器(TI)MSP430™系列超低功率微控制器包含几个器件,这些器件特有针对多种应用的不同的外设集。
这种架构与5种低功耗模式相组合,专为在便携式测量应用中延长电池使用寿命而优化。
该器件具有一个强大的16位RISC CPU,16位寄存器和有助于获得最大编码效率的常数发生器。
数字控制振荡器(DCO)可在不到1µs 的时间里完成从低功耗模式至运行模式的唤醒。
MSP430AFE2x3器件是超低功耗混合信号微控制器,集成了三个独立的24位三角积分A/D转换器、一个16位定时器、一个16位硬件乘法器、USART通信接口、安全装置定时器和11个I/O引脚。
第一节时钟与休眠模式3.1.1 时钟系统简介MSP430G2系列单片机的时钟系统需要支持系统低功耗运行的需要。
通过对三个内部时钟信号的运用,用户可很容易的选择功耗最低,效率最高的系统时钟方案。
在软件的控制下,MSP430G2系列单片机运行时可以不接外接晶振,也可接一只外接电阻或者接一到两只外接晶振,也可以外接频率发生器,如图3.1.1所示为G2系列的时钟系统。
图3.1.1 时钟模块组成框图基本时钟模块包括二至四个时钟源:◆LFXT1CLK:外接低频或高频振荡器,如手表晶振,频率发生器,外部时钟源(400kHz 至16MHz).◆XT2CLK:外接高频晶振,范围在400kHz至16MHz◆DCOCLK:内部时钟震荡◆VLOCLK:内部低频低功耗晶振,标准频率是12kHz三种时钟信号可被CPU和外设所使用:◆ACLK:辅助时钟,ACLK可被软件配置成从LFXT1CLK或VLOCLK输入震荡ACLK可以被1,2,4,8分频。
ACLK可以被选用作为外围模块的时钟输入。
◆MCLK:主时钟,主时钟可以从LFXT1CLK或VLOCLK,XT2CLK或DCOCLK输入MCLK用在CPU系统之中。
◆SMCLK:辅助主时钟。
SMCLK可被选择从LFXT1CLK,VLOCLK,XT2CLK或DCOCLK输入。
SMCLK可以被1,2,4,8分频。
SMCLK可被选用为外围模块的时钟。
如图3.1.1所示为G2系列的时钟系统。
需要说明的是并非每一款G2系列的单片机都具有如上的时钟系统,以下做详细说明:MSP430G22x0:无LFXT1,无XT2,不支持ROSCMSP430G21x1,MSP430G2xx2,MSP430G2xx3:LFXT1不支持HF模式,无XT2,不支持ROSC。
MSP430x21x2:无XT23.1.2 时钟系统的操作在一个PUC信号之后,MCLK和SMCLK开始从DCO(大约在1.1MHz),ACLK从LFXT1CLK (内部电容为6pF)获取时钟。
MSP430 系统时钟ACLK、MCLK、SMCLKMSP430 基础时钟模块包含以下3 个时钟输入源。
一、4 个时钟振荡源1、LFXT1CLK:外部晶振或时钟1 低频时钟源低频模式:32768Hz 高频模式:(400KHz-16MHz)2、XT2CLK:外部晶振或时钟2 高频时钟源(400KHz-16MHz) 3、DCOCLK:内部数字RC 振荡器,复位值1.1MHz4、VLOCLK:内部低功耗振荡器12KHz 注:MSP430x20xx:LFXT1 不支持HF 模式,XT2 不支持,ROSC 不支持.(1)LFXT1CLK 低频时钟源:由LFXT1 振荡器产生(如图2 所示)。
通过软件将状态寄存器中OSCOff 复位后,LFXT1 开始工作,即系统采用低频工作。
如果LFXT1CLK 没有用作SMCLK 或MCLK 信号,则可以用软件将OSCOff 置位,禁止LFXT1 工作。
(2)XT2CLK 高频时钟源:由XT2 振荡器产生。
它产生时钟信号XT2CLK,其工作特性与LFXT1 振荡器工作在高频模式时类似。
可简单地通过软件设置XT2 振荡器是否工作,当XT2CLK 没有用作SMCLK 或MCLK 信号时,关闭XT2,选择其他时钟源。
3)DCOCLK 数字控制RC 振荡器。
由集成在时钟模块中的DCO 振荡器产生。
DCO 振荡器是一个RC 振荡器,频率可以通过软件调节,其控制逻辑如图3 所示。
当振荡器LFXT1、XT2 被禁止或失效时,DCO 振荡器被自动选作MCLK 的时钟源。
因此由振荡器失效引起的系统中断请求可以得到响应,甚至在CPU 关闭的情况下也能得到处理。
由基础时钟模块可以提供系统所需的3 种时钟信号,即:ACLK、MCLK、SMCLK。
其中辅助时钟ACLK 是LFXT1CLK 信号经1、2、4、8 分频后得到的。
ACLK 可由软件选作各个外围模块的时钟信号,一般用于低速外设;系统主时钟MCLK 可由软件选择来自LFXT1CLK、XT2CLK、DCOCLK 三者之一,然后经1、2、4、8 分频得到。
msp430 学习经验总结:⼀.MSP430开发环境建⽴1.安装IAR dor msp430 软件,软件带USB仿真器的驱动。
2.插⼊USB仿真器,驱动选择安装⽬录的/drivers/TIUSBFET3.建⽴⼀个⼯程,选择"option"选项,设置a、选择器件,在"General"项的"Target"标签选择⽬标器件b、选择输出仿真,在"Linker"项⾥的"Output"标签,选择输出"Debug information for C-SPY",以输出调试信息⽤于仿真。
c、若选择"Other",Output下拉框选择"zax-m"即可以输出hex⽂件⽤以烧录,注意,此时仿真不了。
d、选择"Debugger"项的"Setup"标签,"Driver"下拉框选择"FET Debugger"e、选择"FET Debugger"项的"Setup"标签,"Connection"下拉框选择"Texas Instrument USB-I"4.仿真器的接⼝,从左到右分别为 " GND,RST,TEST,VCC"⼆.IO⼝数字输⼊/输出端⼝有下列特性:每个输⼊/输出位都可以独⽴编程。
允许任意组合输⼊、输出。
P1 和 P2 所有 8 个位都可以分别设置为中断。
可以独⽴操作输⼊和输出数据寄存器。
可以分别设置上拉或下拉电阻。
在介绍这四个I/O⼝时提到了⼀个“上拉电阻”那么上拉电阻⼜是⼀个什么东东呢?他起什么作⽤呢?都说了是电阻那当然就是⼀个电阻啦,当作为输⼊时,上拉电阻将其电位拉⾼,若输⼊为低电平则可提供电流源;所以如果P0⼝如果作为输⼊时,处在⾼阻抗状态,只有外接⼀个上拉电阻才能有效。
TI MSP430FR2355超低功耗FRAM MCU开发方案TI公司的MSP430FR2355是超低功耗MSP430FRx系列基于FRAM的微控制器(MCU),提供扩展的数据记录和安全功能,在FRAM微控制器系列产品中采用小型LQFP封装(7mm × 7 mm),集成了各种外设和超低功耗. FRAM(铁电存储器)是一种尖端的存储技术,在非易失存储器中集合了闪存和RAM的最好特性.MSP430FR2355工作电压1.8V-3.6V,具有16位RISC架构,高达24MHz系统时钟和8MHz FRAM接入,32KB可编FRAM,512B信息FRAM和4KB RAM,12路12位ADC,两个增强的比较器和集成的6位DAC 作为基准电压,四个智能模拟组合体(SAC-L3),三个16位计时器有三个捕获/比较寄存器(Timer_B3),一个16位计时器有七个捕获/比较寄存器(Timer_B7),32位硬件乘法器(MPY).器件的工作温度–40°到105°C,主要用在烟雾和热检测器,传感器发送器,电路中断器,传感器信号调理,有线工业通信,光模块以及其电池组管理和收费标签.本文介绍了MSP430FR2355主要特性,功能框图以及开发板MSP-EXP430FR2355 LaunchPad™主要特性,框图,电路图,材料清单和PCB设计图.MSP430FR215x and MSP430FR235x microcontrollers (MCUs) are part of the MSP430™ MCU value line portfolio of ultra-low-power low-cost devices for sensing and measurement applications. MSP430FR235x MCUs integrate four configurable signal-chain modules called smart analog combos, each of which can be used as a 12-bit DAC or a configurable programmable-gain Op-Amp to meet the specific needs of a system while reducing the BOM and PCB size. The device also includes a 12-bit SAR ADC and two comparators. The MSP430FR215x and MSP430FR235x MCUs all support an extended temperature range from –40° up to 105°C, so higher temperature industrial applications can benefit from the devices’FRAM data-logging capabilities. The extended temperature range allows developers to meet requirements of applications such as smoke detectors, sensor transmitters, and circuit breakers.The MSP430FR215x and MSP430FR235x MCUs feature a powerful 16-bit RISC CPU, 16-bit registers, and a constant generator that contribute to maximum code efficiency. The digitally controlled oscillator (DCO) allows the device to wake up from low-power modes to active mode typically in less than 10 μs.The MSP430 ultra-low-power (ULP) FRAM microcontroller platform combines uniquely embedded FRAM and a holistic ultra-low-power system architecture, allowing system designers to increase performance while lowering energy consumption. FRAM technology combines the low-energy fast writes, flexibility, and endurance of RAM with the nonvolatile behavior of flash.MSP430FR215x and MSP430FR235x MCUs are supported by an extensive hardware and software ecosystem with reference designs and code examples to get your design started quickly. Development kits include the MSP-EXP430FR2355 LaunchPad™ development kit and the MSP-TS430PT48 48-pin target development board. TI also provides free MSP430Ware™ software, which is available as a component of Code Co mposer Studio™ IDE desktop and cloud versions within TI Resource Explorer.The MSP430 MCUs are also supported by extensive online collateral, training, and online support through the E2E™ community forum.MSP430FR2355主要特性:• Embedded microcontroller– 16-bit RISC architecture up to 24 MHz– Extended temperature: –40°C to 105°C– Wide supply voltage range from 3.6 V down to 1.8 V (operational voltage is restricted by SVS levels, see VSVSH- and VSVSH+ in PMM, SVS and BOR)• Optimized low-power modes (at 3 V)–Active mode: 142 μA/MHz– Standby:– LPM3 with 32768-Hz crystal: 1.43 μA (with SVS enable d)– LPM3.5 with 32768-Hz crystal: 620 nA (with SVS enabled)– Shutdown (LPM4.5): 42 nA (with SVS disabled)• Low-power ferroelectric RAM (FRAM)– Up to 32KB of nonvolatile memory– Built-in error correction code (ECC)– Configurable write protection– Unified memory of program, constants, and storage– 1015 write cycle endurance– Radiation resistant and nonmagnetic• Ease of use– 20KB ROM library includes driver libraries and FFT libraries• High-performance analog– One 12-channel 12-bit analog-to-digital converter (ADC)– Internal shared reference (1.5, 2.0, or 2.5 V)– Sample-and-hold 200 ksps– Two enhanced comparators (eCOMP)– Integrated 6-bit digital-to-analog converter (DAC) as reference voltage– Programmable hysteresis– Configurable high-power and low-power modes– One with fast 100-ns response time– One with 1-μs response time with 1.5-μA low power– Four smart analog combo (SAC-L3) (MSP430FR235x devices only)– Supports General-Purpose Operational Amp lifi er (OA)– Rail-to-rail input and output– Multiple input selections– Configurable high-power and low-power modes– Configurable PGA mode supports– Noninverting mode: ×1, ×2, ×3, ×5, ×9, ×17, ×26, ×33– Inverting mode: ×1, ×2, ×4, ×8, ×16, ×25, ×32– Built-in 12-bit reference DAC for offset and bias settings– 12-bit voltage DAC mode with optional references• Intelligent digital peripherals– Three 16-bit timers with three capture/compare registers each (Timer_B3)– One 16-bit timer with seven capture/compare registers each (Timer_B7)– One 16-bit counter-only real-time clock counter (RTC)– 16-bit cyclic redundancy checker (CRC)– Interrupt compare controller (ICC) enabling nested hardware interrupts– 32-bit hardware multiplier (MPY32)– Manchester codec (MFM)• Enhanced serial communications– Two enhanced USCI_A (eUSCI_A) modules support UART, IrDA, and SPI– Two enhanced USCI_B (eUSCI_B) modules support SPI and I2C• Clock system (CS)– On-chip 32-kHz RC oscillator (REFO)– On-chip 24-MHz digitally controlled oscillator (DCO) with frequency locked loop (FLL) – ±1% accuracy with on-chip reference at room temperature– On-chip very low-frequency 10-kHz oscillator (VLO)– On-chip high-frequency modulation oscillator (MODOSC)– External 32-kHz crystal oscillator (LFXT)– External high-frequency crystal oscillator up to 24 MHz (HFXT)– Programmable MCLK prescaler of 1 to 128– SMCLK derived from MCLK with programmable prescaler of 1, 2, 4, or 8• General input/output and pin functionality– 44 I/Os on 48-pin package– 32 interrupt pins (P1, P2, P3, and P4) can wake MCU from LPMs• Development tools and software (also see Tools and Software)–LaunchPad™ development kit (MSP-EXP430FR2355)– Target development board (MSP-TS43048PT)– Free professional development environments• Family members (also see Device Comparison)– MSP430FR2355: 32KB of program FRAM, 512 bytes of data FRAM, 4KB of RAM– MSP430FR2353: 16KB of program FRAM, 512 bytes of data FRAM, 2KB of RAM– MSP430FR2155: 32KB of program FRAM, 12 bytes of data FRAM, 4KB of RAM– MSP430FR2153: 16KB of program FRAM, 512 bytes of data FRAM, 2KB of RAM• Package options– 48-pin: LQFP (PT)– 40-pin: VQFN (RHA)– 38-pin: TSSOP (DBT)– 32-pin: VQFN (RSM)MSP430FR2355应用:• Smoke and heat detectors• Sensor transmitters• Circuit breakers• Sensor signal conditioning• Wired industrial communications• Optical modules• Battery pack management• Toll tags图1. MSP430FR235x系列功能框图开发板MSP-EXP430FR2355 LaunchP ad™MSP430FR2355 LaunchPad™ Development Kit (MSP-EXP430FR2355)The MSP-EXP430FR2355 LaunchPad™ Development Kit is an easy-to-use Evaluation Module (EVM) for the MSP430FR2355 microcontroller (MCU). The kit contains everything needed to start developing on the ultra-low-power MSP430FRx FRAM microcontroller platform, including onboard debug probe for programming, debugging, and energy measurements. The board also features onboard buttons and LEDs for quick integration of a simple user interface, an onboard Grove connector for external Grove sensors, as well as an ambient light sensor to showcase the integrated analog peripherals.The 24-MHz MSP430FR2355 device features 32KB of embedded FRAM (ferroelectric random access memory), a nonvolatile memory known for its ultra-low power, high endurance, and high speed write access. Combined with 4KB of on-chip RAM, users have access to 32KB of memory to split between their program and data as required. For example, a data logging application may require a large data memory with relatively small program memory, so the memory may be allocated as required between program and data memory.Rapid proto typing is simplified by the 40-pin BoosterPack™ plug-in module headers, which support a wide range of available BoosterPack plug-in modules. You can quickly add features like wireless connectivity, graphical displays, environmental sensing, and much more. Design your own BoosterPack plug-in module or choose among many already available from TI and third-party developers.开发板MSP-EXP430FR2355 LaunchPad™主要特性:• MSP ULP FRAM technology based MSP430FR2355 16-bit MCU• EnergyTrace technology available for ultra-low-power debugging• 40-pin LaunchPad development kit standard leveraging the BoosterPack plug-in module ecosystem • Onboar d eZ-FET debug probe• 2 buttons and 2 LEDs for user interaction• Ambient light sensor for the Out-of-Box Experience demo• Grove connector for external Grove sensors开发板MSP-EXP430FR2355 LaunchPad™包括:• 1 MSP-EXP430FR2355 LaunchPad Development Kit• 1 Mic ro USB cable• 1 Quick Start Guide图2. 开发板MSP-EXP430FR2355 LaunchPad™外形图图3. 开发板MSP-EXP430FR2355 LaunchPad™概述图图4. 开发板MSP-EXP430FR2355 LaunchPad™框图图5. 开发板MSP-EXP430FR2355 LaunchPad™电路图(1)图6. 开发板MSP-EXP430FR2355 LaunchPad™电路图(2)图7. 开发板MSP-EXP430FR2355 LaunchPad™ PCB设计图(1)图8. 开发板MSP-EXP430FR2355 LaunchPad™ PCB设计图(2)图9. 开发板MSP-EXP430FR2355 LaunchPad™ PCB设计图(3)图10. 开发板MSP-EXP430FR2355 LaunchPad™ PCB设计图(4)图11. 开发板MSP-EXP430FR2355 LaunchPad™ PCB设计图(5)图12. 开发板MSP-EXP430FR2355 LaunchPad™ PCB设计图(6)图13. 开发板MSP-EXP430FR2355 LaunchPad™ PCB设计图(7)图14. 开发板MSP-EXP430FR2355 LaunchPad™ PCB设计图(8)图15. 开发板MSP-EXP430FR2355 LaunchPad™ PCB设计图(9)图16. 开发板MSP-EXP430FR2355 LaunchPad™ PCB设计图(10)。
基于MSP430单片机的实时时钟设计基于MSP430单片机的实时时钟设计是一个简单而有趣的项目,可以将当前的时间以数码管的形式显示出来。
本文将介绍如何使用MSP430单片机和数码管来实现实时时钟,包括时钟芯片、显示部分的接线和编程等方面。
首先,我们需要准备的材料和工具有:1. MSP430单片机开发板(例如MSP-EXP430G2 LaunchPad)2.DS1302实时时钟芯片3.4位共阳数码管(例如TM1640)4.杜邦线若干5.面包板6.12MHz晶振7.调试器和编程软件(例如MSP-FET430UIF和MSP430-GCC)接下来,我们开始进行实时时钟的设计。
1.硬件连接:a.将MSP430单片机开发板连接到计算机,并打开编程软件。
b.将DS1302实时时钟芯片插入面包板,并根据其引脚定义连接到MSP430单片机的端口。
c.将4位共阳数码管插入面包板,并根据其引脚定义连接到MSP430单片机的端口。
2.编程设计:a.在编程软件中创建一个新的项目,选择MSP430单片机的适当型号,并设置时钟频率为12MHz。
b.导入DS1302和TM1640的相关库文件,并进行必要的初始化设置。
c.配置MSP430单片机的端口,使其与DS1302和TM1640的引脚连接匹配。
d.编写程序代码,实现实时时钟的功能,包括获取当前时间、将时间转换为数码管的显示格式以及控制数码管进行显示。
3.调试和测试:a.将MSP430单片机从计算机中断开,并将其与电源连接,确保其正常运行。
b.观察数码管是否正确显示当前时间,包括小时、分钟和秒数。
c.如果有错误或不完善的地方,重新调试和修改程序代码,直到实时时钟正常工作。
通过上述步骤,我们可以成功地设计一个基于MSP430单片机的实时时钟(数码管显示)。
这个项目可以作为学习和实践嵌入式系统和单片机编程的绝佳机会,同时也可以作为一个有用和有趣的作品展示给别人。
这个设计还可以进一步扩展和改进,例如添加日期显示功能、设置闹钟功能等。
Page 1 of 12MSP430F2系列16位超低功耗单片机模块原理第4章 Basic Clock + 基础时钟模块+版本: 1.4日期: 2007.6.原文: TI MSP430x2xxfamily.pdf翻译: 张超 哈尔滨理工大学编辑: DC 微控技术论坛版主注:以下文章是翻译TI MSP430x2xxfamily.pdf 文件中的部分内容。
由于我们翻译水平有限,有整理过程中难免有所不足或错误;所以以下内容只供参考.一切以原文为准。
详情请密切留意微控技术论坛。
第四章 基础时钟模块+4.1基础时钟模块+介绍基础时钟模块+支持低系统消耗和超低功耗。
采用三种片内时钟信号,用户可以选择合适的性能和低功耗。
基础时钟模块只需接一个外部电阻、一个或两个外部晶体、或者用振荡器,通过软件控制。
基础时钟模块+有4个时钟源:LFXT1CLK:由低频时钟晶体或外接32768Hz时钟源产生的低频/高频振荡器或由标准晶体、振荡器,或外部400KH z~16M Hz的外部时钟源提供。
XT2CLK:可供选择的高频振荡器,由标准晶体、振荡器,或外部400KH z~16M Hz的外部时钟源提供。
DCOCLK:片内可数字控制的振荡器。
VLOCLK:片内超低功耗、12KH z的低频振荡器。
基础时钟模块可提供的三种时钟信号:ACLK:辅助时钟。
ACLK由软件选择来自LFXT1CLK和VLOCLK之一的时钟信号。
ACLK 经1,2,4,8分频后得到。
ACLK可由软件选作各个外围模块。
MCLK:主时钟。
MCLK由软件选择来自LFXT1CLK,VLOCLK,XT2CLK(如果片内提供),DCOCLK之一的时钟信号。
MCLK由1,2,4,8分频得到。
MCLK用于CPU和系统。
SMCLK:子系统时钟。
SMCLK由软件选择来自LFXT1CLK,VLOCLK,XT2CLK(片内提供),DCOCLK之一的时钟信号。
SMCLK由1,2,4,8分频得到。