Raspberry Pi液晶显示器检索推文

时间:2016-11-08 03:36:32

标签: python twitter raspberry-pi lcd twython

我正在与一个小组合作创建一个设备,该设备将检索推文并将其显示在Raspberry Pi平台上的LCD上。我们正在使用带有Cobbler T和面包板的Raspberry Pi 3型号。我们正在使用下面的代码,并且一直在尝试实现一个按钮,该按钮可以刷新和检索新的推文到LCD,或者调暗或睡眠显示一段时间。我们一直在处理使用LCD的GPIO时遇到问题。我们已经设置了一个按钮,通过面包板访问RPi,并尝试对按钮进行编码以使屏幕变暗或检索新的推文,但我们一直收到有关GPIO警告的错误消息或者没有任何反馈。非常感谢任何建议或建议。

更新的代码 我们仍然无法在面包板上实现按钮以便在按下时运行所有这些代码(即,获取最近的推文并在液晶显示屏上显示它们),并且当按下按钮或LCD写入时,小LED亮起字符串。

非常感谢任何帮助。

import twitter
from RPLCD import CharLCD
import RPi.GPIO as GPIO
import time
from html.parser import HTMLParser

lcd = CharLCD(cols=24,rows=2,pin_rs=26, pin_e=24, pins_data=[22, 18, 16,     12],numbering_mode=GPIO.BCM)
api = twitter.Api(consumer_key = 'jGuhu2M0luIBw7B713re7EGNp',
consumer_secret = 'YGazMMJbE0RzHBUy0zOhU9QbBtKLYLFcz5PiWDkYYulEq5pOKE',
access_token_key = '788782390873391104-DAykFUDPkj0lO3rMGln3F2D5ZT1auro',
access_token_secret = '9WiJeEbOYeEGMkGh6jr8UKsOt0aXAyUarH1Qzhjp74Qba')

#htmlParser = html.parser.HTMLParser()\
htmlParser = HTMLParser()

try:
    while True:
        try:
            homeTimeline = api.GetHomeTimeline(count=1)
        except:
            lcd.clear()
            lcd.write_string(u'An Error occurred! Retrying')
            continue
        tweetUser = homeTimeline[0].user.screen_name
        tweetText = homeTimeline[0].text
        tweetText = htmlParser.unescape(tweetText) # convert HTML symbols like &
        tweetText = tweetText.replace('\n',' ') # replace newlines with space
        tweetText = tweetText[12:]
        # Break the tweet into two parts as the LCD screen can display 
        # only 80 characters at a time

        seg1_len = 80 - len(tweetUser) - 2 
        tweetText1 = tweetText[:seg1_len]
        tweetText2 = tweetText[seg1_len:]
        lcd.clear()
        lcd.write_string(tweetText1)    
        if tweetText2:
            for i in range(7):
                time.sleep(8)
                lcd.clear()
                lcd.write_string(tweetText2)
                time.sleep(8)
                lcd.clear()
                lcd.write_string(tweetText1)
         else:
            time.sleep(60)
except KeyboardInterrupt:
     pass
finally:
     lcd.clear()
     lcd.write_string(u'Twitter feed stopped'

=========================更新===================== ================ 我们要克服的问题是: 1.实现搜索特定主题标签的方法 2.使用LCD上的#标签显示推文 3.检索到新推文时点亮LED 4.按下按钮使显示屏变亮或变暗 5.按下按钮时,检索具有指定标签的新推文

我试图弄清楚如何编写代码来搜索hashtag以及如何在LCD上显示它。目前的代码似乎只通过代码中定义的Twitter API从我的Twitter帐户中检索和显示推文。我也不确定将GPIO输入或输出放在代码中的哪个位置,以便在按下按钮时获取新推文或在收到某些内容时如何点亮LED。

LED连接到GPIO(5) 按钮1连接到GPIO(20) 按钮2连接到GPIO(21)

我将上传更好的面包板设置图片。

enter image description here

在网上大纲中制作面包板上的设计。

0 个答案:

没有答案