初学msp430一点点发现
发现msp430和51和stm32都有一点相似。相似处————stm32:
都是控制寄存器,而不是位操作。但是配置IO口,都需要配置相应的IO参数。
相似处-----------51
起初不需要配置时钟,这比stm32号了一点。但是后期不知道是不是也需要相应的配置。
再说今天写的程序吧
#include "msp430x54x.h"
#include <stdlib.h>
#include <stdio.h>
/*PxINPx 口输入寄存器 只读 无
PxOUT Px 口输出寄存器 可读可写 保持不变
PxDIR Px 口方向寄存器 可读可写 0(全部输入)
PxSEL Px 口第二功能选择 可读可写 0(全部为IO 口)
PxIEPx 口中断允许 可读可写 0(全部不允许中断)
PxIES Px 口中断沿选择 可读可写 保持不变
PxIFG Px 口中断标志位 可读可写 0(全部未发生中断)*/
#define CPU_F ((double)8000000)
#define delay_us(x) __delay_cycles((long)(CPU_F*(double)x/1000000.0))
#define delay_ms(x) __delay_cycles((long)(CPU_F*(double)x/1000.0))
voidmain( void )
{
WDTCTL = WDTPW + WDTHOLD;//关闭看门狗
P5DIR |= BIT7; //
while(1)
{
P5OUT |=BIT7;
delay_ms(100);
P5OUT &=~ BIT7;
delay_ms(100);
}
}
如果把P5DIR注释掉,跑马灯是无法成功的。经过自己思考,io口默认是可读的。所以必须强制为可写不可读。
---------------------
页:
[1]