Post date: 2014/08/30 7:11:01
aitendo 1.8インチ液晶モジュール [M018C7735SPI]を接続し, RASPBERRY LIFEを参考にプログラム作成
$ sudo vi /etc/modprobe.d/raspi-blacklist.conf #blacklist spi-bcm2708 $ sudo vi /etc/modules spidev $ sudo shutdown -h now $ ls -la /dev/spidev0.0 crw------- 1 root root 153, 0 1月 1 1970 /dev/spidev0.0 $ sudo chmod 666 /dev/spidev0.0 $ sudo chmod 666 /dev/spidev0.1 $ sudo apt-get instal python-pip $ sudo pip install spidev self.write((0x2A, 0x00, 0x02, 0x00, 0x81)) self.write((0x2B, 0x00, 0x01, 0x00, 0xA0)) -> self.write((0x2A, 0x00, 0x00, 0x00, 0x7F)) self.write((0x2B, 0x00, 0x00, 0x00, 0x9F)) $ sudo apt-get install ttf-kochi-gothic $ sudo apt-get install python-urllib3 $ sudo pip install pillow self.write((0x2A, 0x00, 0x02, 0x00, w + 1)) self.write((0x2B, 0x00, 0x01, 0x00, h)) -> self.write((0x2A, 0x00, 0x00, 0x00, w - 1)) self.write((0x2B, 0x00, 0x00, 0x00, h - 1)) if __name__ == "__main__": ##################################### # read BMP085 bmp = BMP085.BMP085() # Attempt to get sensor readings. temp = bmp.read_temperature() # (C) pressure = bmp.read_pressure()/100.0 # (hPa) altitude = bmp.read_altitude() # (m) ##################################### # post local data to GrowthForecast host = " http://localhost:5125/api/sensor/weather/" targs = shlex.split("curl -F number=" + str(temp) + host + "temperature") pargs = shlex.split("curl -F number=" + str(pressure) + host + "pressure") p = subprocess.Popen(pargs) p = subprocess.Popen(targs) ##################################### # initialize the object of livedoor weatherforecast (from LASPBERRY LIFE) fst = Forecast() ##################################### # draw LCD # upper half : Forecast fst.show('XXXXXX') # Location ID # lower half (0,90)-(127,159) : Local data font16 = ImageFont.truetype("/usr/share/fonts/truetype/ttf-dejavu/DejaVuSans-Bold.ttf", 16) dt = datetime.datetime.today() fst.draw.text([0, 90], "[ LOCAL ]", font=font16, fill=(0xFF, 0xFF, 0xFF)) fst.draw.text([0, 106], str(dt.month)+"-"+str(dt.day)+" "+str(dt.hour)+":"+str(dt.minute), font=font16, fill=(0xFF, 0xFF, 0xFF)) fst.draw.text([0, 122], "T="+str(temp)+"(C)", font=font16, fill=(0xFF, 0xFF, 0xFF)) fst.draw.text([0, 138], "p="+str(int(pressure))+"(hPa)", font=font16, fill=(0xFF, 0xFF, 0xFF)) fst.lcd.blit(fst.im,0,90,127,159) # time.sleep(60.0) ##################################### # show IP address fst.draw.rectangle([0, 90, 127, 159], fill=(0x40, 0x00, 0x80)) myip=ipget.ipget() fst.draw.text([0, 90], "eth0 :", font=font16, fill=(0xFF, 0xFF, 0xFF)) fst.draw.text([0, 106], myip.ipaddr("eth0"), font=font16, fill=(0xFF, 0xFF, 0xFF)) fst.draw.text([0, 122], "wlan0:", font=font16, fill=(0xFF, 0xFF, 0xFF)) fst.draw.text([0, 138], myip.ipaddr("wlan0"), font=font16, fill=(0xFF, 0xFF, 0xFF)) fst.lcd.blit(fst.im,0,90,127,159) # time.sleep(5.0) ##################################### GPIO.cleanup() 課題