NodeMcu关于UART的理解
2017-09-21 16:08
183 查看
UART是通用异步收发器,可以通过UART串行接口进行配置和通信,默认模式下UART会自动检测波特率,也是只有几个函数,比较好理解。
在NodeMcu中共有两组串口,在原理图(图1)里面分别用红框和绿框选出的两组串口。在图2中,参数这栏写着0代表标准管脚,1代表GPIO13 and GPIO15,即我们所说的第二组串口,所以在使用的时候一定要注意一致性。
图1
图2
再来看下面给出的Example
-- when 4 chars is received.
uart.on("data",
4,
function(data)
print("receive from uart:", data)
if data=="quit"then
uart.on("data")
-- unregister callback function
end
end,
0)
最开始我一直很费解,这个串口通信要怎样在NodeMcu上实现,甚至去下载了一个串口助手,后来发现同样适用COM3,会有串口重复问题,实际上我们的运行界程序本身就占用了一个串口进行的通信,所以只需要再新建一个文件,在里面写上要发送的东西,然后点击send即可。具体操作如下
根据程序的内容,输入quit即可退出uart的函数,我们来试一下。
如果在没有输入quit的情况下,点击右侧的显示芯片ID信息等按键的时候会如绿色框所示,当接受到quit的情况下(如红色),则退出了通信,这时再显示各种信息就可以成功了。
其他例子同理,本文仅给和我一样不明白怎么在NodeMcu上使用uart模块的小白们使用,希望能给大家带来有用的信息。
另外,上面那个例程每次只能接受4个字节,但是下面这个例子就可以接收一串字符。显示效果分别如图所示。
when '\r' is received.
uart.on("data", "\r",
function(data)
print("receive from uart:", data)
if data=="quit\r" then
uart.on("data") -- unregister callback function
end
end, 0)
在NodeMcu中共有两组串口,在原理图(图1)里面分别用红框和绿框选出的两组串口。在图2中,参数这栏写着0代表标准管脚,1代表GPIO13 and GPIO15,即我们所说的第二组串口,所以在使用的时候一定要注意一致性。
图1
图2
再来看下面给出的Example
-- when 4 chars is received.
uart.on("data",
4,
function(data)
print("receive from uart:", data)
if data=="quit"then
uart.on("data")
-- unregister callback function
end
end,
0)
最开始我一直很费解,这个串口通信要怎样在NodeMcu上实现,甚至去下载了一个串口助手,后来发现同样适用COM3,会有串口重复问题,实际上我们的运行界程序本身就占用了一个串口进行的通信,所以只需要再新建一个文件,在里面写上要发送的东西,然后点击send即可。具体操作如下
根据程序的内容,输入quit即可退出uart的函数,我们来试一下。
如果在没有输入quit的情况下,点击右侧的显示芯片ID信息等按键的时候会如绿色框所示,当接受到quit的情况下(如红色),则退出了通信,这时再显示各种信息就可以成功了。
其他例子同理,本文仅给和我一样不明白怎么在NodeMcu上使用uart模块的小白们使用,希望能给大家带来有用的信息。
另外,上面那个例程每次只能接受4个字节,但是下面这个例子就可以接收一串字符。显示效果分别如图所示。
when '\r' is received.
uart.on("data", "\r",
function(data)
print("receive from uart:", data)
if data=="quit\r" then
uart.on("data") -- unregister callback function
end
end, 0)
相关文章推荐
- 关于USB-Serial、USB转串口、USB-UART、PL2303、CH340等的理解
- NodeMcu关于ADS1115的理解
- 关于数组的一些个人理解和源码
- 黑马程序员-关于Java IO流的一些理解
- c++高级---c语言中关于运算符优先级和运算符集合顺序的理解(*p++和*++p的区别)
- 关于/dev/console的个人理解
- 初学者关于c语言中函数局部变量空间释放的理解
- 关于Blocking IO, Non-Blocking IO 和 Asynchronous I/O的理解
- 关于指针函数以及函数指针的一些理解
- 关于python中闭包的理解和小例子
- 关于XCode数据库反向工程的理解
- 关于Promise的一些个人理解jQuery的deferred
- 关于map task、reduce task和hdfs块大小的理解
- JavaScripy关于对继承原型链,借用构造函数和组合继承的理解
- 关于 JVM 简单理解
- 关于知识、技能、能力的理解?(个人理解)
- 关于寄存器ESP和EBP的一些理解
- 关于socket编程的一点心得理解
- 关于JSF2 composite component一点理解
- 关于java多线程下单例模式的写法与理解