【树莓派】在vscode中连接树莓派并编写代码
在树莓派里编写代码的话会比较麻烦因此可以在vscode中通过ssh连接树莓派并且编辑代码
参考:
vscode通过ssh连接树莓派实现远程开发
VSCODE 远程开发树莓派
使用vscode打造python开发环境
3、树莓派 RPI.GPIO 使用手册
Python pip 安装与使用
[树莓派官方文档](silicon die packaged)
基本配置
首先打开树莓派并搜索安装remote ssh插件:

然后在设置->扩展设置中找到如下位置并打钩:


可以发现左边有一个远程资源管理器:

选择设置以及".../.ssh/config":

填写如下信息:

- Host:连接的名称
- HostName:树莓派的IP
- User:树莓派用户名
配置完毕后,在左边的SSH TARGETS中会出现刚刚创建的连接,点击加号会生成一个新窗口,新窗口的搜索栏会选择平台类型,树莓派需要选择Linux:


需要输入密码:

输入完后vscode会在树莓派上安装一些东西,然后就安装成功了
在资源管理器可以打开树莓派的文件夹:

在+号中选择bash即可打开远程终端,作为putty的替代
在vscode中编写python代码
首先要在vscode中安装python的插件:

- 这个插件不是python语言的解释器,vscode想要运行python代码,必须另外指定在windows上安装的python解释器路径
- 这个插件被安装上后,vscode就具有了调用python解释器的功能,就是在setting.json和launch.json这两个配置文件中可以添加python的相关配置
- 可以通过按下ctrl键,点击函数,打开函数所在的文件和定义位置
- 具有代码提示功能
新建文件夹以及.py文件编程后点击右上角的Run Python File即可运行python代码


实例:1.44寸LCD显示
根据上面的配置,现在就来让树莓派在外接的1.44寸屏幕上显示,1.44寸屏幕:

- 首先需要输入命令sudo raspi-config开启SPI接口,然后输入sudo reboot重启树莓派
可以在/boot/config.txt中检查SPI没有被其他的设备占用
了解一些关于pip的命令:
pip是python包管理工具,提供了对python包的查找、下载、安装和卸载的功能
在树莓派中python命令对应的解释器是python2.x版本,而python3对应的解释器是python3.x版本,因此我们主要用的是python3:

而在树莓派中,pip和pip3对应的也是如此:

所以我们也要用pip3,一些常用的命令如下:
pip3 --version:查看版本
pip3 install SomePackage:安装最新版本的包
pip3 install SomePackage==1.0.4:安装指定版本的包
pip3 list:查看已安装的包
python3 -m pip list:查看python3的pip安装的包
其次需要安装库
- BCM2835:树莓派cpu芯片的库函数,底层是直接操作寄存器,而wiringPi库和python的RPi.GPIO库的底层是通过读写Linux系统的设备文件操作设备
- wiringPi:应用于树莓派平台的GPIO控制库函数(树莓派管脚有三种编号方式,第一种是板上编号,表示第几号引脚;第二种是wiringPi编码,使用wiringPi库编程就是用这个编号;第三种是BCM编号,使用BCM2835库或python的RPi.GPIO编程时使用BCM编号)
- RPi.GPIO:有两种方法对树莓派上的IO引脚进行编号,第一种是BOARD编号系统,即引脚号;第二种是BCM号
然后根据以下链接中的步骤即可显示:
1.44inch LCD HAT
显示结果如下:

实例:串口发送数据
树莓派的串口有两种:
PL011
mini UART
树莓派zero的串口对应如下:UART0->PL011
UART1->mini UART
Primary UART:在树莓派上,一个UART被选用作连接GPIO14(tx)和GPIO15(rx),被称为Primary UART
Secondary UART:默认连接到蓝牙
下面的表说明的各个树莓派的两种UART分别是哪一个:

另外,mini UART是默认关闭的
在Raspberry Pi操作系统中,不同的Linux设备的意义如下:
- /dev/ttyS0:mini UART
- /dev/ttyAMA0:first PL011(UART0)
- /dev/serial0:primary UART
- /dev/serial1:secondary UART
/dev/serial0和/dev/serial1是一种symbolic links指向/dev/ttyS0或者/dev/ttyAMA0
树莓派上的mini UART的时钟连接到了VPU核的时钟,因此如果想要使用mini UART的话,需要配置树莓派的VPU核的时钟频率固定,enable_uart和core_freq的设置能写入config.txt来配置mini UART:

默认的enable_uart值取决于哪一个UART是primary UART:

程序如下:
import serial
import time
print("hello world")
ser = serial.Serial('/dev/ttyS0',115200)
if ser.is_open == False:
ser.open()
for i in range(50):
ser.write(b'i')
time.sleep(0.5)
程序运行结果如下:

【树莓派】在vscode中连接树莓派并编写代码的更多相关文章
- 在vscode中进行nodejs服务端代码调试(代码修改自动重启服务端)
使用到的是nodemon,具体在package.json文件中配置如下: "scripts": { "start": "node ./bin/www& ...
- vscode中关闭python默认自动提示
vscode中python的默认自动代码提示工具是Jedi,我现在用的是kite.默认情况下连个自动补全工具会同时工作,提示窗口会重复出现相同的代码.以下操作可以关闭Jedi.
- 连接树莓派中的MySQL服务器
今天用笔记本连接树莓派的 MySQL ,结果连接不上.就直接连接到树莓派上进行操作.其实以前也知道远程访问 MySQL 需要进行配置,可以直接 mysql.user 表,也可以直接使用授权的 SQL ...
- 使用SecureCRT网络连接树莓派
为了更加方便可以通过网络来连接.控制树莓派,使用SecureCRT可以通过网络来连接树莓派. 1.在树莓派上通过终端命令ifconfig 来查看当前树莓派的IP地址: IP地址 ...
- 电脑连接树莓派Pi Zero W
作者:陈拓 chentuo@ms.xab.ac.cn 2018.05.16/2018.06.09 0. 概述 本位介绍两种电脑连接树莓派Pi Zero W的方法: 电脑通过USB以太网连接树莓派Ze ...
- 树莓派3B+学习笔记:10、使用SSH连接树莓派
SSH(Secure Shell)是一种能够以安全的方式提供远程登录的协议,也是目前远程管理Linux系统的首选方式. 1.开启树莓派3B+的SSH远程管理功能,在终端中输入以下命令: sudo ra ...
- 树莓派3B+SimpleCV上连接iPhone4s摄像头
目的:把iPhone4s当成网络摄像头,通过wifi连接到树莓派上,做为树莓派的摄像头. 1. iPhone4s上安装mini WebCam应用. 很旧的一个app, 没有密码,简单,无广告,免费. ...
- 树莓派/RaspberryPi Ubuntu远程连接
网络设置 设置Ubuntu主机跟树莓派在同一网段,树莓派设置静态IP地址: 查看/etc/network/interfaces的内容,其中有#For static IP, consult /etc/d ...
- 树莓派直连线连接PC
刚入手树莓派一天不到,SSH树莓派一直用的是路由+无线网卡的配置.想到明天就要出差了,本想把树莓派也带去,可宾馆的房间只有一个网口,通常都是兄弟们连接小型无线路由用的,连接树莓派似乎成了一个难题.于是 ...
- 利用Putty连接树莓派
解决emergency mode问题 记得上一次玩我的树莓派是做一个小型的服务器,挂载一个8GB的USB做服务器,在Windows电脑上直接进行访问.结果今天就开启不了树莓派了,总是进入emergen ...
随机推荐
- JavaScript:变量:声明和赋值变量时,内存结构是什么样的?
这里只是大概画出内存结构的模型图,方便理解当我们声明变量和赋值变量时,到底在干嘛. 如上图所示,a赋值一个对象{},b赋值字符串hello: 于是内存里划了三个区域给我们,一个存储我们声明的变量表,即 ...
- 洛谷P1605例题分析
迷宫 题目描述 给定一个 \(N \times M\) 方格的迷宫,迷宫里有 \(T\) 处障碍,障碍处不可通过. 在迷宫中移动有上下左右四种方式,每次只能移动一个方格.数据保证起点上没有障碍. 给定 ...
- [OpenCV实战]18 Opencv中的单应性矩阵Homography
目录 1 介绍 1.1 什么是Homography 1.2 使用Homography进行图像对齐 1.3 Homography的应用-全景拼接 2 Homography的计算 3 总结 4 参考 &l ...
- [随笔所想] CSDN认证博客专家申请通过随笔所想
本篇博客写于2020年5月13日晚,为了纪念CSDN博客专家申请通过. 2020年5月10日晚,也就是2020年的母亲节当晚提交了博客专家申请.在2020年5月13日上午,就知道博客专家申请通过啦!前 ...
- Web3区块链DAS域名注册教程 tron trx链波卡钱包地址解析 用户名转账 ENS
而在去中心化系统中,大部分人充值.转账时,使用的都是区块链原生的长地址,比如: ETH 的地址: 0x9euo8sHip*******dHld90 CKB 的地址: ckHUEI829D******* ...
- ZROI3
题解 ZROI3 T1 与<滑动窗口>类似,用单调队列维护 #include <queue> #include <cstdio> #include <cstr ...
- win32com操作word 第二集:Application&Documents接口
本课程<win32com操作word API精讲&项目实战>以视频为主,文字教程为辅,公众号ID:一灯编程. 先回答一个网友私信问题: win32com和微软的word接口文档有什 ...
- 【题解】[LNOI2022] 盒
题目分析: 我们可以对每一条边单独计算贡献,这样会发现贡献很好算: \[ans = \sum_{i=0}^{n-1} w_i \sum_{j=0}^S |j - s_i| \binom{i+j-1}{ ...
- continue语句-死循环
continue语句 continue 使用场景:结束本次循环,继续下一次的循环 public static void main(String[] args) { for (int i = 1; i ...
- ClickHouse(12)ClickHouse合并树MergeTree家族表引擎之AggregatingMergeTree详细解析
目录 建表语法 查询和插入数据 数据处理逻辑 ClickHouse相关资料分享 AggregatingMergeTree引擎继承自 MergeTree,并改变了数据片段的合并逻辑.ClickHouse ...