|
EDA365欢迎您!
您需要 登录 才可以下载或查看,没有帐号?注册
x
#include "msp430g2553.h"
; c* S% L) B# n' c# S* ~. s! Q//p1.2输出50%方波,p2.1和2.4输出50%和25%波形5 |3 A1 S2 F1 z3 o6 f+ P4 l; f
void main (void)
7 A, J; Z% R4 m V2 w+ o) @4 y{ % m: G1 ]) G! u3 k5 G$ l
WDTCTL= WDTPW + WDTHOLD; //设置看门狗控制寄存器,关看门狗
4 y: o0 R9 H7 w7 `! I) G 1 w4 L5 ^" N1 y5 X" f5 @! w8 ^
//定时器A0的$ b$ \) _! ]$ H4 I# w, s
TACTL = TASSEL_1 +TACLR+MC_1; // 设置定时器A控制寄存器,
; `0 q+ X# ~( {* Y // TASSEL_1选择辅助时钟ACLK,TASSEL_2选择子系统时钟SMCLK;
' h- E* V# }2 |1 [, r // TACLR=0x0004,清除定时器A计数器 f* J9 o3 V( E% B5 A& F
3 ?% E6 e" z @$ h" i5 C CCR0 =12000; //设置捕获/比较寄存器,初始值为12000,对于12KHz的频率,周期相当于1s , N6 Q. s' j8 y* {5 U
CCR1=6000; //占空比50%9 Q, w5 t2 U! s" g: l8 y
CCTL1=OUTMOD_3;//置位复位,TAR等于CCR1时置位1,等于CCR0复位0,
1 C. C9 C; o+ s //增计数时相当于0到CCR1为低电平,ccr1到CCR0为高电平,+ u5 r2 _. I0 z
//OUTMOD_7与之相反. q2 ~7 c. N) J. C6 D# `, e4 o
0 @. g2 \% [: [( i CCR2=3000; //占空比25%,错了,没有TA0.23 j2 b% k! b1 L8 D5 e
CCTL2=OUTMOD_3;//置位复位,TAR等于CCR1时置位1,等于CCR0复位0,
% O: C+ H# r5 |& u- K6 ~ //增计数时相当于0到CCR1为低电平,ccr1到CCR0为高电平,6 ?4 t" `$ F% A
//OUTMOD_7与之相反& j' n- b4 W2 a& r* E% x
P1SEL |=BIT2;
% q- p' U" Q! }- T3 e P1DIR |=BIT2; //输出 TA0.1
6 t' K' a8 O$ U/ f, N 3 }; U8 q1 Q5 L# W" G2 E) {
/ Y5 I0 I& |. ]3 m1 P: M
' [, V& I3 R- n4 g
//定时器A1的
; h# o. X4 l& V* J# f TA1CTL = TASSEL_1 +TACLR+MC_1; // 设置定时器A控制寄存器, * K9 N( g. f3 W
// TASSEL_1选择辅助时钟ACLK,TASSEL_2选择子系统时钟SMCLK; 0 h- C8 b- F% B4 L5 D1 C+ ~2 ]; J
// TACLR=0x0004,清除定时器A计数器 * }$ l2 }, u) x, }
TA1CCR0 =12000; //设置捕获/比较寄存器,初始值为32768,对于32768Hz的频率,周期相当于1s ) c* z7 F |7 N$ ?
* D* _" E0 U) o& y) d* {. y
TA1CCR1=6000; //占空比50%# m) h; o+ w6 j) y+ n5 f* m
TA1CCTL1=OUTMOD_3;//置位复位,TAR等于CCR1时置位1,等于CCR0复位0,
* o& r4 ] ?; W0 V& H //增计数时相当于0到CCR1为低电平,ccr1到CCR0为高电平,( K+ B. Y8 a& e; \4 X3 F
//OUTMOD_7与之相反! M: `. f. p) M, O5 H) r) Z, K
TA1CCR2=3000; //占空比25%- B p9 }8 B; J V3 b
TA1CCTL2=OUTMOD_3;//置位复位,TAR等于CCR1时置位1,等于CCR0复位0,
2 Y3 x- g0 X3 M! i& F- i9 Q //增计数时相当于0到CCR1为低电平,ccr1到CCR0为高电平,
5 o$ o/ P; W' |: L9 l! T/ W6 X //OUTMOD_7与之相反. o+ x, z: t/ T0 V
P2DIR |=BIT1+BIT4; //输出 TA2.1和TA2.27 O& T# v9 k$ [6 c( A! U2 D
P2SEL |=BIT1+BIT4;
7 [1 t9 L% {! I6 d o8 ^ while(1) //无限次while循环
( C; _& |# x4 D! o7 u7 [ {3 a' A+ c0 |& A' t
_NOP();
; {3 _$ p0 Z) V6 q, o0 B0 t }
( L: p, M) A ^& v4 U: D7 w- S} |
|