MSP430的输入输出均可以设置上拉和下拉电阻。上下拉是否开启是由REN寄存器决定的,而是上拉还是下拉则是由OUT寄存器决定的,在作为输出时,随着OUT的高低,自动选择上下拉;作为输入的时候,可以通过人为的赋值OUT寄存器来得到上下拉。
上下拉电阻作用
1、当TTL电路驱动COMS电路时,如果TTL电路输出的高电平低于COMS电路的最低高电平(一般为3.5V),这时就需要在TTL的输出端接上拉电阻,以提高输出高电平的值。
2、OC门电路必须加上拉电阻,以提高输出的搞电平值。
3、为加大输出引脚的驱动能力,有的单片机管脚上也常使用上拉电阻。
4、在COMS芯片上,为了防止静电造成损坏,不用的管脚不能悬空,一般接上拉电阻产生降低输入阻抗,提供泄荷通路。
5、芯片的管脚加上拉电阻来提高输出电平,从而提高芯片输入信号的噪声容限增强抗干扰能力。
6、提高总线的抗电磁干扰能力。管脚悬空就比较容易接受外界的电磁干扰。
7、长线传输中电阻不匹配容易引起反射波干扰,加上下拉电阻是电阻匹配,有效的抑制反射波干扰。
上拉电阻阻值的选择原则
1、从节约功耗及芯片的灌电流能力考虑应当足够大;电阻大,电流小。
2、从确保足够的驱动电流考虑应当足够小;电阻小,电流大。
3、对于高速电路,过大的上拉电阻可能边沿变平缓。
综合考虑以上三点,通常在1k到10k之间选取。
MSP430上拉电阻编程语言设置
voidInit_keypad_Port(void)
{
P1SEL&=~KEY_MOD;//设置键盘端口为I/O端口
P1DIR|=KEY_MOD;P1REN|=KEY_MOD+BIT7;
P1OUT|=KEY_MOD;P1OUT&=~BIT7;//设置模式选择端口为下拉电阻
P1REN&=~(KEY_MOD+BIT7);
P1DIR&=~(KEY_MOD+BIT7);//设置行端口为输入口
P1IFG=0;P1IES&=~BIT7;//设置手动模式端口上升沿中断
P1IE|=BIT7;//手动模式选择端口中断使能
}
PxREN是设置上拉或者下拉的使能寄存器,置一使能,使能后,通过PxOUT设置上拉还是下拉
关键字:msp430 上拉电阻 REN寄存器
引用地址:
msp430介绍_msp430上拉电阻的使用
推荐阅读最新更新时间:2024-10-26 22:43
MSP430内部上拉电阻的使用
简介:上下拉是否开启是否REN寄存器决定的,而上拉还是下拉是由OUT寄存器决定的,在作为输出时,随着OUT的高低,自动选择上下拉,作为输入的时候,我们也可以人为的付OUT寄存器来得到上下拉。 今天用MSP430的IO做按键,没有外部上拉电阻,发现设置内部上拉后有问题,以为只能在输出时才能用内部上拉,后面在网上搜到了这篇帖子,很好。转载一下。 今天帮助一个人测试msp430f2002,他又提出了这样的要求,输入,msp430内部上拉,我又习惯性的说,不行啊,只能输出可以内部上下拉,他是个硬件工程师,很是怀疑,其实我也怀疑。 又仔细看了下430的datasheet。对着内部电路一看,我靠,还真是。。作为一个电信专业出身的人
[单片机]
msp430介绍_msp430上拉电阻的使用
MSP430的输入输出均可以设置上拉和下拉电阻。上下拉是否开启是由REN寄存器决定的,而是上拉还是下拉则是由OUT寄存器决定的,在作为输出时,随着OUT的高低,自动选择上下拉;作为输入的时候,可以通过人为的赋值OUT寄存器来得到上下拉。 上下拉电阻作用 1、当TTL电路驱动COMS电路时,如果TTL电路输出的高电平低于COMS电路的最低高电平(一般为3.5V),这时就需要在TTL的输出端接上拉电阻,以提高输出高电平的值。 2、OC门电路必须加上拉电阻,以提高输出的搞电平值。 3、为加大输出引脚的驱动能力,有的单片机管脚上也常使用上拉电阻。 4、在COMS芯片上,为了防止静电造成损坏,不用的管脚不能悬空,一般接上拉电阻产生降低输
[单片机]
MSP430内部上拉电阻的使用
今天用MSP430的IO做按键,没有外部上拉电阻,发现设置内部上拉后有问题,以为只能在输出时才能用内部上拉,后面在网上搜到了这篇帖子,很好。转载一下。 今天帮助一个人测试msp430f2002,他又提出了这样的要求,输入,msp430内部上拉,我又习惯性的说,不行啊,只能输出可以内部上下拉,他是个硬件工程师,很是怀疑,其实我也怀疑。 又仔细看了下430的datasheet。对着内部电路一看,我靠,还真是。。作为一个电信专业出身的人,居然。。没看内部结构就下了那样的结论,大意了。 上下拉是否开启是否REN寄存器决定的,而上拉还是下拉是由OUT寄存器决定的,在作为输出时,随着OUT的高低,自动选择上下拉,作为输入的时候,我们也可
[单片机]
MSP430的上拉电阻&I/O口的第二功能
在介绍这四个I/O口时提到了一个 上拉电阻 那么上拉电阻又是一个什么东东呢?他起什么作用呢?都说了是电阻那当然就是一个电阻啦,当作为输入时,上拉电阻将其电位拉高,若输入为低电平则可提供电流源;所以如果P0口如果作为输入时,处在高阻抗状态,只有外接一个上拉电阻才能有效。 你说的 第二功能 应该是指外围模块功能吧,用模块就选 第二功能 ,不用模块就选 第一功能 。 可通过设置PxSEL寄存器进行选择,某位写 0 为I/O;写 1 为 第二功能 。 用到比较器(片内外围模块)时要设置为第二功能。 当然你如果是用片外的比较器,将其输出的高低电平(1或0)送给MSP430,那就选 第一功能 。
[单片机]
msp430 f5529寄存器 串口发送接收
使用的开发板是官方的ti msp430f5529lp 基于官方的例程进行的改动 新增了发送字符串函数 同时可以中断接收 接下来看代码展示 #include msp430.h volatile unsigned int i; void senfchar(char s) { UCA0TXBUF=s; while(!(UCA0IFG&UCTXIFG)); } void sendstring(unsigned char *p) { while(*p!='') { while(!(UCA0IFG&UCTXIFG)); UCA0TXBUF=*p++; } } void
[单片机]
MSP430串口波特率寄存器的配置
在写串口通信时,经常因为时钟频率或波特率更改,需要重新配置波特率寄存器,以MSP430F5438A为例,记录一下寄存器配置方法: //============================= void Hal_Uart_Init(void) { P3SEL|=RXD+TXD; // P3.4,5 = USCI_A0 TXD/RXD UCA0CTL1 |= UCSWRST; // **Put state machine in reset** UCA0CTL1 |= UCSSEL__SMCLK; // CLK = UCSSEL__SMCLK ,8192000Hz UCA0B
[单片机]
MSP430系统时钟寄存器详解
1、时钟源说明 ACLK辅助时钟:ACLK是LFXT1CLK(低频时钟源)信号经过1、2、4、8分频得到的。ACLK可由软件选为各个外围模块的时钟信号,一般用于低速外设。 MCLK系统主时钟:MCLK可由软件选择来自LFXT1CLK(低频时钟源)、XT2CLK(高频时钟源)、DCOCLK(数字控制RC振荡器)三者之一,然后经过1、2、4、8分频得到。MCLK主要用于CPU和系统。 SMCLK子系统时钟:可由软件选择来自LFXT1CLK(低频时钟源)和DCOCLK(数字控制RC振荡器),或者、XT2CLK(高频时钟源)和DCOCLK(数字控制RC振荡器)具体由器件决定,,然后经过1、2、4、8分频得到。SMCLK主要用于
[单片机]
单片机MSP430入门--理论④--时钟模块-BCSCTL2寄存器
上期大概给大家汇总介绍了,在MSP430环境下的时钟寄存器DOCCTL和BCSCTL1寄存器,每个位代表的意义以及他们的设置方法 本期将重点介绍下,在MSP430环境下的时钟寄存器BCSCTL2,他每个位的意义以及他们的设置方法 1.0 BCSCTL2(Basic Clock System Control2)寄存控制器(用来设置SMCLK子时钟,MCLK主时钟),地址为58H,初始值为00H SELM0-SELM1: 选择MCLK的时钟源,0和1为DCOCLK,2为XT2CLK,3为LFXT1CLK DIVM0-DIVM1: 选择MCLK的分频因子,DIVM=0,1,2,3,对应MCLK的分频因子1,2,4,8
[单片机]