|
EDA365欢迎您!
您需要 登录 才可以下载或查看,没有帐号?注册
x
#include "msp430g2553.h"
% B4 W+ P0 [8 K* e//p1.2输出50%方波,p2.1和2.4输出50%和25%波形
$ I; s6 x9 [1 h3 O+ f' Tvoid main (void)
: i. D# t% G/ D' v0 e{ 0 {: Q( U4 u# v. t( t+ A7 G0 @5 R
WDTCTL= WDTPW + WDTHOLD; //设置看门狗控制寄存器,关看门狗 / j7 l4 N1 q6 v4 R7 B
3 x0 G8 P% {4 r! X$ K
//定时器A0的
4 ~5 V! @% a | TACTL = TASSEL_1 +TACLR+MC_1; // 设置定时器A控制寄存器,
. O& x! ~. o& ]9 k d* P: m( _ // TASSEL_1选择辅助时钟ACLK,TASSEL_2选择子系统时钟SMCLK;
3 X2 z* d$ } H% C) b" ]% Q# a6 Y // TACLR=0x0004,清除定时器A计数器
8 b" @) M8 c0 \7 l0 W1 t
* ~/ u0 q/ s7 @; E CCR0 =12000; //设置捕获/比较寄存器,初始值为12000,对于12KHz的频率,周期相当于1s
5 i! c; n) A, `* m/ o2 g1 W CCR1=6000; //占空比50%/ Q( l; w; r5 |, v; R
CCTL1=OUTMOD_3;//置位复位,TAR等于CCR1时置位1,等于CCR0复位0,
% U% }6 Z& o* |* y: j //增计数时相当于0到CCR1为低电平,ccr1到CCR0为高电平,. D: O2 s/ b/ E& w6 V/ P7 o% H6 x
//OUTMOD_7与之相反) p8 U) U; s( r* T4 Y
! r$ ~9 G/ U+ M g: k! H CCR2=3000; //占空比25%,错了,没有TA0.2$ I. n3 h! @- q* E3 ~
CCTL2=OUTMOD_3;//置位复位,TAR等于CCR1时置位1,等于CCR0复位0,
( m3 K' P+ W3 [7 l9 b3 o3 Y$ [ //增计数时相当于0到CCR1为低电平,ccr1到CCR0为高电平,
& ?7 r# u! R+ f //OUTMOD_7与之相反: |! P0 i0 z e) D' |" `
P1SEL |=BIT2; 4 e4 d! \: V/ c3 L" @
P1DIR |=BIT2; //输出 TA0.15 L# e( ^% F( b) \- Z) f- e+ `4 G
" f! [# a; H9 J! X' i7 n, E
9 o" y+ |$ t" d4 y! h+ g # O2 Z! _$ ]. D, r& [, M$ k
//定时器A1的
( {4 z/ c7 N D k( Q! S TA1CTL = TASSEL_1 +TACLR+MC_1; // 设置定时器A控制寄存器, $ W( m/ O6 l6 p# d
// TASSEL_1选择辅助时钟ACLK,TASSEL_2选择子系统时钟SMCLK; % U# x6 ~1 G# s1 f' }
// TACLR=0x0004,清除定时器A计数器 1 N+ k4 J& t7 k0 H
TA1CCR0 =12000; //设置捕获/比较寄存器,初始值为32768,对于32768Hz的频率,周期相当于1s
- W8 O( m" e' x f2 y
. p( J2 K p/ a! }8 X- W TA1CCR1=6000; //占空比50%
8 B5 Q' ~! L, N+ r TA1CCTL1=OUTMOD_3;//置位复位,TAR等于CCR1时置位1,等于CCR0复位0,- R% K1 Z5 l1 D% K& `
//增计数时相当于0到CCR1为低电平,ccr1到CCR0为高电平,1 i! h7 S$ K0 C' J4 a
//OUTMOD_7与之相反
, T5 Y! B2 Q* J TA1CCR2=3000; //占空比25%* w$ s# z( C9 @/ l% z& R
TA1CCTL2=OUTMOD_3;//置位复位,TAR等于CCR1时置位1,等于CCR0复位0,
3 F1 L `4 z! B' N //增计数时相当于0到CCR1为低电平,ccr1到CCR0为高电平," {% w, Q; P2 d0 E4 \. Q9 p. q
//OUTMOD_7与之相反3 x. W0 C d1 E$ P
P2DIR |=BIT1+BIT4; //输出 TA2.1和TA2.2
7 i, A' I- U- ` P2SEL |=BIT1+BIT4; & }8 t0 w$ m; r4 i4 {9 N
while(1) //无限次while循环
& }' O; l5 I1 f! G3 u+ z T {- |9 z3 z+ J: J5 S
_NOP();
$ m" J3 G. R. E1 f! T/ N& u/ ? }
: ^9 |' L- p9 u; U2 M} |
|