树莓派B+使用入门&RPI库安装&wringPi库安装

最近看看试用一下树莓派进行一些开发操做,因而入手一块Raspberry Pi B+的板子来玩。因为没有显示器,没有备用的键盘和鼠标,因此想到用SSH来控制树莓派,刚开始还很担忧已经安装好的操做系统到底有没有安装SSH服务,要是没有安装就蛋疼了。。。html

(后面发现官方的系统里面竟然没有安装VIM编辑器,因而想着仍是试着用用早已忘记的Vi,结果然的是用的焦头烂额啊!!!!简直反人类了,因而安装了VIM,发现更本找不到VIM的安装包,因而 sudo apt-get update;sudo apt-get upgrade等了半天弄完以后,sudo apt-get install -y vim,好的,如今终于可使用VIM编程序了。)python

先来看看Raspberry Pi 3 B+的配置linux

1GB RAMgit

802.11.b/g/nWireless LANshell

Bluetooth 4.1编程

SD Card 8GBvim

Broadcom BCM2835芯片(700 MHz ARM11)less

Memory (SDRAM): 256 Megabytes (shared with GPU)编辑器

USB 2.0 ports: 1 2 (via integrated USB hub) ide

Video outputs: Composite RCA (PAL & NTSC) , HDMI (rev 1.3 & 1.4) 

Audio outputs: 3.5 mm jack, HDMI 

Low-level peripherals: 8 × GPIO, UART, I²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$ sudo apt-get update

    2$ sudo apt-get install git-core

    3$ git clone git://git.drogon.net/wiringPi

    4$ cd wiringPi

    5$ ./build

    6$ cd wiringPi/wiringPi

    7$ make

    8$ 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[])
 5 {
 6     if (argc < 2)
 7     {
 8         printf("Usage example: ./led 4 \n");
 9         return 1;
10     }
11     int pinNumber = atoi(argv[1]);//字符串转整形函数atoi()函数
12     printf("PinNumber is:%d\n",pinNumber);
13     if (-1 == wiringPiSetup())
14     {
15         printf("Setup wiringPi failed!");
16         return 1;
17     }
18     printf("The Code will begain to Running!\n");
19     pinMode(pinNumber, OUTPUT); // set mode to output 
20     while(1) 
21     {
22         digitalWrite(pinNumber, 1); // output a high level 
23         delay(800);
24         digitalWrite(pinNumber, 0); // output a low level 
25         delay(800);
26     }
27     return 0;
28 }

接下来编译上述程序:

gcc led.c -o led -lwiringPi

将获得的led可执行程序执行便可看到现象。

2-- Python语言库包安装RPi.GPIO和编程

Python的开发非常顺畅,没有遇到任何编译出错的问题,一路绿灯啊~~~

    1$ sudo apt-get install python-dev

    2$ sudo apt-get install python-pip(这是一个python开发包的安装插件)

    3$ sudo pip install rpi.gpio

测试安装成功:

接下来就能够开始编程啦!!!!!(我用的是BCM GPIO的17号引脚,彷佛24号引脚很差用,你们注意一下)

 1 import os
 2 import sys
 3 import RPi.GPIO as GPIO
 4 import time
 5 
 6 led_pin=17
 7 
 8 GPIO.setwarnings(False)
 9 GPIO.setmode(GPIO.BCM)
10 GPIO.setup(led_pin,GPIO.OUT)
11 
12 print 'linker led pin 17 (BCM GPIO)'
13 
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[]))

相关文章
相关标签/搜索