赞
踩
官网下载网址:https://www.raspberrypi.org/downloads/
官网为不同的电脑操作系统提供了烧录软件,大家可以根据不同的操作系统下载对应软件。而且Raspberry Pi Imager文件不大,下载很快。树莓派官方提供的 Raspberry Pi imager 系统写入程序:
界面也很清晰明了,第一个选项是选择系统,第二个选择相应SD卡,最后确认无误后点击WRITE按钮写入。选择操作系统的镜像文件,选择SD Card的目录,开始进行写入:
点击第一个按钮Operating System 里边有很多操作系统供大家选择,但因为外网的原因下载速度很慢,在这里推荐大家先在官网上下载操作系统的种子文件,从种子文件得到自己所需的操作系统,之后点击如上页面的最后一项Use custom,即使用本地文件,选中自己下载的操作系统文件(注意是.img文件)。
VNC (Virtual Network Console) 虚拟网络控制台
Tiger VNC(Virtual Network Console)是虚拟网络控制台的缩写。它是一款优秀的远程控制工具软件,由著名的 AT&T 的欧洲研究实验室开发的。VNC 是在基于 UNIX 和 Linux 操作系统的免费的开源软件,远程控制能力强大,高效实用,其性能可以和 Windows 和 MAC 中的任何远程控制软件媲美。
在 Linux 中,VNC 包括以下四个命令:vncserver,vncviewer,vncpasswd,和 vncconnect。大多数情况下,普通用户的使用只需要其中的两个命令:vncserver 和 vncviewer。
有线网络远程连接树莓派
在系统写入内存卡之后,内存卡的容量会发生变化。
修改 cmdline.txt
文件如下,分配IP:
ip=192.168.137.100 console=serial0,115200 console=tty1 root=PARTUUID=7e39db9c-02 rootfstype=ext4 elevator=deadline fsck.repair=yes rootwait quiet init=/usr/lib/raspi-config/init_resize.sh splash plymouth.ignore-serial-consoles
增加ssh文件,开放ssh远程连接服务
SSH是一种网络协议,用于计算机之间的加密登录。如果一个用户从本地计算机,使用SSH协议登录另一台远程计算机,我们就可以认为,这种登录是安全的,即使被中途截获,密码也不会泄露。最早的时候,互联网通信都是明文通信,一旦被截获,内容就暴露无疑。
1995年,芬兰学者Tatu Ylonen设计了SSH协议,将登录信息全部加密,成为互联网安全的一个基本解决方案,迅速在全世界获得推广,目前已经成为Linux系统的标准配置。
在电脑启动cmd窗口进行Ping连接测试
ping (Packet Internet Groper),因特网包探索器,用于测试网络连接量的程序。Ping发送一个ICMP;回声请求消息给目的地并报告是否收到所希望的ICMP echo (ICMP回声应答)。它是用来检查网络是否通畅或者网络连接速度的命令:
在Windows下,进入已写入树莓派系统的SD卡,找到 config.txt
(最好备份一下这个)。建议,不管你是什么显示器,或者高清电视机,最好在没显示的情况,请将 config.txt
中的分辨率调低一些,不要老想着,我的显示设备支持1080p,就非得一步到位,建议从下面的低分辨率尝试开始。
计算机显示器使用的分辨率 :
hdmi_mode=4 640x480 60Hz
hdmi_mode=9 800x600 60Hz
hdmi_mode=16 1024x768 60Hz
CEA规定的电视规格分辨率 :
hdmi_mode=2 480p 60Hz
hdmi_mode=4 720p 60Hz
另外:若直接使用的是HDMI线接显示设备,请在config.txt中添加一条:
hdmi_ignore_edid=0xa5000080
这个是命令树莓派不检测HDMI设备的任何信息,只按照我们指定的分辨率输出。 这样就不会自动检测显示设备的分辨率,而避免掉很多可能不显示的造成因素,就会按照你自己设置的分辨率显示。分辨率也按照上面列出的尝试,修改 config.txt
中 hdmi_mode=x
的 x
值。
在命令提示符前面,可以看到你当前所处的工作目录。在Linux中,你的主目录会被缩写为波浪线(~)。刚刚打开LX终端( LXTerminal)时,它会把当前的工作目录切换到你的主目录下,命令提示符会显示如下:
pi@raspberrypi:~ $
➊ 你的用户名: pi, 后面加上@符号。
❷ 你的主机名 ( 默认的主机名是raspberrypi )
❸ Shell的当前工作目录。默认是你的主目录 ( ~ )
❹ 这是命令提示符。你输人的一切内容都会出现在它的右侧,按回车键执行你所输入的命令。
Raspbian文件系统中部分重要的目录
操作文件或目录常用命令
pwd # 显示当前工作目录(print working directory) touch # 创建空文件 mkdir # 创建目录(make directoriy) -p # 父目录不存在情况下先生成父目录 (parents) cp # 复制文件或目录(copy) -r # 递归处理,将指定目录下的文件与子目录一并拷贝(recursive) mv # 移动文件或目录、文件或目录改名(move) rm # 删除文件(remove) -r # 同时删除该目录下的所有文件(recursive) -f # 强制删除文件或目录(force) rmdir # 删除空目录(remove directoriy) cat # 显示文本文件内容 (catenate) more、less # 分页显示文本文件内容 head、tail # 查看文本中开头或结尾部分的内容 head -n 5 a.log # 查看a.log文件的前5行 tail -F b.log # 循环读取(follow)
Linux中zip压缩和unzip解压缩命令详解
# 把 /home 目录下面的mydata目录压缩为 mydata.zip zip -r mydata.zip mydata #压缩mydata目录 # 把 /home 目录下面的 mydata.zip 解压到 mydatabak 目录里面 unzip mydata.zip -d mydatabak # 把 /home 目录下面的abc文件夹和123.txt压缩成为abc123.zip zip -r abc123.zip abc 123.txt # 把 /home 目录下面的 wwwroot.zip 直接解压到 /home 目录里面 unzip wwwroot.zip # 把 /home 目录下面的 abc12.zip、abc23.zip、abc34.zip 同时解压到 /home 目录里面 unzip abc*.zip # 查看把/home目录下面的wwwroot.zip里面的内容 unzip -v wwwroot.zip # 验证/home目录下面的wwwroot.zip是否完整 unzip -t wwwroot.zip # 把/home目录下面wwwroot.zip里面的所有文件解压到第一级目录 unzip -j wwwroot.zip
查看系统信息:-a
--all : print all information, in thefollowing order
[root@VM-4-4-centos ~]# uname -a
Linux VM-4-4-centos 3.10.0-1160.11.1.el7.x86_64 #1 SMP Fri Dec 18 16:34:56 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux
在互联网上防火墙是一种非常有效的网络安全模型,通过它可以 隔离风险区域 (即Internet或有一定风险的网络)与 安全区域 (局域网)的连接,同时不会妨碍人们对 风险区域的访问 。所以它一般连接在核心交换机与外网之间。
开启防火墙:servicefirewalld start
关闭防火墙:service firewalld stop
查看端口状态:netstat -tunlp
完整的防火墙系统通常是由 屏蔽路由器 和 代理服务器 组成
屏蔽路由器:
是一个多端口的IP路由器,它通过对每一个到来的IP包依据组规则进行检查来判断是否对之进行转发。屏蔽路由器从包头取得信息,例如协议号、收发报文的IP地址和端口号、连接标志以至另外一些IP选项,对IP包进行过滤。
代理服务器:
是防火墙中的一个服务器进程,它能够代替网络用户完成特定的TCP/TP功能。一个代理服务器本质上是一个 应用层的网关 ,网关我们前天讲到过,它就是一个关口。
一个为特定网络应用而连接两个网络的网关。用户就一项TCP/TP应用,比如Telnet或者FTP,同代理服务器打交道,代理服务器要求用户提供其要访问的远程主机名。
当用户答复并提供了正确的用户身份及认证信息后,代理服务器连通远程主机,为两个通信点充当中继。整个过程可以对用户完全透明。用户提供的用户身份及认证信息可用于用户级的认证。
防火墙从诞生开始,已经历了四个发展阶段:
基于路由器的防火墙
用户化的防火墙工具套
建立在通用操作系统上的防火墙
具有安全操作系统的防火墙
安装MicroPython插件(Plugins)
运行PyCharm IDE,点击插件[Plugins] (见图3)。在”Search”编辑框输入:micropython,点击绿色背景的[Install]按钮安装MicroPython插件,具体操作见图3中的红色椭圆框所示。
接下来可安装树莓派Pico开发板MicroPython固件(若已在树莓派Pico开发板中事先安装了MicroPython固件,则忽略此步骤)
配置结果展示如下:接下来Pycharm会帮我们安装MicroPython编程相应的Package库
流水灯的实现
树莓派实验板的实现流水灯:
[Pin(i, Pin.OUT) for i in range(0,8)]
这是列表生成器,在基础研究篇讲到过,迭代器的思想。
from machine import Pin
from utime import sleep
# 定义LED 管理
leds = [Pin(i, Pin.OUT) for i in range(0,8)]
while True:
for n in range(0,8):
leds[n].value(1)
sleep(0.05)
for n in range(0,8):
leds[n].value(0)
sleep(0.05)
光敏电阻的测试
光敏电阻器是利用半导体的光电效应制成的一种电阻值随入射光的强弱而改变的电阻器;入射光强,电阻减小,入射光弱,电阻增大。光敏电阻器一般用于光的测量、光的控制和光电转换(将光的变化转换为电的变化)。
from machine import Pin from time import sleep makerobo_D0 = 15 def init_makerobo(): global D0 D0 = Pin(makerobo_D0, Pin.IN) def print_infor(value): if value == 1: print("\n****** 现在是黑夜 ******\n") else: print("\n****** 现在是白天 ******\n") def makerobo_loop(): makerobo_status = 1 while True: makerobo_temp = D0.value() if makerobo_temp != makerobo_status: print_infor(makerobo_temp) makerobo_status = makerobo_temp sleep(0.1) if __name__ == "__main__": init_makerobo() makerobo_loop()
步进电机测试
ULN2003是大电流驱动阵列,多用于单片机、智能仪表、PLC、数字量输出卡等控制电路中。可直接驱动继电器等负载。
代表“反相器”,就是输入端和输出端的信号是反相的,比如如果输入端是低电平时,输出端就是高电平;当输入端是高电平时,输出端就是低电平。
LN2003也是一个7路反向器电路,即当输入端为高电平时ULN2003输出端为低电平,当输入端为低电平时ULN2003输出端为高电平,继电器得电吸合。
from machine import Pin from time import sleep makerobo = 15 def init_makerobo(): global motor motor = Pin(makerobo, Pin.OUT) def start_motor(): choose = 1 while True: choose = input("请输入( 1 | 开 )或( 0 | 关 ):") motor.value(int(choose)) if __name__ == "__main__": init_makerobo() start_motor()
蜂鸣器的实验测试:
蜂鸣器设置为高电平,关闭蜂鸟器,蜂鸣器为低电平触发,所以使能蜂鸣器让其发声。
from machine import Pin from time import sleep makerobo_Buzzer = 0 # 有源蜂鸣器管脚定义 # GPIO设置函数 def makerobo_setup(pin): global makerobo_BuzzerPin global buzzer makerobo_BuzzerPin = pin buzzer=Pin(makerobo_BuzzerPin,Pin.OUT) # 设置有源蜂鸣器管脚为输出模式 buzzer.value(1) # 蜂鸣器设置为高电平,关闭蜂鸟器 # 打开蜂鸣器 def makerobo_buzzer_on(): buzzer.value(0) # 蜂鸣器为低电平触发,所以使能蜂鸣器让其发声 # 关闭蜂鸣器 def makerobo_buzzer_off(): buzzer.value(1) # 蜂鸣器设置为高电平,关闭蜂鸟器 # 控制蜂鸣器鸣叫 def makerobo_beep(x): makerobo_buzzer_on() # 打开蜂鸣器控制 sleep(x) # 延时时间 makerobo_buzzer_off() # 关闭蜂鸣器控制 sleep(x) # 延时时间 # 循环函数 def loop(): while True: makerobo_beep(0.5) # 控制蜂鸣器鸣叫,延时时间为500mm # 程序入口 if __name__ == '__main__': makerobo_setup(makerobo_Buzzer) # 设置GPIO管脚 loop() # 调用循环函数
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。