树莓派机载计算机的硬件资源使用样例教程
样例程序所在目录、VisualStudioCode程序导入与程序运行
执行树莓派硬件资源使用demo的前提是,用户已经使用NoMachine或者VNCViewer远程登陆系统桌面,也可以直接通过树莓派4B上的MicroHDMI接口扩展连接显示屏,可以根据实际显示屏接口自行购买MicroHDMI转HDMI/VGA转换线。当局域网网络不稳定时,有线连接的方式会极大的提升开发效率,同时此方式也需要配备一组无线键盘、鼠标用于操作ubuntu系统。
进入系统桌面后,鼠标右键cindy的主文件夹,其中用户只有操作的文件放在rpi_python_opencv、catkin_ws、autostart三个文件夹下,
其中rpi_python_opencv用于存放树莓派硬件资源使用的样例程序、基于Python开发的OPENCV机器视觉基础与进阶样例
打开ubuntu桌面的visualstudiocode软件,点击左上角文件,选中rpi_python_opencv文件下后,点击确定后导入所有文件。
visualstudiocode会进入以下界面,用户直接在VScode软件中,编写python程序,对于已安装的第三方库会自动补全相关变量或函数。
1、GPIO口驱动RGB灯
在VScode下方命令窗口中(也可以CTRL+ALT+T在用cd命令进入该目录下),依次输入如下命令既可以观察gpio控制板载RGB的效果,其中RGB灯为共阴方式,高电平亮低电平灭。
cindy
cindy-desktop:~/rpi_python_opencv$ls-l总用量44drwxrwxr-x2cindycindy月:树莓派资源样例drwxrwxr-x4cindycindy月:机器视觉基础例程drwxrwxr-x4cindycindy月:机器视觉进阶例程-rw-rw-r--1cindycindy月:33main.py-rw-rw-r--1cindycindy月:53main.pybackupcindycindy-desktop:~/rpi_python_opencv$cd1树莓派资源样例/cindycindy-desktop:~/rpi_python_opencv/1树莓派资源样例$ls-l总用量56-rw-rw-r--1cindycindy月:_gpio_rgb.py-rw-rw-r--1cindycindy月:_hardwave_pwm.py-rw-rw-r--1cindycindy月:_uart_send.py-rw-rw-r--1cindycindy月:_uart_receive_and_send.py-rw-rw-r--1cindycindy月:_i2c_mpu.py-rw-rw-r--1cindycindy8月:_i2c_oled__image.py-rw-rw-r--1cindycindy月:_i2c_oled__draw.py-rw-r--r--1cindycindy月:25happycat_oled_64.ppm最后运行1_gpio_rgb.py,程序运行的效果是RGB灯三色依次闪烁,并屏幕打印提示端口和运行状态。
python31_gpio_rgb.py
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-xk98cOF3-5)(/image-20220233.png)]
执行CTAL+C终止程序运行
2、硬件PWM的使用
预留出来的可用PWM口有四路,四个PWM口是GPIO12、GPIO13、GPIO18、GPIO19依次对应PWM0、PWM1、PWM2、PWM3,其中PWM0、PWM1两路PWM口与串口4的TXD、RXD复用,当初始化GPIO18、GPIO19为PWM口后,再需要将GPIO18、GPIO19用作串口时,必须重新启动树莓派系统。程序中通过pwm0_1_enable变量来控制PWM0、PWM1是否使用。
运行2_hardwave_pwm.py,程序运行的效果是输出频率为hz的PWM波,占空比从%,然后从%0,用户可以将PWM口接示波器、外接RGB灯或者万用表测平均电压的方式来观察PWM输出效果。
python32_hardwave_pwm.py
3、串口发送
扩展板引出了全部用户可用的5组串口,5组串口已经在树莓派系统启动配置文件中使能开启,用户可以直接使用,避免了传统ubuntu系统通过外接usb转ttl模块扩展串口资源的方式,降低了接线复查程度。用户可以在命令窗口中执行ls-l/dev/ttyAMA*命令来查看可用的串口设备。
同时用户可以执行cute