Friday, 30 August 2013

Making a raspberry pi temperature logger- (step 3- wiringPi)

Inevitably with your pi your going to need to use the GPIO's to control some kind of circuit.

To do this you are going to need a program called wiringPi, this lets you control the GPIO's through the LXterminal.

However, with this program you can not easily program the GPIO's through a runable script (you have to type the commands manually into the LXterminal every time you want to change a GPIO). As a result, you are probably going to want to download another program called wiringpi2-python. This lets you program the pi's GPIO's through  a python script (although for it to work you must first sudo python from the LXterminal) and hence you can write a continuous script that contains commands to turn the GPIO's on and off.

This is the link with all the instructions of how to download wiringPi
https://projects.drogon.net/raspberry-pi/wiringpi/download-and-install/


Here is a link to all the instructions necessary to install and run wiringpi2 and on this page is linked some simple instructions of how to use it. (Although you can find our code below)
http://raspi.tv/how-to-install-wiringpi2-for-python-on-the-raspberry-pi

{code}

This code makes 5 led lights (when plugged in right) flash on and off prettily. You need any 5 led's the colour doesn't matter. Use GPIO's 17, 27, 22, 24 and 25 (there are plenty of pictures on the internet to help) and make sure all led's have a resistor in series and are grounded (ground gpio is third pin on the 5V side)

import wiringpi2 as wiringpi
from time import sleep
wiringpi.wiringPiSetupGpio()
wiringpi.pinMode(17, 1)
wiringpi.pinMode(27, 1)
wiringpi.pinMode(22, 1)
wiringpi.pinMode(24, 1)
wiringpi.pinMode(25, 1)
wiringpi.digitalWrite(17, 0) #yellow
wiringpi.digitalWrite(27, 0) #green
wiringpi.digitalWrite(22, 0) #bottum red
wiringpi.digitalWrite(24, 0) #mid red
wiringpi.digitalWrite(25, 0) #top red
sleep(3)
while 2 == 2:
wiringpi.digitalWrite(22, 1)
wiringpi.digitalWrite(24, 1)
wiringpi.digitalWrite(25, 1)
wiringpi.digitalWrite(17, 0)
wiringpi.digitalWrite(27, 1)
sleep(0.02)
wiringpi.digitalWrite(27, 0)
wiringpi.digitalWrite(17, 1)
sleep(0.02)
wiringpi.digitalWrite(22, 0)
wiringpi.digitalWrite(24, 0)
wiringpi.digitalWrite(25, 0)
wiringpi.digitalWrite(17, 0)
wiringpi.digitalWrite(27, 1)
sleep(0.02)
wiringpi.digitalWrite(27, 0)
wiringpi.digitalWrite(17, 1)
sleep(0.02)
wiringpi.digitalWrite(22, 1)
wiringpi.digitalWrite(24, 1)
wiringpi.digitalWrite(25, 1)
wiringpi.digitalWrite(17, 0)
wiringpi.digitalWrite(27, 1)
sleep(0.04)
wiringpi.digitalWrite(27, 0)
wiringpi.digitalWrite(17, 1)
sleep(0.04)
wiringpi.digitalWrite(22, 0)
wiringpi.digitalWrite(24, 0)
wiringpi.digitalWrite(25, 0)
wiringpi.digitalWrite(17, 0)
wiringpi.digitalWrite(27, 1)
sleep(0.04)
wiringpi.digitalWrite(27, 0)
wiringpi.digitalWrite(17, 1)
sleep(0.04)
wiringpi.digitalWrite(22, 1)
wiringpi.digitalWrite(24, 1)
wiringpi.digitalWrite(25, 1)
wiringpi.digitalWrite(17, 0)
wiringpi.digitalWrite(27, 1)
sleep(0.06)
wiringpi.digitalWrite(27, 0)
wiringpi.digitalWrite(17, 1)
sleep(0.06)
wiringpi.digitalWrite(22, 0)
wiringpi.digitalWrite(24, 0)
wiringpi.digitalWrite(25, 0)
wiringpi.digitalWrite(17, 0)
wiringpi.digitalWrite(27, 1)
sleep(0.06)
wiringpi.digitalWrite(27, 0)
wiringpi.digitalWrite(17, 1)
sleep(0.06)
wiringpi.digitalWrite(22, 1)
wiringpi.digitalWrite(24, 1)
wiringpi.digitalWrite(25, 1)
wiringpi.digitalWrite(17, 0)
wiringpi.digitalWrite(27, 1)
sleep(0.08)
wiringpi.digitalWrite(27, 0)
wiringpi.digitalWrite(17, 1)
sleep(0.08)
wiringpi.digitalWrite(22, 0)
wiringpi.digitalWrite(24, 0)
wiringpi.digitalWrite(25, 0)
wiringpi.digitalWrite(17, 0)
wiringpi.digitalWrite(27, 1)
sleep(0.08)
wiringpi.digitalWrite(27, 0)
wiringpi.digitalWrite(17, 1)
sleep(0.08)
wiringpi.digitalWrite(22, 1)
wiringpi.digitalWrite(24, 1)
wiringpi.digitalWrite(25, 1)
wiringpi.digitalWrite(17, 0)
wiringpi.digitalWrite(27, 1)
sleep(0.01)
wiringpi.digitalWrite(27, 0)
wiringpi.digitalWrite(17, 1)
sleep(0.01)
wiringpi.digitalWrite(22, 0)
wiringpi.digitalWrite(24, 0)
wiringpi.digitalWrite(25, 0)
wiringpi.digitalWrite(17, 0)
wiringpi.digitalWrite(27, 1)
sleep(0.01)
wiringpi.digitalWrite(27, 0)
wiringpi.digitalWrite(17, 1)
sleep(0.01)

No comments:

Post a Comment