品牌咨询
联系方式
公司地址
苏州工业园区生物纳米园A4#216
联系电话
4000-520-616 / 18915418616
传真号码
0512-67156496
电子邮箱
info@ebiomall.com
公司网址
https://www.ebiomall.com

树莓派B+使用入门&RPI库安装&wringPi库安装 - 小淼博客 - 博客园

作者: 时间:2024-11-10 点击量:

最近看看试用一下树莓派进行一些开发操作,于是入手一块Raspberry Pi B+的板子来玩。由于没有显示器,没有备用的键盘和鼠标,所以想到用SSH来控制树莓派,刚开始还很担心已经安装好的操作系统到底有没有安装SSH服务,要是没有安装就蛋疼了。。。(后面发现官方的系统里面居然没有安装VIM编辑器,于是想着还是试着用用早已忘记的Vi,结果真的是用的焦头烂额啊!!!!简直反人类了,于是安装了VIM,发现更本找不到VIM的安装包,于是 sudo apt-get update;sudo apt-get upgrade等了半天弄完之后,sudo apt-get install -y vim,好的,现在终于可以使用VIM编程序了。)先来看看Raspberry Pi 3 B+的配置:1GB RAM802.11.b/g/nWireless LANBluetooth 4.1SD Card 8GBBroadcom BCM2835芯片(700 MHz ARM11)Memory (SDRAM): 256 Megabytes (shared with GPU)USB 2.0 ports: 1 2 (via integrated USB hub)Video outputs: Composite RCA (PAL NTSC) , HDMI (rev 1.3 1.4)Audio outputs: 3.5 mm jack, HDMILow-level peripherals: 8 × GPIO, UART, I sup2;C bus, SPI bus with two chip selects, +3.3 V, +5 V, ground下面来配置我的树莓派开发板:下载XShell工具(直接百度搜索安装就可以了(选择普通安装))安装完之后如下所示:然后选择新建(如下所示):协议选择SSH,端口为默认端口,名称自己取名字,区别其他的SSH链路就可以了,主机位置填写自己树莓派的主机的IP地址,我是采用路由器的LAN口和树莓派进行链接的,因此我可以通过查看路由器的网页管理器来查看接入设备的IP地址和MAC地址等信息,比如登录192.198.1.1的路由器控制界面,查看连接设备找到Raspberry,这里我们只需要用到的是Raspberry的IP地址信息。输入完IP地址之后我们就可链接了,当然第一次链接我们还需要输入Raspberry的系统的用户名和密码,这个在官方的系统中的账户和密码都是--》账户:pi 密码:raspberry。输入完账户密码之后就完成了和树莓派的连接,当然这些操作都是要等你上电Raspberry并插入代用Sys的SD Card之后的操作。(其他的连接方式和查看Raspberry的IP的方式请看Reference的链接!)LAN扣查看设备的IP地址(地址池一般是从000到255之间的)可以直接在这些地址中进行查看搜索IP连接完成之后如下图所示:完成连接之后我们就能顺利的通过Xshell的命令行对树莓派进行操作了!Cheers!硬件参数以及GPIO控制编程:如下图所示(这是树莓派的GPIO的引脚图):风扇的安装位置就是引脚4和引脚6,注意红色线连接的是5V的位置pin4,黑色的线连接的是pin6。后面觉得风扇声音太大了就没用了,之后打算有时间给风扇上串连一个滑动变阻器调节风扇的速度。 这个就是树莓派的硬件的安装图,风扇的安装,这里我考虑使用raspberry的python编写实时监测CPU温度的脚本,进而启动控制风扇的转动(后面升级为自动调节风扇的速度)下面开始配置使用我们的GPIO引脚:安装GPIO的操作库:1-- C语言库包安装 wiringPi.h和编程1$ sudoapt-getupdate2$ sudoapt-getinstallgit-core3$ gitclonegit://git.drogon.net/wiringPi4$ cdwiringPi5$ ./build6$ cd wiringPi/wiringPi7$ make8$ make install完成以上的8个步骤的操作就完成了WiringPi库的安装。注意,我这里遇到一个问题,找了很久才解决的问题,就是当我编译我的main.c文件的时候报出如下的错误(gcc main.c -o main -l wiringPi):/usr/lib/gcc/arm-linux-gnueabihf/4.9/../../../arm-linux-gnueabihf/crt1.o:在函数‘_start’中:/build/glibc-H706YU/glibc-2.19/csu/../ports/sysdeps/arm/start.S:119:对‘main’未定义的引用collect2: error: ld returned 1 exit status报错的解决办法是执行第7条和第8条指令,make ;make install 这样就建立安装了Dynamic lib和Static Lib的安装。接下来就是编程啦~~~~~~~ 1 #include wiringPi.h 2 #include stdio.h 3 #include stdlib.h 4 int main(int argc,char* argv[]) 6 if (argc 2) 8 printf(\"Usage example: ./led 4 n\"); 9 return 1;11 int pinNumber = atoi(argv[1]);//字符串转整形函数atoi()函数12 printf(\"PinNumber is:%dn\",pinNumber);13 if (-1 == wiringPiSetup())15 printf(\"Setup wiringPi failed!\");16 return 1;18 printf(\"The Code will begain to Running!n\");19 pinMode(pinNumber, OUTPUT); // set mode to output 20 while(1) 22 digitalWrite(pinNumber, 1); // output a high level 23 delay(800);24 digitalWrite(pinNumber, 0); // output a low level 25 delay(800);27 return 0;28 }接下来编译上述程序:gcc led.c -o led -lwiringPi将得到的led可执行程序执行即可看到现象。2-- Python语言库包安装RPi.GPIO和编程Python的开发很是顺畅,没有遇到任何编译出错的问题,一路绿灯啊~~~1$sudoapt-getinstallpython-dev2$sudoapt-getinstallpython-pip(这是一个python开发包的安装插件)3$ sudopipinstallrpi.gpio测试安装成功:接下来就可以开始编程啦!!!!!(我用的是BCM GPIO的17号引脚,似乎24号引脚不好用,大家注意一下) 1 import os 2 import sys 3 import RPi.GPIO as GPIO 4 import time 6 led_pin=17 8 GPIO.setwarnings(False) 9 GPIO.setmode(GPIO.BCM)10 GPIO.setup(led_pin,GPIO.OUT)12 print \'linker led pin 17 (BCM GPIO)\'14 while True:15 GPIO.output(led_pin,True)16 time.sleep(0.2)17 GPIO.output(led_pin,False)18 time.sleep(0.2)我就不上效果图了(盗用几张图片T.T),这些控制都很简单,想要看看还有那些好的基于树莓派Raspberry的项目,看一看这里:http://www.shumeipaiba.com/最后就是关机的问题了:在命令行运行:poweroff now即可等待关机之后,拔掉电源即可,或者自己给USB电源线上面安装一个开关也可以。Reference:http://www.codelast.com/%E5%8E%9F%E5%88%9B%E9%80%9A%E8%BF%87raspberry-pi%E7%9A%84gpio%E6%8E%A5%E5%8F%A3%E6%8E%A7%E5%88%B6%E5%8F%91%E5%85%89%E4%BA%8C%E6%9E%81%E7%AE%A1control-led-through-the-gpio-on-raspberry-pi/(入门C语言控制GPIO+Python控制GPIO)http://www.cnblogs.com/emouse/archive/2013/06/07/3124027.html(没有显示器如何连接,如何控制)http://shumeipai.nxez.com/2013/09/07/no-screen-unknow-ip-login-pi.html(没有显示器且IP未知的情况下登录树莓派)http://blog.csdn.net/wangkai_123456/article/details/21530963(main函数的两个参数的相关问题和使用方法int main(int argc,int *argv[])) 大家转载请注明出处!谢谢!在这里要感谢GISPALAB实验室的各位老师和学长学姐的帮助!谢谢~

>>> 更多资讯详情请访问蚂蚁淘商城

rpicorp商品列表
图片/货号 产品名/品牌 价格/货期 操作