【转】PCDuino用python读取GPIO数据

1 安装Request(Requests 是一个 Python 的 HTTP 客户端库):

$ sudo apt-get install python-requests

2安装python-pip(pip是一个可以替代easy_install的安装和管python软件包的工具 ) :

$sudo apt-get install python-imaging python-imaging-tk python-pip python-dev git

注意:有时候运行这个指令会安装失败,那么需要输入:

$sudo apt-get update 后再输入此指令。

3安装Flask(Flask是是一个轻量级的Web应用框架, 使用Python编写):

$sudo pip install flask

4到GitHub下载“python-pcduino”这个库文件放到ubuntu下,打开Sample,复制“blink_led”更名为“hello-gpio”,然后在里面将

“blink_led”更名为“hello-gpio.py",”hello-gpio.py“代码如下:

  1. from flask import Flask, render_template
  2. import datetime
  3. import gpio
  4. app = Flask(__name__)
  5. channel = { 0:‘gpio0‘, 1:‘gpio1‘, 2:‘gpio2‘, 3:‘gpio3‘, 4:‘gpio4‘,
  6. 5:‘gpio5‘, 6:‘gpio6‘, 7:‘gpio7‘, 8:‘gpio8‘, 9:‘gpio9‘,
  7. 10:‘gpio10‘, 11:‘gpio11‘, 12:‘gpio12‘, 13:‘gpio13‘
  8. }
  9. @app.route("/")
  10. def hello():
  11. now = datetime.datetime.now()
  12. timeString = now.strftime("%Y/%m/%d  %H:%M:%S")
  13. templateData = {
  14. ‘title‘:‘HELLO!‘,
  15. ‘time‘:timeString
  16. }
  17. return render_template(‘main.html‘,**templateData)
  18. @app.route("/readpin/<pin>")
  19. def readPin(pin):
  20. gpio.pinMode(channel[int(pin)],gpio.INPUT)
  21. value  = " "
  22. if  (gpio.digitalRead(channel[int(pin)]) == gpio.HIGH)  :
  23. value = "Read GPIO" + pin + " is high !"
  24. else :
  25. value = "Read GPIO" + pin +" is low !"
  26. templateData = {
  27. ‘title‘ : ‘Status of GPIO‘ + pin ,
  28. ‘value‘ : value
  29. }
  30. return render_template(‘pin.html‘,**templateData)
  31. if __name__ == "__main__" :
  32. app.run (host=‘0.0.0.0‘,port=80,debug=True)

复制代码

5在文件夹”hello-gpio“的目录下新建一个名为”templates“的文件夹,文件夹内包含2个文件:“main.html ,  pin.html” <ignore_js_op>

<ignore_js_op>

main.html内容如下:

  1. <!DOCTYPE html>
  2. <head>
  3. <title>{{ title }} </title>
  4. </head>
  5. <body>
  6. <center>
  7. <h1>Welcome to pcDuino !</hl>
  8. <h2>The date and time on the server is :{{ time }}</h2>
  9. </center>
  10. </body>
  11. </html>

复制代码

pin.html内容如下:

  1. <!DOCTYPE html>
  2. <head>
  3. <title>{{ title }} </title>
  4. </head>
  5. <body>
  6. <center>
  7. <h1>Pin Status </h1>
  8. <h2>{{ value }}</h2>
  9. <hr>
  10. nbsp;               <a href="http://www.pcduino.org">pcDuino.org</a>
  11. </center>
  12. </body>
  13. </html>

复制代码

6输入: $sudo python ./hello-gpio.py 运行代码: <ignore_js_op>

7查看pcduino的ip地址:$ifconfig : <ignore_js_op>

8在另外一台与pcDuino共用同一个网络的pc机上打开浏览器输入 192.168.35 你会看到如下信息:

时间: 2024-10-28 09:43:12

【转】PCDuino用python读取GPIO数据的相关文章

python读取数据库数据,读取出的中文乱码问题

最近遇到python读取数据库数据,读取出的中文乱码问题, 网络搜索的基本是: "1. Python文件设置编码 utf-8 (文件前面加上 #encoding=utf-8)2. MySQL数据库charset=utf-83. Python连接MySQL是加上参数 charset=utf84. 设置Python的默认编码为 utf-8 (sys.setdefaultencoding(utf-8)" 这些,一一尝试后仍未解决.去数据库查看了下,发现这个出现中文乱码的字段类型是varcha

python读取excel数据

excel是很常用的表格工具.不过,对程序员来说,这可不是件好事件.因为excel的数据既不像txt那样,随意一种语言.脚本,写个函数就能把数据读出来分析.也不像JSON这种开源的数据格式,有N多的开源库来读取.就算没有,知道数据格式,自己写个库也自己用不至于太难. 要想读取excel的数据,大多使用ODBC数据库驱动或者COM的方式.对于ODBC,不同的语言有不同的实现,如java的JDBC.而对于COM方式,几乎是在后台运行一个excel程序,像new Excel.Application()

python——读取MATLAB数据文件 *.mat

鉴于以后的目标主要是利用现有的Matlab数据(.mat或者.txt),主要考虑python导入Matlab数据的问题.以下代码可以解决python读取.mat文件的问题.主要使用sicpy.io即可.sicpy.io提供了两个函数loadmat和savemat,非常方便. # adapted from http://blog.csdn.net/rumswell/article/details/8545087 import scipy.io as sio #import matplotlib.p

Python读取文件数据

1题目要求: 文本文件有这些数据,需要的只有其中的5个属性,如下颜色标记 像以下的数据达到75万组: 1product/productId: B0000UIXZ4 2product/title: Timex Link USB Watch 3product/price: unknown 4review/userId: A14MVG2I9PS6NZ 5review/profileName: B. Kuiper "Wah" 6review/helpfulness: 0/0 7review/s

利用Python读取json数据并求数据平均值

要做的事情:一共十二个月的json数据(即12个json文件),json数据的一个单元如下所示.读取这些数据,并求取各个(100多个)城市年.季度平均值. { "time_point": "2014-01", "area": "***", "aqi": "71", "pm2_5": "47", "pm10": "69&

python 读取SQLServer数据插入到MongoDB数据库中

# -*- coding: utf-8 -*-import pyodbcimport osimport csvimport pymongofrom pymongo import ASCENDING, DESCENDINGfrom pymongo import MongoClientimport binascii '''连接mongoDB数据库'''client = MongoClient('10.20.4.79', 27017)#client = MongoClient('10.20.66.10

python读取文本文件数据

本文要点刚要: (一)读文本文件格式的数据函数:read_csv,read_table 1.读不同分隔符的文本文件,用参数sep 2.读无字段名(表头)的文本文件 ,用参数names 3.为文本文件制定索引,用index_col 4.跳行读取文本文件,用skiprows 5.数据太大时需要逐块读取文本数据用chunksize进行分块. (二)将数据写成文本文件格式函数:to_csv 范例如下: (一)读取文本文件格式的数据集 1.read_csv和read_table的区别:  #read_cs

arduino读取GPIO数据

一.接线 五向按键模块接线方法,直接盗图,COM接VCC或GND都可以,只不过获得的电平不同 二.初始化 GPIO接口使用前,必须初始化,设定引脚用于输入还是输出 pinMode(D7, INPUT); pinMode(D7, OUTPUT); 三.读取数据 int val = digitalRead(D7); 读取后电平为0/1 原文地址:https://www.cnblogs.com/punkrocker/p/11524903.html

python 读取excel数据到mysql

#!/usr/bin/env python# -*- coding: utf-8 -*-import MySQLdbimport osimport sysimport rereload(sys)sys.setdefaultencoding( "utf-8" )import timeimport datetimetoday=datetime.date.today()oneday=datetime.timedelta(days=1)to_yes=today-onedayyesterday=