专家
公告
财富商城
电子网
旗下网站
首页
问题库
专栏
标签库
话题
专家
NEW
门户
发布
提问题
发文章
MSP430G2231产生PWM波
2019-03-24 13:58
发布
×
打开微信“扫一扫”,打开网页后点击屏幕右上角分享按钮
站内问答
/
TI MCU
17400
5
1141
如何用MSP430G2231产生150Kz的方波?求教各位大神,谢谢了
此帖出自
小平头技术问答
友情提示:
此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
5条回答
juring
2019-03-24 16:31
不知道怎么插入代码,直接贴上来了~这是之前写的一个,两路PWM,一路5.6k,一路150k~ 你可以试试看~
#include <msp430g2553.h>void main(void){ WDTCTL = WDTPW + WDTHOLD; // Stop WDT BCSCTL2 = SELM_0 + DIVM_0 + DIVS_1; //2
if (CALBC1_16MHZ != 0xFF) { DCOCTL = 0x00; BCSCTL1 = CALBC1_16MHZ; /* Set DCO to 16MHz */ DCOCTL = CALDCO_16MHZ; } BCSCTL1 |= XT2OFF + DIVA_0; BCSCTL3 = XT2S_0 + LFXT1S_2 + XCAP_1; P2SEL |= BIT0+BIT1; // P2.0 - P2.1 option select P2DIR |= BIT0+BIT1; // PP.0 - P2.1 outputs TA1CCTL0 = OUTMOD_4+ CCIE; // TA1CCR0 toggle, interrupt enabled TA1CCTL1 = OUTMOD_4+ CCIE; // TA1CCR1 toggle, interrupt enabled
TA1CTL = TASSEL_2 + MC_2; // SMCLK, Contmode, int enabled _BIS_SR(LPM0_bits + GIE); // Enter LPM0 w/ interrupt}
// Timer A0 interrupt service routine#pragma vector=TIMER1_A0_VECTOR__interrupt void Timer_A0 (void){ TA1CCR0 += 664; // Add Offset to CCR0 1.4k*4}
// TimerA1 Interrupt Vector (TA1IV) handler#pragma vector=TIMER1_A1_VECTOR__interrupt void Timer_A1(void){ switch( TA1IV ) { case 2: TA1CCR1 += 27; // Add Offset to CCR1 150k break; }}
加载中...
查看其它5个回答
一周热门
更多
>
相关问题
相关文章
×
关闭
采纳回答
向帮助了您的知道网友说句感谢的话吧!
非常感谢!
确 认
×
关闭
编辑标签
最多设置5个标签!
保存
关闭
×
关闭
举报内容
检举类型
检举内容
检举用户
检举原因
广告推广
恶意灌水
回答内容与提问无关
抄袭答案
其他
检举说明(必填)
提交
关闭
×
打开微信“扫一扫”,打开网页后点击屏幕右上角分享按钮
×
付费偷看金额在0.1-10元之间
确定
×
关闭
您已邀请
0
人回答
查看邀请
擅长该话题的人
回答过该话题的人
我关注的人
#include <msp430g2553.h>void main(void){ WDTCTL = WDTPW + WDTHOLD; // Stop WDT BCSCTL2 = SELM_0 + DIVM_0 + DIVS_1; //2
if (CALBC1_16MHZ != 0xFF) { DCOCTL = 0x00; BCSCTL1 = CALBC1_16MHZ; /* Set DCO to 16MHz */ DCOCTL = CALDCO_16MHZ; } BCSCTL1 |= XT2OFF + DIVA_0; BCSCTL3 = XT2S_0 + LFXT1S_2 + XCAP_1; P2SEL |= BIT0+BIT1; // P2.0 - P2.1 option select P2DIR |= BIT0+BIT1; // PP.0 - P2.1 outputs TA1CCTL0 = OUTMOD_4+ CCIE; // TA1CCR0 toggle, interrupt enabled TA1CCTL1 = OUTMOD_4+ CCIE; // TA1CCR1 toggle, interrupt enabled
TA1CTL = TASSEL_2 + MC_2; // SMCLK, Contmode, int enabled _BIS_SR(LPM0_bits + GIE); // Enter LPM0 w/ interrupt}
// Timer A0 interrupt service routine#pragma vector=TIMER1_A0_VECTOR__interrupt void Timer_A0 (void){ TA1CCR0 += 664; // Add Offset to CCR0 1.4k*4}
// TimerA1 Interrupt Vector (TA1IV) handler#pragma vector=TIMER1_A1_VECTOR__interrupt void Timer_A1(void){ switch( TA1IV ) { case 2: TA1CCR1 += 27; // Add Offset to CCR1 150k break; }}
一周热门 更多>