|
MCU的討論區怎麼都沒有什麼人在討論或是詢問有關TI MSP 430的文章啊!
: S* W. A8 n1 N6 L' ]$ v( O6 T$ v6 N: E, z' d6 f: f8 N
想要詢問如何讓IO可以震出4MHZ
! Z1 X [/ z3 s- X8 K& H1 M; K
5 x( ], s+ J4 C! S6 @) Y0 U請問一下怎樣設定才能讓IO拉出4MHZ的頻率呢; W, ?2 p6 @( Q7 M7 m
以下是我得程式 他最多只到665k# [( }8 g% V0 l, k
void main(void)
9 y6 R4 j4 Q$ G( I- m( B{/ E' i5 Z, b& B) T
WDTCTL = WDTPW + WDTHOLD; // Stop watchdog timer
: W- O# i# F) M2 U+ NP1DIR |= 0x01; // Set P1.0 to output direction l/ E( S& ~4 U7 o* P
P5DIR |= 0x70; // P5.6,5,4 outputs
8 I m3 I9 F$ f( g9 |P5SEL |= 0x70; // P5.6,5,5 options P, M0 U3 p* B6 l% U8 |
unsigned int i;
6 f& m9 x- E4 n! c5 ABCSCTL1 &= ~XT2OFF;
/ \$ B2 U' y0 I5 }& G//XT2震盪器開啟5 q( F2 _# I, m! _' Z, R* `& o. W) t
//LFTX1工作在低頻模式
, ~: S9 [9 Q4 @8 ^//ACLK的分頻因子為1
& ^0 `: e6 ], M7 o( K$ J" ~
8 X. H) n) ^2 C# Ddo
0 x7 _2 n7 b2 U9 K9 X- l& X{$ x9 J/ J( a% s# U& @: b2 j
// 清除OSCFault標誌9 c* M( H; G& V. P
IFG1 &= ~OFIFG; * _" Y* U! _3 |' V
for (i = 0x20; i > 0; i--);
# A g% t4 F6 l$ r9 i0 i$ n! M2 p2 ?}
; Y3 n" ^) G/ V8 }2 s1 h% s- ?while ((IFG1 & OFIFG) == OFIFG);// 如果OSCFault =1
' c4 m/ _) T( O3 @8 H
* a/ M+ [& P, \$ f//將寄存器的內容清零
1 R s" l- C1 W5 `1 kBCSCTL2 = 0X00;
6 J9 z9 Z5 s6 x6 d6 ]//MCLK的時鐘源為TX2CLK,分頻因子為17 Y: _+ i, d$ m/ M1 l. n7 ^! ]0 y
BCSCTL2 += SELM1;
1 z6 J$ t9 H3 l' T( k) T0 s% R4 ]//SMCLK的時鐘源為TX2CLK,分頻因子為1
$ K0 p+ _& U. z7 ]6 d$ SBCSCTL2 += SELS;
' ~' v+ T/ G; l4 B4 Q% J/ Zfor (;;)
1 r' O* g, S% F/ ?$ n( z @: k{
8 H" \) {# H' j/ fvolatile unsigned int i;
! l: F6 J% b' G" U3 D, R" Q4 n0 H& F
! ?6 Y* | T9 o7 I2 \P1OUT ^= 0x01; // Toggle P1.0 using exclusive-OR8 u7 r7 i: I: z" L9 [' g' t1 }$ O
: Y7 l6 _2 @2 P+ n) ~& |* R, Q7 f3 j( F( Y
}
, |- B5 ^' o2 e/ Q) m} |
|