树莓派学习札记(4)—— pi4j使用串口笔记
2017-03-22 20:28
295 查看
一、关于Pi4j 项目:
pi4j是一个开源的raspberry pi JAVA开源项目。目前最新的版本为:pi4j-1.1 这个与之前的版本有许多不同。
在线安装pi4j :
curl get.pi4j.com | sudo bash
安装完毕后在/opt/pi4j/ 目录下有三个文件夹以及三个文件:
其中examples 文件夹下是使用pi4j 使用java开发应用的例程。在开发我们自己的应用时,可以参考这些例程。
再编译、运行时,参考build 、run 这两个脚本文件。
二、关于raspberry pi 3的引出的UART
注意:本文使用的镜像为2016-05-27-raspbian-jessie.img该系统默认情况下,接在引出的40pin上的UART是关闭的。
此时,我们编译、运行/opt/pi4j/example/ 下的SerialExample.java 连接好串口线,在PC端使用串口助手是接收不到任何东西的!
解决这个问题需要操作两个步骤:
①、运行 sudo raspi-config :该指令用于配置树莓派
选中第9项 Advanced Options
选择A7 Serial,
使能Serial 作为linux shell 登录
此时重新启动Pi ,连接上串口。可以从串口中接收到Pi的启动输出信息。
此时,我们编译运行/opt/pi4j/example/SerialExample.java 程序也是能够发送数据到PC的串口;但是此时还有点问题!需要注意。我们来看现象:
仔细看,发现我用串口助手给Pi发送了123456,但是它直接就返回给了PC机,这个时候可能没有分析程序,感觉这个也不一定就是Pi的配置问题。但是,我们很快就发现:
UART时不时的多输出一个 6 ,这个正是我们之前发送多的字符的最后一个字符。如果此时觉得问题还不明显,我们关系程序运行:ctrl + c 结束该程序。
我们稍微等待一下,就会发现。此时串口助手还能接收到6。
这个问题就很明显了吧。那么接下来就是解决这个问题。
②解决Serial 作为Raspbian 的shell终端使用时,串口数据传输的问题:
A、先备份一下/boot/cmdline.txt 文件:
B、修改cmdline.txt中的内容。
只需要删除掉console=serial0,115200,并重新启动pi,未修改前的内容如下
修改后:
此时,重新启动pi,串口不会再作为Linux shell 终端了。运行上述例程也不会有问题!
相关文章推荐
- STM32F103C8T6学习笔记_串口USART的使用
- 树莓派B+新手学习笔记---【使用SD卡剩余空间】
- 树莓派学习笔记——使用文件IO操作GPIO SysFs方式
- 树莓派学习笔记——使用文件IO操作GPIO SysFs方式
- 树莓派学习笔记——UART使用
- 树莓派学习笔记——I2C使用 PCF8574 Python SMBUS
- 树莓派学习笔记——wiringPi I2C设备使用详解
- 树莓派学习笔记——wiringPi I2C设备使用详解
- 树莓派学习笔记——使用标准PC104键盘
- 树莓派学习笔记——Wifi AP热点模式 使用RT5370
- 【RT-Thread学习笔记 6】RT-Thread下的串口驱动程序分析
- tensorflow学习(二)深入使用阅读笔记
- 树莓派学习笔记(3):利用VNC远程控制树莓派
- ucos-ii学习笔记——消息队列的原理及使用
- Objective-C基础学习笔记(八)-内存管理-autorelease使用-property创建对象的内存管理-循环引用的内管管理
- C语言学习笔记--动态库和静态库的使用
- Linux学习笔记9--touch命令使用
- [javase学习笔记]-8.5 statickeyword的使用场景
- C语言学习笔记--动态库和静态库的使用
- Symfony2 学习笔记之模板使用