介绍
RPi硬件是SoC系统单芯片 CPU、GPU、DSP、SDRAM集成到一个芯片中。 RPi没有BIOS,配置信息保存在/boot/config.txt里。 官方系统raspbian系统,基于debian wheezy arm内核版本,桌面环境LXDE。 RPi很多应用是python开发的,外围硬件如GPIO、串口、I2C都可以通过python库函数编程。预装了python3和IDLE。 RPi启动慢主是要因为系统装在SD卡上,IO是主要瓶颈。 内置 scratch图形化编程开发环境,类似labview。是计算机教学工具。 调用RPi.GPIO库,可以编程控制GPIO等硬件接口。避免驱动开发的问题。
Raspberry Pi上预装有GCC编译器,可以进行C/C++编程开发。对于有经验的Linux开发者,如果把开发环境配置好,甚至可以直接用Raspberry Pi编译Linux kernel,只不过速度很慢,据尝试过的人称,需要大约5小时以上。
官方提供的RPi.GPIO库主要针对的是Python编程,除此之外还有一些第三方库也非常好用,比如WiringPi,这是一款模仿Arduino Wiring风格的函数库,而 且支持C/C++、 Ruby、 Python、 Perl、Java、 TCL等多种语言编程,不局限于Python,使用起来非常简单,习惯C/C++编程的人可以通过这个库控制 Raspberry Pi的硬件接口。WiringPi还提供了附加的功能函数,如用于串口处理的shiftIn/shiftOut库(同时支持板载串口和USB转接的串口),用于控制LCD的库,简单的线程编程和进程优先级控制库,还完全支持PiFace扩展板。
raspberry pi与arduino
Arduino是一个受欢迎的开放源硬体平台,使用的是微控制器, Raspberry Pi使用的是应用处理器,两者之间的配合还可以极大扩展应用和创意丰富性, RaspberryPi甚至能够成为Arduino的开发平台。
- Simon Monk的博客中提到了如何使用Python实现两者之间的通讯, Arduino会传送’Hello Pi’的讯号,而Raspberry Pi便会传送数字讯号给Arduino, Arduino便会根据该讯号闪耀LED特定的次数。
- Raspberry Pi方面,作者使用Python进行开发,使用特定的Python库——pySerial,这个库包含了Arduino的指令,可以存取串行口
状态灯
红灯应常亮,闪烁是电路出了问题。
绿灯闪烁,开机状态。
系统没后续动作,绿灯状态:微弱、熄灭不闪烁。再操作,绿灯会闪烁。
常用系统
-
raspbian
-
ubuntu mate
-
kali linux
-
ubuntu core 这个系统安全性高
源码下载
raspberry pi 官方文档,有可以参考的资料
mac下烧系统的方法
插内存卡到电脑上 查看是否能被读取
df -lh
卸载sd卡
diskutil umount /dev/disk2s1
确认设备号
diskutil list
烧写系统
sudo dd bs=4m if=rpi_35_v6_1_2_3_jessie_kernel_4_4_50.img of=/dev/disk2
卸载
diskutil unmountDisk /dev/disk2
远程桌面
安装VNC
sudo apt-get install tightvncserver
启动
tightvncserver
设置密码,view-only设为no 再次启动
tightvncserver
Mac使用vnc viewer连接 教程
中文
去掉en_GB.UTF-8 UTF-8 选en_US.UTF-8 UTF-8 zh_CN.UTF-8 UTF-8 zh_CN.GBK GBK 重启,新版已经可以显示中文了。 老版还需要安装字库
sudo apt-get install ttf-wqy-zenhei ttf-wqy-microhei xfonts-wqy
sudo apt-get install scim-pinyin
sudo apt-get install scim-tables-zh
sudo apt-get install chromium-browser chromium-l10n
查看主板温度
sudo /opt/vc/bin/vcgencmd measure_temp
RPi截屏
sudo apt-get install scrot
scrot
时间校准
sudo ntpd -s -d
连接wifi
热点扫描
sudo iwlist wlan0 scan
编辑配置文件
sudo nano /etc/wpa_supplicant/wpa_supplicant.conf
network={ ssid=”testing” psk=”testingPassword” }
wpa_cli -i wlan0 reconfigure
ifconfig wlan0
搭web服务
- LAMP(apache+mysql+php)
sudo apt-get install apache2 sudo apt-get install mysql-server sudo apt-get install php5 sudo apt-get install php5-mysql
- LNMP(nginx+sqlite+php)
sudo apt-get install nginx sudo apt-get install php5-fpm php5-sqlite
使用静态IP
cd /etc/network
sudo vi interfaces
iface eth0 inet static
address 192.168.1.10
netmask 255.255.255.0
gateway 192.168.1.1
或者直接在路由器里将mac与ip进行绑定
SD卡备份
linux系统下,Mac系统只需把M改为小写m
备份
sudo dd bs=4M if=/dev/sdb of=raspbian.img
恢复
sudo dd bs=4M if=raspbian.img of=/dev/sdb
压缩备份
sudo dd bs=4M if=/dev/sdb | gzip > raspbian.img.gz
压缩恢复
gunzip --stdout raspbian.img.gz | sudo dd bs=4M of=/dev/sdb
其他
查看版本
lsb_release -a
不用显示器连接raspberry
- 格式化TF卡。
- 刷入系统。
- 在boot目录下创建SSH文件。
- 网线直连电脑,将连接共享至直连网卡。
- arp -a显示bridge即为直连网络。
- ssh pi@192.168.2.2直连。
-
ssh登录后可做如下操作 使用自带无线网卡连接wifi上网,连接后,可不需要直连。修改apt源,改成国内源。
sudo apt-get install xrdp
macos安装 Micro Remote Desktop
安装远程桌面,使当前主机可以远程桌面连接树莓派。 raspberry修改默认密码、扩展卡空间、修改location等配置。 安装nginx、vim等。 安装sslocal、privoxy等。
- 配置妥当后,镜像备份,以备系统崩溃后使用。
- 可以当成渗透测试平台用,也可当成ddos攻击目标使用。
- 连接视频头,做人脸检测使用。
raspberry 3B硬件配置
cpu:broadcom BCM2837
4 cores
1200 MHz
ram:1024M
ethernet 100M: 1个
wlan: broadcom BCM43438
wlan2.4GHz:b/g/n
wlan 5.0GHz:不支持
bluetooth:4.1
serial connection parameters: 115200/8N1
JTAG:Yes
Power:5VDC, 2.4A