您的位置 首页 产品

MSP430F5529 番外(一)常用内置函数和一些阐明

1)MSP430F5529支持最高工作频率为25MHZ,也就是说你通过锁相环倍频来提高系统运行速度是有一个限制的,最高只能到25MHZ(再高没意思

1) MSP430F5529支撑最高作业频率为25MHZ,也便是说你经过
锁相环倍频来进步体系运转速度是有一个约束的,
最高只能到25MHZ(再高没意思了)。

2)几个重要的内联函数
(内联函数界说在intrinsics.h中,可是这几个函数运用的时分
不需求事前声明该文件头)
①__bic_SR_register();
将CPU中SR寄存器中的某些位清零。行将括号内的位清零。
例:__bic_SR_register(GIE);//将GIE位清零,即封闭总中止
②__bis_SR_register();
将CPU中SR寄存器中的某些方位1。行将括号内的方位1。
③ __interrupt
放在函数前面,标志中止函数。下面这段程序是看门狗
WDT的中止服务函数。WDT_VECTOR为看门狗的中止向量。 举例:
#pragma vector=WDT_VECTOR
__interrupt void WatchDog(void)
{… }
④ __monitor
放在函数前面,功用是声明当这一函数履行的时分主动封闭中止。应该尽量缩短这样的函数,不然,中止事情无法得到及时的呼应。
⑤ __bic_SR_register_on_exit();
功用:用于一个中止函数或许不行中止函数(标志为__monitor)回来时,将CPU内SR寄存器中的某些位清0.
⑥ __bis_SR_register_on_exit();
功用:用于一个中止函数或许不行中止函数(标志为__monitor)回来时,将CPU内SR寄存器中的某些方位1.
⑦ __no_init
放在全局变量前面,功用是使程序启动时不为变量赋初值
⑧ __disable_interrupt
封闭总中止
别的一个相同效果的表达为: _DINT()
⑨ __enable_interrupt
敞开总中止
别的一个相同效果的表达为: _EINT()
⑩__even_in_range( , );
常被用在多源中止的查询中,如switch( __even_in_range(TAIV,10)
意思是:只要在TAIV的值是在0–10内的偶数时才会履行
switch函数内的句子。其效果是进步switch句子的功率

A. _NOP()
空操作,等价于__no_operation指令

B. __get_SP_register(void)
功用:回来仓库指针寄存器SP的值。

C. __get_SR_register_on_exit(void)
功用:用于一个中止函数或许不行中止函数
(标志为__monitor)回来时,回来状况寄存器SR的值。

D. __bcd_add_short(unsigned short,unsigned short);
功用:两个16为BCD格局的数字相加,回来和。

E. __bcd_add_long(unsigned long,unsigned long);
功用:两个32位BCD格局的数字相加,回来和。

F. __delay_cycles(x);
体系自带的准确延时。x有必要是常量或则是常量表达式,如果是变量则编译报错!延时的时刻为x乘以MCLK的时钟周期

(3)关于MSP430许多寄存器怎样处理的问题:
MSP430寄存器太多了,把每一个都记住真实太难。所以,我的主张是,学习的时分,把重要的常用的寄存器记住。
至于其它许多寄存器,咱们只需求有一个形象,知道这些寄存器能够操控那些设置。到具体用的时分,再查找技能手册;

(4)头文件msp430f5529.h
里边不只界说了对各个寄存器的声明,还界说了许多很便利的东东。
比方你要进入低功耗形式1:LPM1;
比方你要把定时器A0的时钟选为SMCLK:
最原始的做法是TA0CTL=0x0200,但现在有更明晰的做法TA0CTL=TASSEL_2;//时钟源挑选形式2

所以说要不断开掘不断堆集!

(5)中止寄存器的姓名
咱们都知道中止函数是怎样写的,形式为:
#pragma vector=中止向量地址(名)
__interrupt void 自界说中止函数名(void)
{… }
可是想要写出来,你首要得知道中止向量叫什么姓名吧
到现在,咱们现已遇到了看门狗中止WDT_VECTOR、引脚P2的外部中止PORT2_VECTOR、定时器A0(CCR1-CCR4和TAIFG)中止TIMER0_A1_VECTOR
还有许多的中止向量,咱们现在还不知道姓名该怎样办。
翻开msp430f5529.h,拉到该文件底部,就展现了界说的各种中止向量名,还有解说。

(6)
MSP430的最大特征便是低功耗,这个是体现在各个方面的。在全体层次上,MSP430能够设置整个体系的作业形式以到达适应作业要求且下降功耗的意图。
为了下降功耗,处理器有几个考虑:
一个是下降作业电压(F5529为3.3V很低了吧,并且内部中心电压VCORE更低);
第二个便是把暂时不必的模块功用封闭掉(F5529各个模块都能够独立运转,如定时器、A/D转化、看门狗等都能够在CPU休眠的状况下独立作业。若需求主CPU作业,任何一个模块都能够经过中止唤醒CPU,从而使体系以最低功耗运转。
);
第三个办法便是下降作业时钟频率。

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/xinpin/chanpin/256145.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部