树莓派3B上手(无显示器)
硬件组成
- 主板 Raspberry 3 B
- 5v 2.5A 电源
- USB转TTL串口
- 16G TF卡
- linux PC
系统下载
制作系统盘
Raspberry
- 打开该系统官网页面,按照说明进行刻盘(把系统刻录到TF卡)
刻录完成后TF卡会被分成三个分区
比如linux下:
lsblk
#然后可以确定TF卡是/dev/sdc
sudo dd bs=4M if=2018-11-13-raspbian-stretch-lite.img of=/dev/sdc conv=fsync status=progress
-
编辑TF卡中的文件
- 在config.txt文件中添加
dtoverlay=pi3-miniuart-bt
,因为树莓派有两个串口,一个是独立的硬件串口,但在树莓派3中默认连接到了蓝牙,另一个串口没有独立时钟,时钟会跟随CPU主频的变化发生变化,而引脚TX0 RX0默认连接的就是第二个串口名为ttyS0
,我们要让连接蓝牙的串口连接到引脚而不是连接到蓝牙,所以使用这句配置命令,使用之后serial0对应的就是ttyAMA0
设备也就是有独立时钟源的串口了 - cmdline文件修改成
dwc_otg.lpm_enable=0 console=tty1 console=serial0,115200 root=/dev/mmcblk0p2 rootfstype=ext4 elevator=deadline fsck.repair=yes rootwait
,这里主要是修改console值
(原:dwc_otg.lpm_enable=0 console=serial0,115200 console=tty1 root=/dev/mmcblk0p2 rootfstype=ext4 elevator=deadline fsck.repair=yes rootwait quiet init=/usr/lib/raspi-config/init_resize.sh quiet splash plymouth.ignore-serial-consoles)
- 在config.txt文件中添加
插TF卡到板子
连接串口到电脑,使用串口(minicom/kermit/screen等)工具打开串口,波特率115200,8N1
上电启动
登录,用户名:pi 密码: raspberry
设置WiFi
有多种方法:
- 最简单的是使用
sudo raspi-config
命令,然后选择网络设置
- 也可以使用命令行修改配置文件,如下:
-
ifconfig
看网卡名,比如叫wlan0 iwlist wlan0 scan
-
sudo vi /etc/wpa_supplicant/wpa_supplicant.conf
(由/etc/network/interfaces
调用),使用vi编辑器(i是插入,x是删除,注意delete不是删除),添加
network={
ssid="WIFINAME"
psk="password"
}
然后sudo ifup wlan0
或者直接重启即可,可以添加多个wifi信息,可以设置优先级 参考文章1 参考文章2
- 使用官方说的方法
ssh链接
$ raspi-config
在高级设置里面开启ssh
出现错误,无法连接,提示连接关闭。cat /var/log/auth.log发现是ssh秘钥没有生成,
生成秘钥,参考文章
ssh-keygen -t dsa -f /etc/ssh/ssh_host_dsa_key
ssh-keygen -t rsa -f /etc/ssh/ssh_host_rsa_key
然后重启服务/etc/init.d/ssh start
VNC连接(桌面环境)
$ sudo raspi-config
选择 advance setting --> VNC--> enable
$ vncserver -geometry 1366x768
根据实际情况设置分辨率
下载客户端 安装vnc viewer
如果PC是linux,也可以使用remmina
然后使用vnc viewer登录,填写ip,然后登录即可
基本命令
vncserver -geometry 1366x768
vncserver -kill :1
设置远程访问
- 暴露到外网
由于树莓派连接的路由,所以需要到路由后台设置DMZ主机,指定树莓派的ip为DMZ主机,让树莓派暴露在外网中,或者只使用某个端口。 - ip地址获得
由于路由是动态获取ip,ip会发生变化,向有些人的做法是开机发送邮件告知ip,这种做法简直。。。了。当然是用域名绑定啊= =。有些路由器直接支持一些域名提供商的域名动态绑定,比如花生壳的,只需要在花生壳注册一个账号,会获得一个免费域名,或者自己买收费域名,然后在路由器后台登录即可,下次访问树莓派直接使用域名访问,比如192.168.0.102
可替换为pi.neucrack.com
。如果路由器没有这个功能,在树莓派中安装一个花生壳的客户端也是一样的,具体如何使用参见花生壳官网
如果不能设置路由器端口转发或者DMZ主机怎么办呢???
用用ngrok可以哦
更改一个速度更快的源
sudo vim /etc/apt/sources.list
比如:注释第一行,添加
deb http://mirrors.zju.edu.cn/raspbian/raspbian stretch main non-free contrib
deb-src http://mirrors.zju.edu.cn/raspbian/raspbian stretch main non-free contrib
显示器分辨率调整
如果有显示器,需要调整分辨率,在/boot/config.txt中设置
hdmi_group=2 //将显示模式切换成DMT(显示器模式)
hdmi_mode=82 //1920x1080 60Hz 1080p
hdmi_ignore_edid=0xa5000080
如果需要显示器播放音频
hdmi_drive=2
更多详细的设置见官方说明(一定要看哦,写得很全)