MSP430单片机的通用IO接口解读
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
使用。这样就为设计开发提供了方便,简化了单片机系统的硬件设计
工作。
1
第3章 MSP430
MSP430F249单片机的每组I/O口都有4个控制寄存器,分 别为方向控制寄存器 PxDIR、输入寄存器 PxIN、输出 寄存器PxOUT和功能选择寄存器PxSEL,此处,小写 字母“x”表示6组I/O口的数字序号,x= 1~6,即P1口的 方向控制寄存器为P1DIR,P6口的方向控制寄存器为 P6DIR。另外,P1和P2口还具有3个中断寄存器,分别 为中断允许寄存器PxIE、中断沿选择寄存器PxIES和中 断标志寄存器PxIFG,此处,x= 1~2。
2
第3章 MSP430
3
第3章 MSP430
Hale Waihona Puke Baidu
4
第3章 MSP430
Px口的每个引脚都可以单独配置成输入或者输出方向的控制。 需要注意的是:MSP430系列单片机端口输出电流最大为
6mA,当需要驱动比较大的负载的时候,需要利用三极管
或者缓冲器来提高端口的驱动能力。 MSP430 单片机的 I/O口为双向I/O口,因此在使用 I/O口前首 先要用方向选择寄存器来设置每个 I/O 口的方向,在程序 运行中还可以动态改变I/O口的方向。例如P1.0、P1.1、 P1.2接有按键,P1.4、P1.5、P1.6接有 LED,通用I/O接口 应用示例如图3.1所示。 P1DIR |= BIT4+BIT5 +BIT6; // P1.4、P1.5、P1.6设为输出
第3章 MSP430
第3章 MSP430单片机的通用IO接口
I/O口是单片机控制系统对外沟通的最基本部件,从基本的键盘、LED 显 示到复杂的外设芯片等,都是通过I/O口的输入、输出操作来进行读
取或控制的。为满足单片机系统对外部设备控制的需要,MSP430提
供了许多功能强大、使用方便灵活的输入/输出接口。为了减少芯片 引脚的数量以降低芯片的成本,又提供更多功能的I/O口,现在许多 单片机都采用了I/O口复用技术,即端口可作为通用的I/O口使用,也 可作为某个特殊功能的端口使用,用户可根据系统的实际需要来定义
R1 R2 R3
330 330 330
D1 D2 D3
6
第3章 MSP430
P1OUT = BIT4+BIT5 +BIT6;
// P1.4~P1.6输出高电平
// 二极管阳极接高电平,二极管不发光 if((P1IN & BIT0) == 0) P1OUT |= BIT4; //P1.4输出低电平点 亮LED
P1DIR &= ~ (BIT0+BIT1+BIT2);
入(可省略)
// P1.0、P1.1、P1.2设为输
5
第3章 MSP430
图3.1 通用I/O接口应用示例图
R4
10k
R5
10k
R6
10k
U1
36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 59 60 61 2 3 4 5 6 10 7 11 8 9 64 62 P4.0/TB0 P4.1/TB1 P4.2/TB2 P4.3/TB3 P4.4/TB4 P4.5/TB5 P4.6/TB6 P4.7/TBCLK P1.0/TACLK/CAOUT P1.1/TA0 P1.2/TA1 P1.3/TA2 P1.4/SMCLK P1.5/TA0 P1.6/TA1 P1.7/TA2 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 52 53 58 57 55 54 56
8
第3章 MSP430
分析说明:发光二极管LED是一种半导体器件,当两端 压降大于1V时,通过 5mA 左右的导通电流时即可发光。 导通电流越大,亮度越高,但若电流过大,会烧毁二 极管,一般我们控制在3~20mA。在这里,给发光二极 管串联一个电阻的目的就是为了限制通过发光二极管 的电流不要太大,因此这个电阻又称为“限流电阻”, 通常取300~1000Ω。MSP430F249单片机的I/O口输出 电流最大为6mA,所有电流之和不超过48mA。且当其
I/O 口输出“0”时,可以吸收最大 40mA 的电流。因此
采用单片机I/O口控制发光二极管负极的设计。
9
第3章 MSP430
K1 K2 K3
P5.0/UCB1STE/UCA1CLK P2.0/ACLK/CA2 P5.1/UCB1SIMO/UCB1SDA P2.1/TAINCLK/CA3 P5.2/UCB1SOMI/UCB1SCL P2.2/CAOUT/TA0/CA4 P5.3/UCB1CLK/UCA1STE P2.3/CA0/TA1 P5.4/MCLK P2.4/CA1/TA2 P5.5/SMCLK P2.5/ROSC/CA5 P5.6/ACLK P2.6/ADC12CLK/CA6 P5.7/TBOUTH/SVSOUT P2.7/TA0/CA7 P6.0/A0 P6.1/A1 P6.2/A2 P6.3/A3 P6.4/A4 P6.5/A5 P6.6/A6 P6.7/A7/SVSIN VEREF+ VREF+ VREF-/VEREFXIN XOUT AVCC AVSS MSP430F249 P3.0/UCB0STE/UCA0CLK P3.1/UCB0SIMO/UCB0SDA P3.2/UCB0SOMI/UCB0SCL P3.3/UCB0CLK/UCA0STE P3.4/UCA0TXD/UCA0SIMO P3.5/UCA0RXD/UCA0SOMI P3.6/UCA1TXD/UCA1SIMO P3.7/UCA1RXD/UCA1SOMI XT2OUT XT2IN RST/NMI TCK TDI/TCLK TDO/TDI TMS
7
第3章 MSP430
实例3.1 彩灯控制
任务要求:利用MSP430F249单片机的P1口控制8个发光 二极管LED1~LED8,P1口接入三个开关K1~K3,当K1 闭合时,LED1和LED4闪烁,闪烁时间1s;当K2闭合 时,LED2和LED5闪烁,闪烁时间2s;当K3闭合时, LED1~LED8循环闪烁,闪烁时间1s。