单片机芯片上的引脚的Rx与Tx端是通信的端口,请问这个口是RS232口吗?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了单片机芯片上的引脚的Rx与Tx端是通信的端口,请问这个口是RS232口吗?相关的知识,希望对你有一定的参考价值。
是RS232口还是RS485口?如果都不是,那是什么通信口呢?它的电平是多少伏?
是RS232的接口,但与PC通讯的话,需要电平转换,用MAX232就可以。如果直接和其他单片机通讯就直接连接。 参考技术A RS232口和RS485口都是指串口传输电平,单片机的串口本身使用的是TTL电平,5V和0V或者3.3V和0V,和单片机的电源是一样的。通过外接232电平转换芯片可以转成RS232电平,同样使用RS485接口芯片转换成RS485电平。 参考技术B 一般 是 TTL 电平的 RS232口 Tx Rx Gnd 3线基本串口
有些单片机板接了 max232,可以直接与电脑 DB9 RS232 串口直接相连 参考技术C RS232,电压同你单片机供电电源
Arduino数字引脚作为GPIO的使用
引脚与GPIO的关系
引脚(pin)是对芯片的外部物理接口的一个称呼,它是在不把这个物理接口投入到具体应用场合下的称呼。例如,我们可以说,某某芯片的P1.5引脚可以作为数字输出驱动外部数字设备,也可以作为串口接受引脚接受串口数据。那么P1.5就是一个引脚(pin),而作为数字输出,UART的RX就是这个引脚的2个功能。
所以我们可以发现:
1、大多数MCU的引脚都不止一个功能。不同引脚内部结构不一样,拥有的功能也不一样。通过不同的配置,切换引脚的实际功能。
2、不是所有的引脚都能在程序中使用,比如芯片的Vcc和GND,除了供电,就没做其他的用处。
数字引脚函数
pinMode(pin, mode)
作用:设置一个引脚(pin)作为GPIO时的I/O模式。
参数:
pin:引脚编号
mode:GPIO的I/O模式,取值有3种
INPUT :作为数字输入
OUTPUT :作为数字输出
INPUT_PULLUP:作为数字输入,且使能引脚的内部上拉电阻
Arduino的引脚,在上电时默认就是输入模式,但最好使用pinMode设置,更加明确。
当配置引脚为数字输入模式时,引脚表现为高阻抗状态,引脚内部的电流非常小,就如同在引脚前接了一个100M欧姆的电阻一样。这也意味外部转换引脚的电平只需很小的电流输入即可。
当使用INPUT模式时,引脚作为数字输入,但是不连接任何的拉电阻,处于悬空转态,容易受电子噪声干扰而随机的改变其电平状态。一般来说,当引脚作为数字输入使用时,都让引脚连接一个拉电阻:上拉电阻(引脚电平拉高到+5V或者+3.3V)或者下拉电阻(引脚电平拉低到GND)。可以使用Arduino引脚内部的上拉电阻(绝大多数AVR芯片为20K~50K,而Due则是50K~150K,具体参考MCU的数据手册),或者自己外接拉电阻,外接拉电阻阻值一般使用10K的。
关于上拉和下拉电阻,可以参考-->上拉电阻和下拉电阻
当使用INPUT_PULLUP模式时,引脚作为数字输入,且使能内部上拉电阻。13号引脚不建议作为数字输入引脚使用。因为13脚默认连接了一个板载的LED灯,即便是你使能了上拉电阻,LED的电阻会拉低电压,使得引脚依然是低电平。如果你非要使用13作为输入,那就外置拉电阻。
当使用OUTPUT模式时,引脚作为数字输出,引脚表现为低阻抗,输出的电流大,高达40mA,足够驱动一些基本的设备,如LED小灯。但不足以驱动马达等对电流要求很高的元件。
注:
1、引脚作为PWM输出时,无需先前使用pinMode配置其模式,因为PWM本身就代表了输出的意思。且官方库源代码中可以发现,它已经帮我们配置为输出了。
void analogWrite(uint8_t pin, int val) { pinMode(pin, OUTPUT); if (val == 0){ digitalWrite(pin, LOW); } //... }
2、模拟引脚也可以作为数字引脚使用,完全OK。这在数字引脚不够用的情况下非常有用。
下面是示例代码
//使用模拟引脚A0作为数字输出驱动LED小灯,Blink程序。 int LEDpin = A0; void setup() { pinMode(LEDpin, OUTPUT); digitalWrite(LEDpin, LOW); } void loop() { digitalWrite(LEDpin, HIGH); delay(200); digitalWrite(LEDpin, LOW); delay(200); }
digitalWrite(pin,value)
作用:设置一个数字输出引脚的输出电平值,HIGH或者LOW。
参数:
pin:引脚编号。此引脚必须在之前使用pinMode设置为OUTPUT模式。
value:2个值
LOW:输出低电平
HIGH:输出高电平
int digitalRead(pin)
作用:读取一个数字输入引脚的电平值。
返回:HIGH(高电平)或者LOW(低电平)。
参数:
pin:引脚编号。
以上是关于单片机芯片上的引脚的Rx与Tx端是通信的端口,请问这个口是RS232口吗?的主要内容,如果未能解决你的问题,请参考以下文章