文档详情

MSP430单片机及设计实例.ppt

发布:2017-04-01约7.41千字共63页下载文档
文本预览下载声明
基本时钟编程示例 //管中窥豹 例:设MSP430F149单片机的MCLK = XT2, SMCLK =DCOCLK,将MCLK由P5.4输出 (MSP430X14X中引脚P5.4和MCLK复用)。 实现上述功能的程序如下: #include msp430x14x.h void main(void) { unsigned int i; WDTCTL = WDTPW + WDTHOLD; // 停止看门狗 P5DIR |= 0x10; // P5.4 输出 P5SEL |= 0x10; // P5.4 用作MCLK输出 续前页: BCSCTL1 = ~XT2OFF; // XT2有效 do { IFG1 = ~OFIFG; //清除振荡器失效标志 for (i = 0xFF; i 0; i--); // 稳定时间 } while ((IFG1 OFIFG) != 0); // 如果振荡器失效标志存在 BCSCTL2 |= SELM1; // MCLK = XT2 for (;;); } 相关寄存器说明——基本时钟系统控制寄存器1 相关寄存器说明——BCSCTL2和DCOCTL 相关寄存器说明——IFG1(中断标志寄存器1) 相关寄存器说明——IE1(中断使能寄存器1) 相关寄存器说明——看门狗定时器寄存器 相关寄存器说明——PxSEL和PxDIR 因为MSP430F149是一款低功耗的单片机、其IO端口的驱动能力十分有限,所有在数码管的段选信号、位选信号与MCU之间增加了两片74HC573,用作缓冲驱动,这样既可以正常驱动数码管又可以保护MCU的IO端口不会因为电流过大而损毁。 74HC573是8位锁存器,它有一个输出使能端OΕ,一个锁存使能端LE;在硬件电路设计中将LE与GND连接,即保证输出跟随输入保持同步变化。OΕ连接到了移位寄存器74HC595的一个并行输出位,通过74HC595的输出电平可以决定OΕ连接低电平还是高电平,从而可以控制74HC573是否输出信号,这样虽然增加了使用的复杂性但是避免了复用相同IO的不同电路彼此影响。 11、电平转换电路 SN74LVC4245是一个8位的双向电平转换器件,支持3.3V与5V电平之间的双向转换。74LVC4245的输出使能控制端OΕ和电平转换方向控制端DIR均连接到了74HC595的并行输出位,由74HC595决定是否是否使能芯片,已经确定电平转换方向。 12、PS2转换电路 PS2端口使用了标准的六芯插座,可以接收来自标准键盘、鼠标的数据。由于键盘、鼠标都是5V供电系统,而MSP430F149只能工作在3.3V,所以需要在两者之间进行电平转换。根据键盘的工作原理,MCU只要接收键盘发送过来的时钟信号和数据信号,然后对数据信号进行解码就可以了。为此利用电平转换电路的两根数据线,让键盘的时钟线CLK连接SN74LVC4245的A8端口,键盘的数据线DATA连接SN74LVC4245的A7端口,这样就可以利用SN74LVC4245进行电平转换了。 USB芯片的数据端口与MCU的P5端口连接,控制端口与MCU的IO连接关系为: P2.0——WR_N,P2.1——RD_N,P2.2——A0,P2.3——CS_N。MSP430系列单片机没有外部总线接口,需要上面的四个IO与P5口配合模拟数据/地址复用的总线读写时序,从而实现对D12的操作。 13、PS2转换电路 14、流水灯电路 经过74HC573的隔离以后,M
显示全部
相似文档