当前位置:   article > 正文

树莓派3B及传感器测试实验_树莓派3b usb端口的带宽

树莓派3b usb端口的带宽

树莓派3B介绍

树莓派3B和树莓派4B参数比较

型号

Raspberry Pi 4B

Raspberry Pi 3B

CPU

1.5GHz,Quad-Core Broadcom

BCM2711(Cortex A-72)

1.2GHz,Quad-Core Broadcom

BCM2837 (Cortex A-53)

RAM

1GB/2GB/4GB LPDDR4(取决于型号)

1G LPDDR2

GPU

500 MHZ Broadcom VideoCore VI

250MHZ Broadcom VideoCrore IV

无线

802.11.b/g/n/ac(2.4/5GHz) 1.2Gbps

Bluetooth 5.0

802.11.b/g/n(2.4/5GHz) 150Mbps

Bluetooth 4.1

以太网

Gigabit Ethernet

10/100 Ethernet

USB

2个 USB 2.0 / 2个 USB 3.0

USB Type-c

4 个 USB 2.0

Micro USB

GPIO

40个GPIO引脚

40个GPIO引脚

最大分辨率

2 x micro-HDMI ports, up to 4Kp60 supported

1920x1080

电源

5V,3A DC

5V,2.5A DC

树莓派引脚对照表

TdoList:上图是树莓派2B的引脚图,目前看画的最好,找到个人官网,但发现已经关闭。后续看能不能找到树莓派3B和4B的引脚图。更详细引脚说明参考​Raspberry Pi GPIO Pinout​​。仅有GPIO.1(物理引脚12)支持 PWM_OUTPUT 模式,仅有GPIO.7(物理引脚 7)支持 CLOCK 输出模式。

特性

I2C

UART

SPI

数据线数目

两根线:SDA(串行数据)和SCL(串行时钟)

两根线:TXD(发送)和RXD(接收)

四根线:MOSI(主机输出从机输入)、MISO(主机输入从机输出)、SCLK(时钟)、SS(片选)

传输速率

最高可达3.4 Mbps

通常情况下速率较低

速率高,可达数十Mbps

通信方式

同步通信

异步通信

同步通信

设备地址

7位或10位设备地址

不需要地址

不需要地址

线长限制

通常不超过1米

通常不超过15米

通常不超过3米

多主机支持

支持多主机

不支持多主机

支持多主机

硬件成本

硬件成本低,只需要两个IO口

硬件成本低,只需要两个IO口

硬件成本较高,需要4个或更多IO口

适用场景

短距离通信

适用于点对点通信和低速数据传输

高速数据传输

常见应用

I/O扩展器、EEPROM、温度传感器等

终端设备、调试设备等

存储器、显示屏、WiFi模块等

树莓派固定IP配置

sudo nano /etc/dhcpcd.conf

因此要改静态IP就要更改/etc/dhcpcd.conf文件。

在此文件后面添加

设置有线配置可以改成eth0(网卡用ifconfig来查询)

最后在shell中输入命令

sudo reboot now

修改软件更新源

sudo nano /etc/apt/sources.list

清华大学软件源stretch版本:

  1. deb http://mirrors.tuna.tsinghua.edu.cn/raspbian/raspbian/ bullseye main non-free contrib rpi
  2. deb-src http://mirrors.tuna.tsinghua.edu.cn/raspbian/raspbian/ bullseye main non-free contrib rpi

树莓派实验前期准备

接线准备

面包板

T型扩展板

彩虹排线(一般情况,彩虹线红色为电源线,黑色为地线。)

三者接线图如下(理论上T型板电源引脚与开发板电源对应。本次购买T型板,标红凸起朝向开发板,不要反接)

网络准备

把树莓派接入公司网络,物理网口连接。配置一个无人使用的静态IP。

打开浏览器,输入公司网页登录IP;打开浏览器开发者模式,选择网络-》保留日志

找到login.php,复制-》复制为cURL(bash);

找到有自己用户名的登陆脚本,例如查找"xuwt",找到类似这段的登陆脚本:

  1. curl 'http://10.0.6.106/ac_portal/login.php' \
  2. -H 'Accept: */*' \
  3. -H 'Accept-Language: zh' \
  4. -H 'Connection: keep-alive' \
  5. -H 'Content-Type: application/x-www-form-urlencoded; charset=UTF-8' \
  6. -H 'Cookie: Sessionid=731386501-1' \
  7. -H 'Origin: http://10.0.6.106' \
  8. -H 'Referer: http://10.0.6.106/ac_portal/20200703125620/pc.html?template=20200703125620&tabs=pwd&vlanid=0&_ID_=0&switch_url=&url=http://10.0.6.106/homepage/index.html&controller_type=&mac=08-c0-21-04-9a-cb' \
  9. -H 'User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/114.0.0.0 Safari/537.36 Edg/114.0.1823.67' \
  10. -H 'X-Requested-With: XMLHttpRequest' \
  11. --data-raw 'opr=pwdLogin&userName=xuwt&pwd=dea07317bd6e11b9e0&auth_tag=1689129415144&rememberPwd=1' \
  12. --compressed \
  13. --insecure
  14. curl 'http://10.0.6.106/ac_portal/login.php' \
  15. -H 'Accept: */*' \
  16. -H 'Accept-Language: zh-CN,zh;q=0.9' \
  17. -H 'Connection: keep-alive' \
  18. -H 'Content-Type: application/x-www-form-urlencoded; charset=UTF-8' \
  19. -H 'Origin: http://10.0.6.106' \
  20. -H 'Referer: http://10.0.6.106/ac_portal/20200703125620/pc.html?template=20200703125620&tabs=pwd&vlanid=0&_ID_=0&switch_url=&url=http://10.0.6.106/homepage/index.html&controller_type=&mac=08-c0-21-04-9a-cb' \
  21. -H 'User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/115.0.0.0 Safari/537.36' \
  22. -H 'X-Requested-With: XMLHttpRequest' \
  23. --data-raw 'opr=pwdLogin&userName=xuwt&pwd=510dbf5267f2d5bcafa047&auth_tag=1691130767238&rememberPwd=0' \
  24. --compressed \
  25. --insecure

编写一个启动脚本,需要联网时启动。或者把脚本路径写入到rc.local文件,实现树莓派启动后接入网络。有时可能联网失败,手动执行下脚本即可。

交叉编译准备:

参考​​【NFV落地】入网测试Kube5gNfvo总结​

传感器实验测试

在树莓派基础实验中,主要利用的是​​wiringPi​​​库或者​​bcm2835​​库。

wiringPi库:

​Raspberry Pi | Wiring | Download & Install | Wiring Pi​

​WiringPi / WiringPi 镜像库​​ 32位库

https://github.com/guation/WiringPi-arm64 64位库

目前网站已经不更新,但是参考文档较多。

WiringPi includes a software-driven PWM handler capable of outputting a PWM signal on any of the Raspberry Pi’s GPIO pins.(WiringPi包括一个软件驱动的PWM处理器,能够在Raspberry Pi的任何GPIO引脚上输出PWM信号。)

而wiringPi一般用于C++等平台

  1. #include "wiringPi.h"
  2. wiringPiSetup();

安装完wiringPi库后,输入​​gpio readall​​可以查看树莓派详细引脚信息。

相关库函数:

硬件初始化函数原型

函数返回值

函数说明

int wiringPiSetup (void)

返回:执行状态,-1表示失败

当使用这个函数初始化树莓派引脚时,程序使用的是wiringPi 引脚编号表。引脚的编号为 0~16需要root权限

int wiringPiSetupGpio (void)

返回:执行状态,-1表示失败

当使用这个函数初始化树莓派引脚时,程序中使用的是BCM GPIO 引脚编号表。需要root权限

wiringPiSetupPhys(void)

不常用,不做介绍

/

wiringPiSetupSys (void) ;

不常用,不做介绍

/

通用GPIO控制函数原型

函数参数

函数说明

void pinMode (int pin, int mode)

pin:配置的引脚mode:指定引脚的IO模式可取的值:INPUT、OUTPUT、PWM_OUTPUT,GPIO_CLOCK

作用:配置引脚的IO模式注:只有wiringPi 引脚编号下的1脚(BCM下的18脚) 支持PWM输出;只有wiringPi编号下的7(BCM下的4号)支持GPIO_CLOCK输出

void digitalWrite (int pin, int value)

pin:控制的引脚value:引脚输出的电平值。可取的值:HIGH,LOW分别代表高低电平

让对一个已经配置为输出模式的引脚,输出指定的电平信号

int digitalRead (int pin)

pin:读取的引脚返回:引脚上的电平,可以是LOW HIGH 之一

读取一个引脚的电平值 LOW HIGH ,返回

void analogWrite(int pin, int value)

pin:引脚

value:输出的模拟量

value - 占空比:0(始终断)到255(始终导通)之间。

模拟量输出。树莓派的引脚本身是不支持AD转换的,也就是不能使用模拟量的API,需要增加另外的模块

int analogRead (int pin)

pin:引脚返回:引脚上读取的模拟量

模拟量输入树莓派的引脚本身是不支持AD转换的,也就是不能使用模拟量的API,需要增加另外的模块

void pwmWrite (int pin, int value)

pin:引脚value:写入到PWM寄存器的值,范围在0~1024之间

输出一个值到PWM寄存器,控制PWM输出。pin只能是wiringPi 引脚编号下的1脚(BCM下的18脚)

void pullUpDnControl (int pin, int pud)

pin:引脚pud:拉电阻模式可取的值:PUD_OFF 不启用任何拉电阻。关闭拉电阻PUD_DOWN 启用下拉电阻,引脚电平拉到GNDPUD_UP 启用上拉电阻,引脚电平拉到3.3v

对一个设置IO模式为 INPUT 的输入引脚设置拉电阻模式。与Arduino不同的是,树莓派支持的拉电阻模式更丰富。树莓派内部的拉电阻达50K欧姆

软件模拟PWM函数原型

函数参数

函数说明

int softPwmCreate (int pin, int initialValue, int pwmRange)

pin:用来作为软件PWM输出的引脚initalValue:引脚输出的初始值pwmRange:PWM值的范围上限1-100建议100。返回值:0表示成功。

使用一个指定的pin引脚创建一个模拟的PWM输出引脚

其他IO口

void softPwmWrite (int pin, int value)

pin:通过softPwmCreate创建的引脚value:PWM引脚输出的值

更新引脚输出的PWM值

bcm2835库:

​bcm2835: C library for Broadcom BCM 2835 as used in Raspberry Pi​

bcm2835库更加简洁,它只有两个源文件bcm2835.c和bcm2835.h。在使用过程中我们可以选择将其安装到树莓派中来使用,也可以选择直接将两个文件包含到我们的应用代码中。

BCM编码一般都在python库中使用:<

本文内容由网友自发贡献,转载请注明出处:https://www.wpsshop.cn/w/花生_TL007/article/detail/673984
推荐阅读
相关标签
  

闽ICP备14008679号