我有一台 Raspberry Pi 相机,经常使用它,但相机容易过热。是否有终端命令可以关闭相机并在需要时将其重新打开?
它不是通过 USB 控制,而是通过 CSI 摄像头连接器控制。
答案1
RPI 没有 PCI 总线,因此我们无法使用标准 Linux 命令关闭板载摄像头。为了完整起见,我将向您展示如何在 RPI 和普通 PC 中执行这两件事。
零售物价指数
RPI 摄像头可以在启动时关闭。有一个文件,/boot/config.txt
您需要此设置:
start_x=0
设置时start_x=1
将其打开。
如果您想在运行时执行此操作,您可以在 pyhton 提示符下尝试(我没有尝试此操作)执行以下操作:
import picamera
from time import sleep
sleep(500)
看看这是否真的能解决你的过热问题。当然,你需要安装
sudo apt-get install python-picamera
带有 PCI 总线的 PC
命令是
echo 0 > /sys/bus/usb/devices/1-1.3/bConfigurationValue
关掉它,当然也echo 1 > ...
可以再次打开。唯一的问题是总线地址1-1.3
对于我的pc。你可以通过查看输出来找到你的地址
# lsusb -t
...............
: Bus 01.Port 1: Dev 1, Class=root_hub, Driver=ehci-pci/3p, 480M
|__ Port 1: Dev 2, If 0, Class=Hub, Driver=hub/6p, 480M
|__ Port 2: Dev 4, If 0, Class=Wireless, Driver=btusb, 12M
|__ Port 2: Dev 4, If 1, Class=Wireless, Driver=btusb, 12M
|__ Port 3: Dev 3, If 0, Class=Video, Driver=uvcvideo, 480M
|__ Port 3: Dev 3, If 1, Class=Video, Driver=uvcvideo, 480M
您可以在此输出中看到一个Class=Video
对象,位于总线 1、设备 3。现在您可以转到
# cd /sys/bus/usb/devices/; ls
1-0:1.0 1-1.2 1-1.3 2-0:1.0 2-1.5 2-1.6:1.0 2-1.6:1.2 2-1.6:1.5 2-1.6:1.8 3-2 3-3:1.0 4-0:1.0 usb3
唯一的 1-3 设备是1-1.3
。您进入目录并通过以下方式再次检查这是您的视频摄像头:
# cat id{Vendor,Product}
1bcf
288e
您可以将其与以下输出进行比较
# lsusb
................
Bus 001 Device 003: ID 1bcf:288e Sunplus Innovation Technology Inc.
谷歌搜索显示 1bcf 确实是一个 VideoCam。1-1.3
是上述命令中要插入的代码。