3B&+
一、串口开启
https://blog.csdn.net/aguangg_6655_la/article/details/54985423
开启板载uart串口模式后,蓝牙模块不可使用
1、查看串口信息
ls -l /dev/*serial*
会显示/dev/serial1 ->ttyAMA0
1.下载pi3-miniuart-bt-overlay文件,解压出pi3-miniuart-bt-overlay.dtb文件,并将dtb文件拷贝到/boot/overlays/目录下
2.编辑/boot目录下的config.txt文件
sudo nano /boot/config.txt
添加下面两行:
dtoverlay=pi3-miniuart-bt-overlay
force_turbo=1
3.编辑/boot目录下的cmdline.txt文件
sudo nano /boot/cmdline.txt
内容修改参照:
dwc_otg.lpm_enable=0 console=serial1,115200 console=tty1 root=/dev/mmcblk0p2 kgdboc=serial1,115200 rootfstype=ext4 elevator=deadline fsck.repair=yes rootwait
保存退出
关闭板载蓝牙的方法:
1.SSH登录树莓派3后,输入下面命令关闭hciuart使用uart0.
sudo systemctl disable hciuart
2.编辑/lib/systemd/system/hciuart.server 将 “ttyAMA0”修改为“ttyS0”
sudo nano /lib/systemd/system/hciuart.service
将 “ttyAMA0”修改为“ttyS0”,保存退出。
3.更新并重启
sudo apt-get update
sudo apt-get upgrade
sudo reboot
二、使用摄像头建立RSTP
https://blog.csdn.net/u013062192/article/details/80210166
首先需要进入树莓派配置
sudo raspi-config —— Interfacing Options —— Camera——Yes,重启后板载摄像头接口就可以使用了
step1. 安装live555
获取live555最新源码
wget http://live555.com/liveMedia/public/live555-latest.tar.gz
解压编译安装
tar -zxvf live555-latest.tar.gz
cd live
sudo ./genMakefiles linux
sudo make
sudo make install
step2. 安装库文件
- sudo apt-get update
- sudo apt-get install libavcodec54 #版本可能会变化
- sudo apt-get install libswscale2 #版本可能会变化
- sudo apt-get install libx264-142 #版本可能会变化
或者
sudo apt-get install libavcodec-dev
sudo apt-get install libswscale-dev
sudo apt-get install libavutil-dev
下载源码后,copy到/opt/vc/src/hello_pi/
https://gitee.com/secho1997/live_camera_linux
根据/hello_pi/下的README编译安装iclient库
cd live_camera_linux
sudo make
sudo make install //可能会报错,不管,只要生成了zk_v4l2_x264_source 的执行程序就行
sudo ./zk_v4l2_x264_source
若出现
[2464] WebcamOndemandMediaSubsession .... calling
using url "rtsp://192.168.1.102:9554/webcam"
则成功实现
三、声卡设置
1、查看声音录入和输出
aplay -l
arecord -l
查看USB声卡的card 号,我的是1
2、设置USB声卡为默认声卡。
#创建配置文件
sudo nano /etc/asound.conf
sudo nano ~/asound.conf
#设置声卡1为默认,
则写入以下内容
defaults.ctl.card 1
defaults.pcm.card 1
defaults.timer.card 1
树莓派 libEGL warning: DRI2:failed to authenticate
参见:https://blog.csdn.net/u011471873/article/details/95534196
写录音程序出现“using null input device, none available”无法录音
这个问题我也遇上了,按以下步骤解决:
1 下载alsa的开发包并安装 先查看内核中alsa driver版本:alsactl -v. 再到官方网站www.alsa-project.org/下载对应的开发包 开发包在ftp://ftp.alsa-project.org/pub/lib/ 解压后
sudo ./configure
sudo make
sudo make install
直接就可以安装上
2 重新编译qt库, ./configure -multimedia -v > out.txt configure完之后在文件out.txt中查看有无这一行字Alsa support ........... yes 如果为yes,则步骤1中的开发包装成功了的,如果为no,则步骤1可能有问题 楼主出现的问题是因为没有执行步骤1. 之后make make install都是一样的
各位好运
在树莓派下对多个串口转USB设备进行设备名称绑定操作
引用:https://www.cnblogs.com/mangojun/p/10820481.html
1、查看USB串口设备系统的名称
ls /dev | grep 'ttyUSB'
2.根据串口号,查询串口设备的详细信息
udevadm info /dev/ttyUSB0
udevadm info /dev/ttyUSB1
3、创建规则
sudo nano /etc/udev/rules.d/99-com.rules
在文件的最后添加规则 ,可以根据/dev/ttyUSB0、/dev/ttyUSB1的信息找到特定的标识符设定相应的规则,我用的是USB TTL,因此根据特定的ID进行设定
ENV{ID_VENDOR_ID}=="0483",ENV{ID_MODEL_ID}=="5740",SYMLINK+="ttyUSB_RFID",MODE:="0777"
ENV{ID_VENDOR_ID}=="1a86",ENV{ID_MODEL_ID}=="7523",SYMLINK+="ttyUSBCH340",MODE:="0777"
ENV{ID_VENDOR_ID}=="1a86",ENV{ID_MODEL_ID}=="7523",SYMLINK+="ttyUSBCH340",MODE:="0777"
4 设备重启reboot ,重启之后,自定义命名规则将生效。插拔USB串口设备,显示特定的名称。
reboot、reboot、reboot重要的说三遍,有人说用重启服务(sudo /etc/init.d/udev restart),没用!!!
QT之应用程序打包发布
参考:https://blog.csdn.net/Mr_robot_strange/article/details/105531660
https://www.cnblogs.com/visionsl/p/9263923.html
这里说linux下:
1、创建一个目录
2、将编译好的应用程序复制到这个目录中
3、执行命令查看应用所需的库
ldd /home/pi/Downloads/release/smartscreen
4、创建脚本协助我们解决这些库的提取工作
#!/bin/sh
echo 参数1 - 发布的程序名称
echo 参数2 - 发布的程序所在的路径
echo example:./qt-pack.sh smartscreen /home/pi/Downloads/release/
echo 本脚本需要与待发布的程序放在同一个目录下执行
echo 脚本功能:自动拷贝程序锁需要支持库到【发布的程序所在的路径】
exe="$1"
des="$2"
deplist=$(ldd $exe | awk '{if (match($3,"/")){ printf("%s "),$3 } }')
cp $deplist $des
5、通过运行脚本运行新打包的程序,注意【脚本的名称需要与应用名称一致】,如应用名smart,则脚本名为smart.sh
#!/bin/sh
appname=`basename $0 | sed s,\.sh$,,`
dirname=`dirname $0`
tmp="${dirname#?}"
if [ "${dirname%$tmp}" != "/" ]; then
dirname=$PWD/$dirname
fi
LD_LIBRARY_PATH=$dirname
export LD_LIBRARY_PATH
$dirname/$appname "$@"
6、把整个目录复制到需要运行的环境中即可
后面是最重要的:
1、如果调用MYSQL,则可以直接安装
sudo apt-get install libqt5sql5-mysql
2、如果调用多媒体,则可以直接安装
sudo apt-get install qtmultimedia5-dev
sudo apt-get install libqt5multimedia5-plugins
我偷懒了,因为时间紧,后面再逐步补充吧。