历史上的今天
今天是:2024年10月11日(星期五)
2019年10月11日 | MSP430单片机各种寄存器总结(5)——Timer_A0
2019-10-11 来源:eefocus
参考资料:
王宏波老师的PPT
MSP430F6638用户手册
王宏波老师实验教程
本章最新更新日期:2018.12.22
第五章 Timer_A0寄存器
5.1 TA0CTL


【注意】Timer_A0有两种中断,一种是TAIFG,一种是TAxCCR0 CCIFG
5.2 TA0R
TA0的16位计数器,这个没啥好说的
我起啦,一枪秒啦,有什么好说的
5.3 TA0CCTLn(n=0~6)


5.4 TA0CCRn

这个就是存放比较寄存器的值,可以用来设置周期和占空比
5.5 TA0IV

TAIV中断的中断矢量寄存器,当除TA0CCR0之外的中断标志位置位时,这里面的值就会改变,不同的值对应了不同的中断,可以在终端服务函数中查看这个寄存器的值来确定是哪一个中断到来。
注意这个中断服务函数的中断矢量(TIMER0_A1_VECTOR)和本征函数(__even_in_range(TA0IV,14))的运用。
#pragma vector=TIMER0_A1_VECTOR
__interrupt void TIMER0_A1_ISR(void)
{
switch(__even_in_range(TA0IV,14))// __even_in_range()本征函数,用于多源中断的查询。
{
//优先级从高到低,已经被硬件规定好了
case 0: break; // No interrupt
case 2: break; // TAxCCR1 CCIFG
case 4: break; // TAxCCR2 CCIFG
case 6: break; // TAxCCR3 CCIFG
case 8: break; // TAxCCR4 CCIFG
case 10: break; // TAxCCR5 CCIFG
case 12: break; // TAxCCR6 CCIFG
case 14: break; // TAxCTL TAIFG
default: break;
}
}
史海拾趣
|
我用的是AD0804,按时序图写出的状态机程序,但是在数码管老是无法正常显示,数字不是老跳就是定在一个值不动,我让其每隔0.5秒就转换一次 always@(posedge clk) ...… 查看全部问答> |
|
我用的飞凌的Uboot下载NK.bin,提示出错,提示错误如下: real entry is 0x%00000000, physical address is 0x%00000000 指示检查了程序,是在读取NK.bin里面的记录时出的错。 NK.bin文件头,即7个字节的头文件读取正确,代码如下: if(strncmp ...… 查看全部问答> |
|
我们是一家总部在香港,主营半导体业务,方案设计、开发及推广的专业公司。 有成熟的音视频多媒体、高清显示等方面的产品方案和设计团队,现因业务发展,急需招聘硬件程序员。 我们为您提供良好的福利待遇和薪酬体制。 工作地点在南京广州路和珠 ...… 查看全部问答> |
|
我在SQL2005上执行下面这条语句没有问题,但是在CE上就错了,请问怎么解决? select * from ( Select SakuseiHiduke, case DakokuCode when \'01\' then max(SakuseiJikoku) else \'\' end as ShuKkinTime, case DakokuCode when \'02\' then m ...… 查看全部问答> |
|
此款直流稳压开关电源是在深圳华强北买的 直流电压输出范围是0-30V 直流电流最大输出5A [ 本帖最后由 dongguanze 于 2011-7-31 23:49 编辑 ]… 查看全部问答> |
|
关于单片机设计求各路大神帮帮忙!!!!!!急急急!导师要题目!关于51单片机不能是烂大街的 本人水平太渣 求助论坛各位大神!!!!!!!!!… 查看全部问答> |




