Pin 13 (GPIO27) et Mise a jour  [RESOLU]

Pour les questions spécifiques sur le Raspberry Pi

Modérateur : Francois

Laurent53
Messages : 21
Enregistré le : mer. 30 sept. 2020 10:43

Re: Pin 13 (GPIO27) et Mise a jour

Message par Laurent53 » jeu. 1 oct. 2020 16:40

Bonjour Bud Spencer ,Mon raspberry utilise Python 2.7.3.

Avec cette mise a jour , je ne n'ai plus a exécutez la ligne outputs_raw = subprocess.check_output(["/root/Adafruit_DHT", typ, pin]).decode('utf-8') .

Adafruit fourni un nouveau fichier en python AdafruitDHT.py

Quand je lance cette commande AdafruitDHT.py 22 27 Répond Temp=8.2* Humidity=3313.1%

Toute ma page qui permettait de lire la sonde est a refaire .

Mon fichier readDHT22T.py permettait de lire la sonde , récupéré les valeurs , allais les copier dans un autre fichier pour un affichage web ,et ensuite effectué après un graphe .

Il faudrait importer le contenu de AdafruitDHT.py dans mon fichier readDHT22T.py
Ou appeler AdafruitDHT.py dans mon programme.

C'est un fichier qu’un ami m'avais fait en 2013 , Si il était encore de se monde il aurais réglé rapidement le probleme . Étant novice de mon coté je pense que je vais en rester la et arrêter de vous embêtez avec sa .

Merci a tous

Bud Spencer
Raspinaute
Messages : 1089
Enregistré le : lun. 15 août 2016 21:38

Re: Pin 13 (GPIO27) et Mise a jour

Message par Bud Spencer » jeu. 1 oct. 2020 17:33

Laurent53 a écrit :
jeu. 1 oct. 2020 16:40
Quand je lance cette commande AdafruitDHT.py 22 27 Répond Temp=8.2* Humidity=3313.1%
3313.3% d'humidité ... pas bon pour les rhumatismes ça :o :lol:

Désolé pour ton ami codeur. Si tu mets le code de ton programme (entre balise code), je veux bien y jeter un coup d'œil pour voir si je peux t'y faire quelque chose. et rassure toi, ça ne m'embête pas, sinon je ne t'aurais pas répondu.
Le premier ennemi de la connaissance n’est pas l’ignorance, c’est l’illusion de la connaissance (S. Hawking).

Laurent53
Messages : 21
Enregistré le : mer. 30 sept. 2020 10:43

Re: Pin 13 (GPIO27) et Mise a jour

Message par Laurent53 » jeu. 1 oct. 2020 17:49

Bonsoir et merci Bud Spencer de bien vouloir jeter un oeuil a mon probleme .

3313.3% d'humidité ... et oui je ne l'avais pas vu celle la non plus !
la réponse de AdafruitDHT.py 22 27 est en degrés fahrenheit au lieu d'etre entre dedrés Celsius !

Voila le code de mon fichier readDHT22T.py

Code : Tout sélectionner

#!/usr/bin/env python
# -*- coding: utf-8 -*-
import locale
import datetime
import time
import subprocess
import os
import sys
import shlex
from re import search


pin = "27"

#fonction pour changer le language de la date en anglais

def get_c_locale_abbrev():
  lc = locale.setlocale(locale.LC_TIME)
  try:
    locale.setlocale(locale.LC_TIME, "C")
    return time.strftime("%a %b %d %H:%M:%S %Y")
  finally:
    locale.setlocale(locale.LC_TIME, lc)





#Fonction pour lecture DHT22
def get_outputs(typ,pin):
    i=0
    Hmax=100
    for test_output in range(5):
        i=i+1
        outputs_raw = subprocess.check_output(["/root/Adafruit_DHT", typ, pin])
        if len(outputs_raw)==44:
            return None,None
        OK = search("Temp", outputs_raw) and search("Hum", outputs_raw)
        if (OK):
            result_humid = search("Hum =\s+([0-9.]+)", outputs_raw)
            humidity = result_humid.group(1)
            if float(humidity)<=Hmax:
                result_temp = search("Temp =\s+([0-9.]+|-[0-9]+)", outputs_raw)
                temperature = result_temp.group(1)
                if float(temperature)!=-3276:
                    return humidity,temperature
    return None,None


humidity,temperature = get_outputs("22",pin)

#print("H:{} t:{}".format(humidity,temperature))

#if the value is None  just put ---
def validatePrint(value):
  if value == None:
     return "---"
  else:
     return "{:.1f}".format(float(value))

#if the value is None tell rrdtool that the value is unknown
def validateRRD(value):
  if value == None:
     return ":U"
  else:
     return ":{}".format(value)


''' **********
 Ici c'est le fichier hist-EXT
 ce fichier est créé avec un modulus % 5 de la minute.
 Donc 5 fichier en alternance et le dernier sera un link sur hist-EXT
 pour permettre d'utiliser hist-EXT sans avoir de problème
 de lecture lorsque le fichier ce fait écrire '''

#current time
current_time= datetime.datetime.now()
histEXT = "/home/www/logs/hist-EXT"

#Nom des fichier
Temp_histEXT= histEXT + "{}".format(current_time.minute % 5) + ".txt"
Link_histEXT= histEXT + ".txt"

#creation du fichier modulus
#try:
if True:
       cla = get_c_locale_abbrev()
       s1 = validatePrint(temperature)
       s2 = validatePrint(humidity) 
       if s1 == '---' or s2 == '---':
         old = open(Link_histEXT).read().split('/')
# Pas propre, mais rapide.
         s1 = old[1]
         s2 = old[2]
       sfile = open(Temp_histEXT,'w')
       sfile.write(cla + " /" +  s1 + "/" + s2 + "/1\n")
       sfile.close()
       subprocess.Popen(["/bin/ln","-fs",Temp_histEXT,Link_histEXT])
   #creation du link  os.symlink ne marche pas si le fichier est déja linké
   #os.symlink(Temp_histEXT,Link_histEXT)
 
#except:
#   print("unable to create {}".format(Temp_histEXT))




webdata = "/home/www/Graph/webdata/"
currentStatus = webdata + "DHT22Status.txt"

try:

  sfile = open(currentStatus,'w')
  sfile.write(validatePrint(humidity) + "," + validatePrint(temperature) + "\n")
  sfile.close()
except:
  print("unable to create '/home/www/Graph/webdata/DHT22Status.txt'")


#now let's insert the result into rrdtool database

fileRrdTool = "/home/www/Graph/data_DHT22.rrd"

#let's fill the command line with the

#Current time (Right now), temperature and humidity
rdata = "N" + validateRRD(temperature) + validateRRD(humidity)


subprocess.Popen(["/usr/bin/rrdtool","update",fileRrdTool,rdata])


#data Extraction to create data point for the charts.

#create a function with start and step parameters
#this way we could create chart with different timing



def rrdExport(start, step, XMLfile):
  texte = "rrdtool xport -s {0} -e now --step {1} ".format(start, step)
  #let's populate for temperature, humidity
  texte += "DEF:{}={}:{}:AVERAGE ".format('a',fileRrdTool,'th_dht22')
  texte += "XPORT:{}:""{}"" ".format('a','th_dht22')
  

  fileout = open(webdata+XMLfile,"w")
  args = shlex.split(texte)
  subprocess.Popen(args,stdout=fileout)
  fileout.close()


# ok extact 3 hours data
rrdExport("now-3h",300, "DHT22T_3h.xml")

#ok 24 hours
rrdExport("now-24h",1800, "DHT22T_24h.xml")

#ok 48 hours
rrdExport("now-48h",7200, "DHT22T_48h.xml")

#ok 1 week
rrdExport("now-8d",43200, "DHT22T_1w.xml")

#ok 1 month
rrdExport("now-1month",76800, "DHT22T_1m.xml")

#ok 3 month
rrdExport("now-3month",537600, "DHT22T_3m.xml")

#ok 1 year
rrdExport("now-1y",1152000, "DHT22T_1y.xml")

#ok just print on the screen what we have

print("DHT22:{}Celsius, {}%".format(validatePrint(temperature),validatePrint(humidity)))

#done
Et voila le code du Fichier Librairie AdafruitDHT.py

Code : Tout sélectionner

#!/usr/bin/python
# Copyright (c) 2014 Adafruit Industries
# Author: Tony DiCola

# Permission is hereby granted, free of charge, to any person obtaining a copy
# of this software and associated documentation files (the "Software"), to deal
# in the Software without restriction, including without limitation the rights
# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
# copies of the Software, and to permit persons to whom the Software is
# furnished to do so, subject to the following conditions:

# The above copyright notice and this permission notice shall be included in all
# copies or substantial portions of the Software.

# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
# SOFTWARE.
import sys

import Adafruit_DHT


# Parse command line parameters.
sensor_args = { '11': Adafruit_DHT.DHT11,
                '22': Adafruit_DHT.DHT22,
                '2302': Adafruit_DHT.AM2302 }
				
if len(sys.argv) == 3 and sys.argv[1] in sensor_args:
    sensor = sensor_args[sys.argv[1]]
    pin = sys.argv[2]
else:
    print('Usage: sudo ./Adafruit_DHT.py [11|22|2302] <GPIO pin number>')
    print('Example: sudo ./Adafruit_DHT.py 2302 4 - Read from an AM2302 connected to GPIO pin #4')
    sys.exit(1)

# Try to grab a sensor reading.  Use the read_retry method which will retry up
# to 15 times to get a sensor reading (waiting 2 seconds between each retry).
humidity, temperature = Adafruit_DHT.read_retry(sensor, pin)

# Un-comment the line below to convert the temperature to Fahrenheit.
# temperature = temperature * 9/5.0 + 32

# Note that sometimes you won't get a reading and
# the results will be null (because Linux can't
# guarantee the timing of calls to read the sensor).
# If this happens try again!
if humidity is not None and temperature is not None:
    print('Temp={0:0.1f}*  Humidity={1:0.1f}%'.format(temperature, humidity))
else:
    print('Failed to get reading. Try again!')
    sys.exit(1)
Un bout de code trouvé sur le net qui permet de passer de degreés Fahrenheit a Celsuis

Code : Tout sélectionner

def celsius2fahrenheit( _celsius ):
  _fahrenheit = ( "%.1f" % (( _celsius * 1.8 ) + 32) )
  return float( _fahrenheit )
 
def fahrenheit2celsius( _fahrenheit ):
  _celsius = ( "%.1f" % (( _fahrenheit - 32 ) * 5/9 ))
  return float( _celsius )
 
if __name__ == '__main__':
  while True: 
    ( _humidity, _celsius ) = Adafruit_DHT.read_retry( _dht, _dht_pin )
    p( "Humidity =&gt; %.1f%% RH" % _humidity ) 
    p( "Temperature =&gt; %.2fF" % celsius2fahrenheit( _celsius ), end='/' )
    p( "%.2fC" % _celsius )
    sleep( _poll_interval )

Bud Spencer
Raspinaute
Messages : 1089
Enregistré le : lun. 15 août 2016 21:38

Re: Pin 13 (GPIO27) et Mise a jour

Message par Bud Spencer » jeu. 1 oct. 2020 20:48

Ok, je vais essayer ton code et voir ce qui cloche la dedans.
Faut juste que je retrouve un dht22 dans mon boxon, mais je sais qu'il y en a ;-)
Le premier ennemi de la connaissance n’est pas l’ignorance, c’est l’illusion de la connaissance (S. Hawking).

Bud Spencer
Raspinaute
Messages : 1089
Enregistré le : lun. 15 août 2016 21:38

Re: Pin 13 (GPIO27) et Mise a jour

Message par Bud Spencer » jeu. 1 oct. 2020 22:29

Que de chose compliqué pour pas grand chose ...

tu ajoutes ca dans les imports de ton fichier readDHT22T.py
import Adafruit_DHT

puis tu vires ta procédure def get_outputs(typ,pin) complete (ou tu la mets en commentaire dans un premier temps)
et tu la remplaces par celle la :

Code : Tout sélectionner

def get_outputs(typ,pin):
    for test_output in range(5):
        humidity, temperature = Adafruit_DHT.read_retry(typ, pin)
        if humidity is not None and temperature is not None:
            if humidity <=100  and temperature !=-3276:
                return humidity, temperature
    return None,None
Ca fait la meme chose, sans appel de subprocess inutile, sans regex inutile et sans les declarations Hmax et i qui ne servent a rien.
Avec can pas besoin de AdafruitDHT.py ni de ce '/root/Adafruit_DHT'.

ps : j'ai remis l'évaluation temperature !=-3276 mais je ne sais pas ou vous avez trouvé ca. un truc du genre 'temperature > -50 and temperature < 100' aurait été scientifiquement parlant plus adapté sur notre planète ...
dhtpython.png
dhtpython.png (52.47 Kio) Vu 4878 fois
Le premier ennemi de la connaissance n’est pas l’ignorance, c’est l’illusion de la connaissance (S. Hawking).

Laurent53
Messages : 21
Enregistré le : mer. 30 sept. 2020 10:43

Re: Pin 13 (GPIO27) et Mise a jour

Message par Laurent53 » ven. 2 oct. 2020 09:02

Bonjour Bud Spencer et merci de vous êtes pencher sur le sujet.
Chez moi sa ne fonctionne toujours pas !

python readDHT22T.py
Traceback (most recent call last):
File "readDHT22T.py", line 40, in <module>
humidity,temperature = get_outputs("22",pin)
File "readDHT22T.py", line 33, in get_outputs
humidity, temperature = Adafruit_DHT.read_retry(typ, pin)
File "/usr/local/lib/python2.7/dist-packages/Adafruit_DHT-1.4.0-py2.7-linux-armv7l.egg/Adafruit_DHT/common.py", line 94, in read_retry
humidity, temperature = read(sensor, pin, platform)
File "/usr/local/lib/python2.7/dist-packages/Adafruit_DHT-1.4.0-py2.7-linux-armv7l.egg/Adafruit_DHT/common.py", line 78, in read
raise ValueError('Expected DHT11, DHT22, or AM2302 sensor value.')
ValueError: Expected DHT11, DHT22, or AM2302 sensor value.
root@PiHome:/home/www/Graph#

Code : Tout sélectionner

#!/usr/bin/env python
# -*- coding: utf-8 -*-
import locale
import datetime
import time
import subprocess
import os
import sys
import Adafruit_DHT
import shlex
from re import search


pin = "27"
typ = "22"
#fonction pour changer le language de la date en anglais

def get_c_locale_abbrev():
  lc = locale.setlocale(locale.LC_TIME)
  try:
    locale.setlocale(locale.LC_TIME, "C")
    return time.strftime("%a %b %d %H:%M:%S %Y")
  finally:
    locale.setlocale(locale.LC_TIME, lc)





#Fonction pour lecture DHT22
def get_outputs(typ,pin):
    for test_output in range(5):
        humidity, temperature = Adafruit_DHT.read_retry(typ, pin)
        if humidity is not None and temperature is not None:
            if humidity <=100  and temperature !=-3276:
                return humidity, temperature
    return None,None


humidity,temperature = get_outputs("22",pin)

#print("H:{} t:{}".format(humidity,temperature))

#if the value is None  just put ---
def validatePrint(value):
  if value == None:
     return "---"
  else:
     return "{:.1f}".format(float(value))

#if the value is None tell rrdtool that the value is unknown
def validateRRD(value):
  if value == None:
     return ":U"
  else:
     return ":{}".format(value)


''' **********
 Ici c'est le fichier hist-EXT
 ce fichier est créé avec un modulus % 5 de la minute.
 Donc 5 fichier en alternance et le dernier sera un link sur hist-EXT
 pour permettre d'utiliser hist-EXT sans avoir de problème
 de lecture lorsque le fichier ce fait écrire '''

#current time
current_time= datetime.datetime.now()
histEXT = "/home/www/logs/hist-EXT"

#Nom des fichier
Temp_histEXT= histEXT + "{}".format(current_time.minute % 5) + ".txt"
Link_histEXT= histEXT + ".txt"

#creation du fichier modulus
#try:
if True:
       cla = get_c_locale_abbrev()
       s1 = validatePrint(temperature)
       s2 = validatePrint(humidity) 
       if s1 == '---' or s2 == '---':
         old = open(Link_histEXT).read().split('/')
# Pas propre, mais rapide.
         s1 = old[1]
         s2 = old[2]
       sfile = open(Temp_histEXT,'w')
       sfile.write(cla + " /" +  s1 + "/" + s2 + "/1\n")
       sfile.close()
       subprocess.Popen(["/bin/ln","-fs",Temp_histEXT,Link_histEXT])
   #creation du link  os.symlink ne marche pas si le fichier est déja linké
   #os.symlink(Temp_histEXT,Link_histEXT)
 
#except:
#   print("unable to create {}".format(Temp_histEXT))




webdata = "/home/www/Graph/webdata/"
currentStatus = webdata + "DHT22Status.txt"

try:

  sfile = open(currentStatus,'w')
  sfile.write(validatePrint(humidity) + "," + validatePrint(temperature) + "\n")
  sfile.close()
except:
  print("unable to create '/home/www/Graph/webdata/DHT22Status.txt'")


#now let's insert the result into rrdtool database

fileRrdTool = "/home/www/Graph/data_DHT22.rrd"

#let's fill the command line with the

#Current time (Right now), temperature and humidity
rdata = "N" + validateRRD(temperature) + validateRRD(humidity)


subprocess.Popen(["/usr/bin/rrdtool","update",fileRrdTool,rdata])


#data Extraction to create data point for the charts.

#create a function with start and step parameters
#this way we could create chart with different timing



def rrdExport(start, step, XMLfile):
  texte = "rrdtool xport -s {0} -e now --step {1} ".format(start, step)
  #let's populate for temperature, humidity
  texte += "DEF:{}={}:{}:AVERAGE ".format('a',fileRrdTool,'th_dht22')
  texte += "XPORT:{}:""{}"" ".format('a','th_dht22')
  

  fileout = open(webdata+XMLfile,"w")
  args = shlex.split(texte)
  subprocess.Popen(args,stdout=fileout)
  fileout.close()


# ok extact 3 hours data
rrdExport("now-3h",300, "DHT22T_3h.xml")

#ok 24 hours
rrdExport("now-24h",1800, "DHT22T_24h.xml")

#ok 48 hours
rrdExport("now-48h",7200, "DHT22T_48h.xml")

#ok 1 week
rrdExport("now-8d",43200, "DHT22T_1w.xml")

#ok 1 month
rrdExport("now-1month",76800, "DHT22T_1m.xml")

#ok 3 month
rrdExport("now-3month",537600, "DHT22T_3m.xml")

#ok 1 year
rrdExport("now-1y",1152000, "DHT22T_1y.xml")

#ok just print on the screen what we have

print("DHT22:{}Celsius, {}%".format(validatePrint(temperature),validatePrint(humidity)))

#done

Bud Spencer
Raspinaute
Messages : 1089
Enregistré le : lun. 15 août 2016 21:38

Re: Pin 13 (GPIO27) et Mise a jour

Message par Bud Spencer » ven. 2 oct. 2020 12:01

vire les 2 déclarations
pin = "27"
typ = "22"

modifie la ligne
humidity,temperature = get_outputs("22",pin)
en
humidity,temperature = get_outputs(22,27)

qu'est ce qu'il y a dans le fichier '"/root/Adafruit_DHT" ?

Je suis sur un PI4 et j'ai pas fais l'essais en python 2 mais de mémoire ca ne marchait déjà plus sur le Pi3
Le premier ennemi de la connaissance n’est pas l’ignorance, c’est l’illusion de la connaissance (S. Hawking).

Laurent53
Messages : 21
Enregistré le : mer. 30 sept. 2020 10:43

Re: Pin 13 (GPIO27) et Mise a jour

Message par Laurent53 » ven. 2 oct. 2020 14:23

CA as l'air d’aller dans le bon sens !! Mais pas de valeurs !

python readDHT22T.py
DHT22:---Celsius, ---%

qu'est ce qu'il y a dans le fichier '"/root/Adafruit_DHT" ?

Code : Tout sélectionner

ELF          (    ¨†  4   LY    4    ( ' $   pÌ  Ìž  Ìž                 4   4€  4€                 4  4  4                      €   €  Ø  Ø      €               t        €            ð   ð            P  P  P  D   D         Qåtd                          /lib/ld-linux-armhf.so.3             GNU                       GNU Él‚)¤ylàËMìoAíeM
             
            
                                                                         	                                                 æJ@„w I@…%                        	              
                   w×›|†ð–|}ís<”|.N=öp±š|?ùÿ¼8ò‹RŒ(!#ù¤“²¤^–“	¬ù{œ|[š;¸+k=­9
qW£                               l   H†         ›   è…         )   †         a   „†         ‰   $†         /   T†         q   `†         L   x!      Z    †         4   l†         S   x†         y   Ð…         €   0†         $   †         f   œ†         r   Ü…         E   †            ô…          __gmon_start__ libc.so.6 nanosleep puts abort mmap __errno_location malloc stderr munmap usleep atoi close open fprintf strcmp strerror __libc_start_main free GLIBC_2.4                                     ii
           P!   x! 	  ! 
  !   !   !   ! 
  !    !   $!   (!   ,!   0!   4!   8!   <!   @!   D!   H!   L!   @-éJ  뀽èà-åàŸåààð¾å0›   Əâ	ÊŒâ0û¼å Əâ	ÊŒâ(û¼å Əâ	ÊŒâ û¼å Əâ	ÊŒâû¼å Əâ	ÊŒâû¼å Əâ	ÊŒâû¼å Əâ	ÊŒâ û¼å Əâ	ÊŒâøú¼å Əâ	ÊŒâðú¼å Əâ	ÊŒâèú¼å Əâ	ÊŒâàú¼å Əâ	ÊŒâØú¼å Əâ	ÊŒâÐú¼å Əâ	ÊŒâÈú¼å Əâ	ÊŒâÀú¼å Əâ	ÊŒâ¸ú¼å Əâ	ÊŒâ°ú¼å Əâ	ÊŒâ¨ú¼å ° ã à ãä
  á -å -åÀŸåÀ-å Ÿå0ŸåÓÿÿëíÿÿë,›  T‡  Ìš  0Ÿå Ÿå0à0“ç  Sãÿ/Îÿÿêš  T   0Ÿå  Óå  Rã    Ãÿ/á|!   Ÿå@-é 0å  S〽0Ÿå  S〽3ÿ/á€½è       H-鰍âÐMâ åår ë 0 á  Sã  0 ãO  ê0å Sã
  
8!Ÿå0å 0“å  á áÿÿë$!Ÿå0å 0“å  á á‡ÿÿë0 ã>  ê 0 ã0å0å0ƒâ 0“å  áðŸåzÿÿë 0 á  Sã  0 ã0å0å0ƒâ 0“å  áÈŸåoÿÿë 0 á  Sã  0 ã0å0å0ƒâ 0“å  á Ÿådÿÿë 0 á  Sã  0 ã0å0å  Sã  | Ÿåiÿÿë0 ã  ê0å0ƒâ 0“å  á€ÿÿë å0å  Sã  ÊL Ÿå\ÿÿë0 ã  ê@0Ÿå  áåJÿÿë åå  ë 0 ã  áÐKâ ˆ½è<›  `›   ›  ¤›  ¨›  °›  Л  ô›   H-鰍â0ÐMâ  å$å 0 ã0å0 ã0å 0 ã0å$0ås0ïæ  á ã3 ë$0ås0ïæ  á ã< 뀟å-ÿÿë$0ås0ïæ  á  ã5 ëhŸå&ÿÿë$0ås0ïæ  á  ã  ëP3Ÿå   ã ƒåD3Ÿå “å<3Ÿå ƒå43Ÿå “å,3Ÿå ƒå$3Ÿå “å3Ÿå ƒå3Ÿå “å3Ÿå  ƒå  ê  ãÿÿë$0ås0ïæ  á* ë 0 á Sãöÿÿ
 0 ã0åH  ê 0 ã0å  ê0å0ƒâ0å0åúSã	  
$0ås0ïæ  á ë 0 á  á0å Ráðÿÿ
   ê   á$0ås0ïæ  á ë 0 á0å0åúSã/  
`2Ÿå 0“å\"Ÿåå‚ç ƒâH2Ÿå  ƒå0å Sã  Ú0å0â  Sã  0å ƒâ  Sã0 ±Ã1 á"Ÿå!’ç‚ á "Ÿå‚ç0åÈ Sã	  Ú0å ƒâ  Sã0 ±Ã1 áØ!Ÿå!’ç‚ãÌ!Ÿå‚ç0å0ƒâ0å0å0ƒâ0å0åc Sã³ÿÿÚ   ê   á¤Ÿå”1Ÿå  “åŒ1Ÿå0“å„Ÿåàå|ŸåÀåtŸå å àåÀå å  áå™þÿë0å& SãL  ÚH1Ÿå “å@1Ÿå “å81Ÿå0“åà,1Ÿå0“åà 1Ÿå0“å0às0ïæ Rá<   0å Sã  Ÿåø0Ÿå “åð0Ÿå 0“å  á á  ázþÿë 0å Sã+  Ì0Ÿå 0“å$ áÀ0Ÿå0“å0‚à:îÇzøîzKízí&zßí'zÇîzKí˜0Ÿå0“å0â$ áˆ0Ÿå0“å0‚à:îÇzøîzKízízßí'zÇîzKí`0Ÿå0“å€0â  Sã  
z[ígzñîzKíT0Ÿåz[íçj·îz[íçz·î {í  á+SìKþÿë0 ã   ê 0 ã  áÐKâ ˆ½è   A ¡  N  œ! €! ,# œ  ,œ  Hœ  0Ÿå  Ãåÿ/á„! @-é  á$0Ÿå 0Óå  Sã    å 0‘å€½è Ÿå-þÿë   ã€½è„! hœ  @-é  á 0Ÿå 0Óå  Sã    å€½è Ÿåþÿë   ã€½è„! ˆœ    á Ÿå 0 á Ñå  Qã  €  €ÿ/ Ÿå áþÿê„! ¬œ    áŸå 0 á Ñå  Qã  €ÿ/ Ÿå áþÿê„! Øœ  p@-é` áP á @ áÄÿÿëPàÀáá  áp@½èÛÿÿê0 Ÿå’0‚à,0Ÿå¢! á À“å1‚àƒ0@àŒàƒ0ƒà  ãs0ïæ á# áæÿÿêÍÌÌÌ\! 0Ÿå  áâ  “å0 â‚à ã áÂÿÿê\! 0Ÿå  á
â  “å0 â‚à ã á¸ÿÿê\! 00Ÿå@-é @ á  á 0“å
 €â@â ƒà‘ÿÿë0 ã4à     €½è\! 00Ÿå@-é @ á  á 0“å €â@â ƒà‚ÿÿë0 ã4à     €½è\! 0Ÿå  áâ  “å0 â‚à ã áÿÿê\! 0 â ã  á á0Ÿå €â  á 0“å ƒàžÿÿê\!  0Ÿå  áâ  “å0 â‚à  ã  ã# á“ÿÿê\! 0 â ã  á á0Ÿå €â  á 0“å ƒàˆÿÿê\!  0Ÿå  áâ  “å0 â‚à  ã  ã# á}ÿÿê\! 0 â ã  á á0Ÿå €â  á 0“å ƒàrÿÿê\!  0Ÿå  áâ  “å0 â‚à  ã  ã# ágÿÿê\! 0 â ã  á á0Ÿå €â  á 0“å ƒà\ÿÿê\!  0Ÿå  áâ  “å0 â‚à  ã  ã# áQÿÿê\! 0 â ã  á á0Ÿå €â  á 0“å ƒàFÿÿê\!  0Ÿå  áâ  “å0 â‚à  ã  ã# á;ÿÿê\! 0 â ã  á á0Ÿå" €â  á 0“å ƒà0ÿÿê\!  0Ÿå  á"â  “å0 â‚à  ã  ã# á%ÿÿê\! 0Ÿå  á  “å” €âÿÿê\!  0Ÿå ‘â Â á  “å&ÀŒâ0 â ‚à áûþÿê\! 0Ÿå€ á, €â0“å  ƒà×þÿê\! 0Ÿå€ á, €â0“å  ƒàíþÿê\! @ ŸåúÏ ãà-å’‚àÐMâ"# á 0 áœà  å  Ÿå0là
  á’àâ0åþüÿëЍ⠀½èÓMb@B ú? ãà-å“ àÐMâ   ãâ
  á èñüÿëЍ⠀½è  Qã   ÿÿêýþÿê@-é @ á  á¹ÿÿë
  ãêÿÿë ã  áºÿÿë
  ãåÿÿë   ã°ÿÿë  á  ã@½è²ÿÿê@-é  ã ãØþÿë  ã ãÕþÿë	  ã ãÒþÿë
  ã ãÏþÿë  ã ãÌþÿë0Ÿå  ã@“å  á£þÿë  á0 ã@½è¬þÿê\! @-é  ã  ã¾þÿë  ã  ã»þÿë	  ã  ã¸þÿë
  ã  ãµþÿë  ã  ã@½è±þÿêÿ/á0Ÿå  á “å €â‡þÿê\! 0Ÿå  á  ã “åšþÿê\! ”0Ÿåp@-é0 ã@“å  á ` á  á‘þÿë€ ã  á  áP„âŒþÿë   ê˜ÿÿë  áRþÿëã
  ãùÿÿ
  á ávþÿë   êŽÿÿë  áWþÿëã
  ãùÿÿ
  áRþÿë  ã€  ã P á  átþÿëu ïæp€½è\! øE-ép áÔ0Ÿå0 ãP á@“å  á ` á  ágþÿë€ ã  á  ácþÿë  Uã „â €     ê
  ãjÿÿë  á$þÿëãùÿÿ

  áÖçIþÿë   êaÿÿë  áþÿëã
  ãùÿÿ

  á%þÿë Ç瀈â Xáëÿÿ  áþÿëã
  ã  Pÿÿë  áþÿëã
  ãùÿÿ
  á  ã€  ãøE½è8þÿê\!   á  áÂÿÿê0Ÿå  á  ã “å/þÿê\!  Ÿå0€â ’ås0ïæ  ã á# á&þÿê\! ð@-éÐMâüCŸå pÔå  Wã
  
ð3Ÿåð#Ÿå  ã ƒå*‚â ƒåÿ*‚â  ƒå)‚â ƒå)Bâ ƒåЍâð€½èÀŸåÀŸå,üÿë¬SŸå  Pã ` á …åx  º¨Ÿåüÿë  Pã p á „å©  
 : áÃŸå#:°á:cp€  á ã  ã0 ã `åÀåüÿë  Pã  …ån  ºTŸåüÿë  Pã p á „åŸ  
 : áÀ•å#:°á:cp€ Àå,ÃŸå  á ã  ã0 ãÀåüÿë  Pã …åc  ºüŸåîûÿë  Pã p á „å”  
 : áÀ•å#:°á:cp€ ÀåØÂŸå  á ã  ã0 ãÀåìûÿë  Pã …åX  º¤ŸåØûÿë  Pã p á „å‰  
 : áÀ•å#:°á:cp€ ÀåhÂŸå  á ã  ã0 ãÀåÖûÿë  Pã …åM  ºLŸåÂûÿë  Pã p á „å~  
 : áÀ•å#:°á:cp€ Àå,ÂŸå  á ã  ã0 ãÀåÀûÿë  Pã …å  £‡ÿÿª2Ÿå @“å¿ûÿë  å®ûÿëôŸå   á  á¶ûÿë   ã|ÿÿêØ1Ÿå @“å´ûÿë  å£ûÿëÌŸå   á  á«ûÿë  áqÿÿê¬1Ÿå @“å©ûÿë  å˜ûÿë¤Ÿå   á  á ûÿë   ãfÿÿê€1Ÿå @“åžûÿë  åûÿë|Ÿå   á  á•ûÿë   ã[ÿÿêT1Ÿå @“å“ûÿë  å‚ûÿëTŸå   á  áŠûÿë   ãPÿÿê(1Ÿå @“åˆûÿë  åwûÿë,Ÿå   á  áûÿë   ãEÿÿêü0Ÿå @“å}ûÿë  ålûÿëŸå   á  átûÿë  á:ÿÿêÐ0Ÿå @“årûÿë  åaûÿëÜŸå   á  áiûÿë  á/ÿÿê¤0Ÿå @“ågûÿë  åVûÿë´Ÿå   á  á^ûÿë  á$ÿÿêx0Ÿå @“å\ûÿë  åKûÿëŒŸå   á  áSûÿë  áÿÿêL0Ÿå @“åQûÿë  å@ûÿëdŸå   á  áHûÿë  áÿÿê„! \!       ÿ       À     @  x! ¤ž    d  ¬  ü  Pž  @  „  ԝ  $ž  xž  8@-éAŸå 0Ôå  SãB  QŸå  •å pã  
 ã+ûÿë 0àã 0…å ”å  Pã  
ûÿëÜ0Ÿå   ã ƒå •å pã  
 ãûÿëÀ0Ÿå  àã ƒå ”å  Pã  
òúÿë 0Ÿå   ã ƒå •å pã  
 ãûÿë„0Ÿå  àã ƒå ”å  Pã  
ãúÿëd0Ÿå   ã ƒå •å pã  
 ãÿúÿëH0Ÿå  àã ƒå ”å  Pã  
Ôúÿë(0Ÿå   ã ƒå •å  Pã  ºúúÿë0Ÿå  àã ƒå  ã8€½è„! \! øE-é ` áHPŸåH ŸåPà
 à
 eàp á€ á®úÿëJ¡°áø…½ @ ã0•ä  á á  á@„â3ÿ/á
 Tá÷ÿÿø…½è…  …  ÿ/á@-é€½è  usage: %s [11|22|2302] GPIOpin#
    example: %s 2302 4 - Read from an AM2302 connected to GPIO #4
  11  22  2302    Select 11, 22, 2302 as type!    Please select a valid GPIO pin #    Using pin #%d
  Data (%d): 0x%x 0x%x 0x%x 0x%x 0x%x
    Temp = %d *C, Hum = %d %
   Temp =  %.1f *C, Hum = %.1f %
  bcm2835_peri_read  paddr %08X
  bcm2835_peri_read_nb  paddr %08X
   bcm2835_peri_write paddr %08X, value %08X
  bcm2835_peri_write_nb paddr %08X, value %08X
   /dev/mem    bcm2835_init: Unable to open /dev/mem: %s
  bcm2835_init: malloc failed: %s
    bcm2835_init: mmap failed: %s
  bcm2835_init: pwmMem malloc failed: %s
 bcm2835_init: mmap failed (pwm): %s
    bcm2835_init: clkMem malloc failed: %s
 bcm2835_init: mmap failed (clk): %s
    bcm2835_init: padsMem malloc failed: %s
    bcm2835_init: mmap failed (pads): %s
   bcm2835_init: spi0Mem malloc failed: %s
    bcm2835_init: mmap failed (spi0): %s
   Üçÿ                                                                                                                                                                                                                                                                                                               $‡  ‡               °…  
   0›                            ”  õþÿo0‚     „     Ü‚  
   ª                   ü                  …     …              þÿÿoð„  ÿÿÿo   ðÿÿoÆ„                                                            ¼…  ¼…  ¼…  ¼…  ¼…  ¼…  ¼…  ¼…  ¼…  ¼…  ¼…  ¼…  ¼…  ¼…  ¼…  ¼…  ¼…  ¼…              ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿGCC: (Debian 4.6.3-8+rpi1) 4.6.3 A.   aeabi $   6 	
,             èŒ  ä
          È       ª  <  ÷  èŒ  Ìš      Õ     G  '>   int O    1W   Ó  g  2i   —  F  4{      ö  ×È      Ž   C  Z  q  ˆ  Ÿ  ¶  ¼   æã   R     \   S  ¸   Ç  Ö  å  A  ’  P  _  n  }  Œ  ›  
"  	1  @  O  ^   x  Ô{   T  û  Ú  8E   y  ^  g  Žl  3  •^  	   Ü  5  L  
  xÛ    z  # p  {^  # 1  ˜œ  
o   >   # 
Ø  š  #
“  š  #
“  š  #
@  š  #
ø  š  #
\   š  #
z  š  #
-   š  # 
]  š  #$
  š  #(
d   š  #,
Ú   "Ú  #0
è  $à  #4
T  &>   #8
ï  *>   #<
%  ,w  #@
F  0i   #D
  1%   #F
   2æ  #G
  6ö  #H
)  ?‚  #P
ã  H˜  #X
ê  I˜  #\
ñ  J˜  #`
ø  K˜  #d
ÿ  LS  #h
=  N>   #l
q  Pü  #p    ´
Í  ºÚ  §  »Ú  # á  ¼à  #·  À>   # 	£  	Û     ö  {     	œ       {   '   5p   B    5B  ret @p   º   Ap     	H  p   R  Gp   k    GB   ;  S    SB  N  Sp    %  cµ    cB  N  cp    ë  /èŒ  øŒ  } Ù  d /L   P   øŒ  4      /              *  >   5  S     4  5  Q     M  4  l  d   g  _  „   M  T  l  G_  ¢      k  l     } °  y  µ   „  Ó   !k  Œ      S„  ñ   y            Ѝ  } ù  ž  "  ©  @  !  ¼     c©  ^  ž  q    "¨  lЍ  ü    M  #  lB  ¯  #N  lp   Í  #j   lp   ë  $v np   	   ¡  ˆü  <Ž  } ¼  %pin ˆL     #>  ˆL   /    ‹B  &‰  ŒL   B  &j   p   [  &N  Žp   r       “<Ž  dŽ  }   %pin “L   Ž  &  •B  ¡  &‰  –L   Ç   É   ›dŽ  ŒŽ  } H  %pin ›L   Þ  &  B  ñ  &‰  žL      '¾  £L   ŒŽ  ÈŽ  .  ¢  %pin £L   N  &  ¥B  a  &‰  ¦L   ¥  &N  §p   Ë   'ó  ­L   ÈŽ    Þ  ü  %pin ­L   þ  &  ¯B    &‰  °L   U  &N  ±p   {   Ó  ¶  ,  } Q  %pin ¶L   Ž  &  ¸B  ¡  &‰  ¹L   Ç  &N  ºp   Þ     ¿,  X  } ¦  %pin ¿L   û  &  ÁB    &‰  ÂL   4  &N  Ãp   K   O  ÆX  „  } û  %pin ÆL   ^  &  ÈB  q  &‰  ÉL   —  &N  Êp   ®   ç  Ï„  °  } P	  %pin ÏL   Ë  &  ÑB  Þ  &‰  ÒL     &N  Óp      ý  Ö°  ܏  } ¥	  %pin ÖL   .  &  ØB  A  &‰  ÙL   g  &N  Úp   ~   p  ß܏    } ú	  %pin ßL   ›  &  áB  ®  &‰  âL   Ô  &N  ãp   ë   Ï  æ  4  } O
  %pin æL   þ  &  èB    &‰  éL   7  &N  êp   N     ï4  `  } ¤
  %pin ïL   k  &  ñB  ~  &‰  òL   ¤  &N  óp   »   ¾  ö`  Œ  } ù
  %pin öL   Î  &  øB  á  &‰  ùL     &N  úp      ä  ÿŒ  ¸  } Q  %pin ÿL   ;  (  B  N  (‰  L   t  (N  p   ‹   )Ä  ¸  ä  } «  *pin L   ž  (  B  ±  (‰  	L   ×  (N  
p   î   ).  ä  ‘  }   *pin L   	  (  B  	  (‰  L   D	  (N  p   [	   )  ‘  <‘  } _  *pin L   n	  (  B  	  (‰  L   §	  (N  p   ¾	   )  <‘  T‘  } ™  *pud L   Û	  (  !B  î	   )9   'T‘  €‘  } ò  *pin 'L   

  *on 'L   
  (  )B  0
  (‰  *L   V
   +³  /p   €‘  œ‘  } 0
  ,  /L   m
  (  1B  €
   )¥   8œ‘  ¸‘  } z
  ,  8L   ¤
  ,T   8p   ·
  (  :B  Ê
   -²  @¸‘  ’  î
  Ó
  ,M   @{     .   B²  ‘h.º   B²  ‘p/­  F>   0  -ª  J’  4’  -  ,  ,  J{   Y  .   L²  ‘h.º   L²  ‘p/­  F>   0  )  X4’  D’  } e  *pin XL   l  *on XL   Š   -(  qD’  ˆ’  ¨     *pin qL   È  *pud qL   Û   1  {ˆ’  ð’  î  Ê  (  …B     2k  Œð’  4“  0  )v   –4“  8“  }   3å  –L   P )ù   Ÿ8“  P“  } A  ,ª  Ÿ^   P  (  ¡B  c   )q  ¥P“  h“  } {  ,>  ¥L   ~  (  §B  ‘   4¼  ­L   h“  ”  ¨  Ú  ,N  ­L   È  (  ¯B  Û  (  °B  ý  5ret Çp   
   -;  Д  ð”  .
  Q  ,   К  N
  ,m  К  l
  *len Ðp   Š
  (  ÒB  ¨
  .  ÓB  Z5i ßp   Ê
   )ã   úð”  ü”  } ‹  *buf úš  é
  *len úp   ü
   ){  ÿü”  •  } Ä  *cs ÿL     (  B  -   )Ñ  •  8•  }   *cs L   D  ,,  L   W  (  B  j  (‰  	L      6.  >   8•  œ™  –  ›  7ˆ•  œ™  (
  ›    `—  Œ—  q  /À   ">   0  Œ—  ¸—    /À   ">   0  ¸—  ä—  ­  /À   ">   0  ä—  ˜  Ë  /À   ">   0  ˜  <˜  é  /À   ">   0  <˜  h˜    /À   ">   0  h˜  ”˜  %  /À   ">   0  ”˜  À˜  C  /À   ">   0  À˜  ì˜  a  /À   ">   0  ì˜  ™    /À   ">   0  7™  œ™  /À   ">   0    	L   6ô  Š>   œ™  Ìš  C  Ù  7¬š  ¼š  /ü  ¼>   0   8  B  \! 9pwm B  l! 9clk B  h! 8Ž  B  `! 8'  B  d! 9fd >   p! 8  ›  ˆ! 8‡   ›  Œ! 8:  !›  ! 8&  "›  ”! 8¶  #›  ˜! 8÷  (L   „! :¡  ¥à  :r  ¦à  :&   §à   %  $ >   :;I  $ >  :;  ( 
  :;     	 I  
:;  
 :;I8
  :;  

 :;I8
   :;  I  ! I/  .?:;'I    :;I    4 :;I  4 :;I  5 I  .?:;'   .?:;'@
   :;I
  .1@   1    4 1  4 1
  1XY   .1@
  !1RUXY  ".?:;'@  # :;I  $4 :;I  % :;I  &4 :;I  '.?:;'I@  (4 :;I  ).?:;'@
  * :;I  +.?:;'I@
  , :;I  -.?:;'@  .4 :;I
  /.?:;I<  0   1.?:;@  2. ?:;@  3 :;I
  4.?:;'I@  54 :;I  6.?:;I@  7  84 :;I
  94 :;I
  :4 :;I?<   I   Ð   û
      /usr/include /usr/lib/gcc/arm-linux-gnueabihf/4.6/include /usr/include/arm-linux-gnueabihf/bits  bcm2835.c    stdint.h   bcm2835.h    stddef.h   types.h   time.h   libio.h   stdio.h     èŒ  /KN./	‚/1u.º./ˆ/)	º/-/R/w.0	Jw
f/-/M+/Mm.g/KK-.I/-/M+1,0Kk„ƒO„ƒO-./i-KK‡-./i-KK†„/gOH0,M+1/M„/ƒOH0,M+1/M„/ƒOH0,M+1/M„/ƒOH0,M+1/M„/ƒOH0,M+1/M„/ƒOH0,M+1/M„/ƒO-///P0,hƒOƒ/Qƒ/P/*1+1+2-/K-/-//†*2*10I//RN/../KKgKKK-20ggggi/-/MK-N0ggggK-25-///NƒO-6y.5x.6Mwf	.1/ - g -2i/ - g -2MG1Mj./6w./6w.	.M…s.
.j I†i/ - g -2rffg-/ - g -2g-P//2+1KN,0ŸPK„O)/KKKï J™JúÂ1+/LØ,05Á1+/Lô,05Á1+/Lô,04Á1+/Lô,04Á1+/Lô,6z.0! J!J!J!J!J!ºJ!J!J!J!J!0/„„KLh/ihKhh/ihKhh/ihKhh/ih/j      ÿÿÿÿ |
        èŒ            øŒ  <   BŽƒ        4  8   BŽƒ        l  4             0          Ѝ  ,   BŽ†…„        ü  @          <Ž  (          dŽ  (          ŒŽ  <   DŽ„        ÈŽ  <   DŽ„          (          ,  ,          X  ,          „  ,          °  ,          ܏  ,            ,          4  ,          `  ,          Œ  ,          ¸  ,          ä  ,          ‘  ,          <‘            T‘  ,          €‘            œ‘            ¸‘  P   FŽD       ’  ,   DŽD       4’            D’  D   BŽ„        ˆ’  h   BŽ„        ð’  D   BŽƒ        4“            8“            P“            h“      DŽ†…„         ”  è   B ŽŠˆ‡†…„ƒ        ð”            ü”            •  $          8•  d  BŽ‡†…„B        œ™  0  BŽ…„ƒ bcm2835_gpio_set _shortbuf _IO_lock_t stderr _IO_buf_end bcm2835_gpio_pudclk millis control _IO_write_end mask _flags bcm2835_spi_setBitOrder BCM2835_GPIO_FSEL_OUTP bcm2835_gpio_set_pad dummy strerror bcm2835_gpio_clr _markers bcm2835_spi_transfern bcm2835_spi_setClockDivider bcm2835_spi_begin spi0 active __time_t bcm2835.c uint32_t bcm2835_gpio_clr_ren _IO_save_end bcm2835_spi_setDataMode shift bcm2835_gpio_len sleeper bcm2835_peri_set_bits bcm2835_gpio_lev bcm2835_gpio_clr_hen bcm2835_gpio_aren long long unsigned int mapaddr _IO_backup_base bcm2835_peri_write_nb bcm2835_peri_write value _fileno BCM2835_GPIO_PUD_UP tv_nsec size_t _vtable_offset pads _IO_read_base stdin _next nanosleep _pos bcm2835_spi_transfer bcm2835_spi_setChipSelectPolarity bcm2835_gpio_eds gpioMem timespec bcm2835_gpio_write bcm2835_gpio_set_pud _mode BCM2835_GPIO_FSEL_ALT0 BCM2835_GPIO_FSEL_ALT1 BCM2835_GPIO_FSEL_ALT2 BCM2835_GPIO_FSEL_ALT3 BCM2835_GPIO_FSEL_ALT4 BCM2835_GPIO_FSEL_ALT5 _IO_marker _IO_read_ptr order bcm2835_set_debug bcm2835_gpio_clr_fen gpio uint8_t micros padsMem bcm2835_gpio_afen _IO_write_base long long int _IO_save_base bcm2835_spi_end bcm2835_spi_chipSelect RPI_GPIO_P1_11 bcm2835_gpio_fsel bcm2835_gpio_pad bcm2835_gpio_clr_aren __quad_t __pad1 __pad2 __pad3 __pad4 __pad5 bcm2835_gpio_ren BCM2835_GPIO_FSEL_INPT bcm2835_init bcm2835_spi_transfernb bcm2835_peri_read_nb uint16_t bcm2835_gpio_hen bcm2835_peri_read _IO_read_end short int divider delay RPI_GPIO_P1_03 RPI_GPIO_P1_05 RPI_GPIO_P1_07 RPI_GPIO_P1_08 bcm2835_close _lock tv_sec bcm2835_gpio_clr_afen _old_offset _IO_FILE clkMem RPI_GPIO_P1_10 RPI_GPIO_P1_12 RPI_GPIO_P1_13 RPI_GPIO_P1_15 RPI_GPIO_P1_16 RPI_GPIO_P1_18 RPI_GPIO_P1_19 GNU C 4.6.3 spi0Mem bcm2835_gpio_clr_len unsigned char _sbuf bcm2835_gpio_fen _IO_write_ptr bcm2835_gpio_pud group fifo RPI_GPIO_P1_21 RPI_GPIO_P1_22 RPI_GPIO_P1_23 RPI_GPIO_P1_24 RPI_GPIO_P1_26 rbuf stdout __off_t BCM2835_GPIO_PUD_DOWN short unsigned int delayMicroseconds BCM2835_GPIO_FSEL_MASK bcm2835_gpio_set_eds _chain _flags2 /home/pi/Adafruit-Raspberry-Pi-Python-Code/Adafruit_DHT_Driver/bcm2835-1.8/src _cur_column BCM2835_GPIO_PUD_OFF __off64_t _unused2 _IO_buf_base pwmMem        }    L    }           ,    P,   ;    Q        ,   4    P        4   ;    Q        L   P    } P   „    }        L   h    Ph   s    Q        l   s    Q        „   ¨    P¨   ¯    S        „   Œ    QŒ   ¯    R        ¤   ¯    R        ¤   ¨    P¨   ¯    S        ¸   Ø    PØ   ß    S        ¸   À    QÀ   ß    R        Ô   ß    R        Ô   Ø    PØ   ß    S        è   ì    } ì      }        è   û    Pû      T        è   û    Qû       U        è   û    Rû      V        ü      P          4   P          D   Q          4   p :3Ÿ        @  K   7s $Ÿ        @  D  
 q H$H%s $Ÿ        T  l   P        T  l   p 5%H$H%#2$\! "Ÿ        T  l   p OŸ        |  ”   P        |  ”   p 5%H$H%#
2$\! "Ÿ        |  ”   p OŸ        ¤  ¬   } ¬  à   }        ¤  ´   P        °  ´   p 5%H$H%#
2$\! "Ÿ´  À   t 5%H$H%#
2$\! "Ÿ        °  ´   p OŸ´  À   t OŸ        È  Ø   P        à  è   } è     }        à  ð   P        ì  ð   p 5%H$H%#2$\! "Ÿð  ü   t 5%H$H%#2$\! "Ÿ        ì  ð   p OŸð  ü   t OŸ             P          4   P          4   p 5%H$H%#2$\! "Ÿ          4   p OŸ          4   1p OH$H%$Ÿ        D  P   P        D  P   p 5%H$H%#2$\! "Ÿ        D  P   p OŸ        T  k   Q        p  ˆ   P        p  ˆ   p 5%H$H%#2$\! "Ÿ        p  ˆ   p OŸ        p  ˆ   1p OH$H%$Ÿ        œ  ¨   P        œ  ¨   p 5%H$H%#2$\! "Ÿ        œ  ¨   p OŸ        ¬  à   Q        È  à   P        È  à   p 5%H$H%#2$\! "Ÿ        È  à   p OŸ        È  à   1p OH$H%$Ÿ        ô      P        ô      p 5%H$H%#2$\! "Ÿ        ô      p OŸ             Q           8   P           8   p 5%H$H%#2$\! "Ÿ           8   p OŸ           8   1p OH$H%$Ÿ        L  X   P        L  X   p 5%H$H%#2$\! "Ÿ        L  X   p OŸ        \  s   Q        x     P        x     p 5%H$H%#2$\! "Ÿ        x     p OŸ        x     1p OH$H%$Ÿ        ¤  °   P        ¤  °   p 5%H$H%#2$\! "Ÿ        ¤  °   p OŸ        ´  Ë   Q        Ð  è   P        Ð  è   p 5%H$H%#2$\! "Ÿ        Ð  è   p OŸ        Ð  è   1p OH$H%$Ÿ        ü     P        ü     p 5%H$H%#"2$\! "Ÿ        ü     p OŸ          #   Q        (  @   P        (  @   p 5%H$H%#"2$\! "Ÿ        (  @   p OŸ        (  @   1p OH$H%$Ÿ        T  `   P        T  g  
 \! #”Ÿ        l  Œ   P        l  t   Q        l  Œ   p 5%H$H%#&2$\! "Ÿ        l  Œ   p OŸ        ˜      P        ˜      p H$H%3$`! "#,Ÿ        ´  ¼   P        ´  Ë   Q        ´  ¼   p H$H%3$`! "#,Ÿ        Ð  Ü   } Ü  ä   }ä      }        Ð      P           (   } (  0   }0  L   }           <   P        L  W   PX  [   P        L  W   QX  [   Q        \  `   } `      }        \  h   P        \  k   Q           ¤   } ¤     }        ì  ó   d! ó     T             }   L   }        P  \   P        P  c  	 d! #Ÿ        h  x   P        h  {   d!         €  ˆ   } ˆ      }        €  œ   P          Ÿ   d! Ÿ      T        °     U             P      U           $   } $     }            D   PD     V           0   Q0     W           <   R<     U        8  G   d! G     T        `  l   0Ÿ¼  Ø   X             P             Q     R          $   P          '   d!         ,  8   P        ,  D   Q        ,  K   d!         ,  8   pŸ        P  T   } T  X   }X  ´   }         Ø  ì   Pì  $	   W,	  @	   P@	  |	   W„	  ˜	   P˜	  Ô	   WÜ	  ð	   Pð	  ,
   W4
  H
   PH
  ¤
   WÐ
  €   W        ´  ¸   } ¸  ä
   }        ¤   ¬   ¬   ¸           Ô   Ü   Ü   è            .symtab .strtab .shstrtab .interp .note.ABI-tag .note.gnu.build-id .gnu.hash .dynsym .dynstr .gnu.version .gnu.version_r .rel.dyn .rel.plt .init .text .fini .rodata .ARM.exidx .eh_frame .init_array .fini_array .jcr .dynamic .got .data .bss .comment .ARM.attributes .debug_aranges .debug_info .debug_abbrev .debug_line .debug_frame .debug_str .debug_loc .debug_ranges                                                     4  4                    #         P  P                     1         p  p  $                  H         ”  ”  œ                D   öÿÿo   0‚  0  ¬                N         Ü‚  Ü  @              V         „    ª                  ^   ÿÿÿo   Æ„  Æ  (                k   þÿÿo   ð„  ð                   z   	      …                    ƒ   	       …           
         Œ         °…  °                    ‡         ¼…  ¼  ì                 ’         ¨†  ¨  ˆ                 ˜         0›  0                    ž         8›  8  ”                 ¦     p‚   Ìž  Ì                   ±         Ôž  Ô                    »                                  Ç                                Ó                                Ø              ð                á         ü  ü   X                 æ         T! T!                     ì         x! t!  œ                 ñ      0       t!  !                 ú     p        •!  /                  
             Ä!                                  ä!  Ì                 %             °5  Y                 3             	9  M                 ?             X<  `                 L     0       ¸?  Ž                W             FH  c                 b             ©W  0                                ÙW  p                               d_  `  &   ±         	              Äo  ü                                     4            P            p            ”            0‚            Ü‚            „            Æ„            ð„       	     …       
      …            °…            ¼…       
     ¨†            0›            8›            Ìž            Ôž                                                             ü            T!           x!                                                                                                                       !              "              #    P            ¨†            Ìž            ؆            8›            T!           ä†            ä†            ‡            °…            0›            ¸…            4›                     ñÿ"              X!           ‡         /   ‡            ‡         E   |!                  T              $‡         {   $‡           L‡                      ‡               |!        ¦            ñÿ   <›            T‡            ̈            €!           ìˆ            ÄŒ         µ            ñÿ   èŒ            ôŒ            øŒ            ,            4            d            l            ˜                         ȍ            Ѝ            4Ž            <Ž            `Ž            dŽ            ˆŽ            ŒŽ            ÄŽ            ÈŽ                                     (            ,            T            X            €            „            ¬            °            ؏            ܏                                    0            4            \            `            ˆ            Œ            ´            ¸            à            ä            ‘            ‘            8‘            <‘            P‘            T‘            |‘            €‘            ˜‘            œ‘            ´‘            ¸‘             ’            ’            ì’            ð’            L“            P“            d“            h“            ”            ”            ì”            ð”            •            •            4•            8•            D™            œ™            Äš            \!        ¿   \!      Ä   `!      É   d!      Î   h!      Ò   l!      Ö   p!         hœ            „!        Ù   „!      ß   ˆ!      ç   Œ!      î   !      õ   ”!      ý   ˜!                       Ìš            $›            ,›                     ñÿ   Ôž           Ôž                                         0          9            L  ü           ¼…        
    Ì…        
    Ð…        
 b  ,›       r  P“       Š    ,     Ÿ  Ð…         ±  ŒŽ  <       T‘  ,     Ö  T!        á  4  ,     ò  X  ,       Ü…           t!      ñÿ'  °  ,     <  øŒ  <     N  <Ž  (     _  è…         o  ô…         „  '      ñÿ  dŽ  (        t!      ñÿ§  <‘       ¸  ð”       Î  8“       ê  0›        ð  '      ñÿü  Œ  ,       ’  ,        x!      2  l  4     E  œ™  0    S   †         e    (     z  „  ,     ‹  €‘       œ  ¸‘  P     ¢  ð’  D     ²  T!       ¿  †         Ï  †         á  $†         þ  0†                       !  H†         1  X!      >  8›       M  œ!     R  T†         b  •  $     „  `†         —  Ѝ  ,     ­  Ìš  `     ½  l†         Ù  '      ñÿÞ  èŒ       ð  ¨†        ÷  ”  è       ü”       %  4’       8  œ‘       M  '      ñÿU  4“       m  ,# è    r  t!      ñÿ~  ‘  ,     ”  T‡  ˜    ™  €!         ÈŽ  <     ±  ä  ,     à  x†         Õ  ü  @     ç  4  8     ü                ܏  ,     !  8•  d    .  ,  ,     ?  „†         O     0     e  ìˆ  ü    m  h“        ‚  ¸  ,     ˜  ˆ’  h     ª  †         »  °…        Á  œ†         Ò  `  ,     ç  D’  D      $d $a call_gmon_start crtstuff.c __JCR_LIST__ __do_global_dtors_aux completed.5637 __do_global_dtors_aux_fini_array_entry frame_dummy __frame_dummy_init_array_entry Adafruit_DHT.c bcm2835.c gpio pads spi0 clk pwm fd debug gpioMem pwmMem clkMem padsMem spi0Mem __FRAME_END__ __JCR_END__ __init_array_end _DYNAMIC __init_array_start _GLOBAL_OFFSET_TABLE_ __libc_csu_fini bcm2835_spi_setDataMode bcm2835_gpio_clr_hen strcmp@@GLIBC_2.4 bcm2835_gpio_lev bcm2835_gpio_pudclk data_start bcm2835_gpio_len bcm2835_gpio_clr_ren printf@@GLIBC_2.4 __bss_start__ bcm2835_gpio_clr_fen bcm2835_peri_read bcm2835_gpio_set free@@GLIBC_2.4 nanosleep@@GLIBC_2.4 _bss_end__ bcm2835_gpio_clr _edata bcm2835_gpio_pud bcm2835_spi_transfern bcm2835_spi_setClockDivider _fini __bss_end__ bcm2835_gpio_aren delayMicroseconds stderr@@GLIBC_2.4 bcm2835_peri_write bcm2835_close usleep@@GLIBC_2.4 bcm2835_gpio_set_eds bcm2835_gpio_fen bcm2835_gpio_pad delay bcm2835_spi_end __data_start puts@@GLIBC_2.4 malloc@@GLIBC_2.4 __libc_start_main@@GLIBC_2.4 strerror@@GLIBC_2.4 __gmon_start__ open@@GLIBC_2.4 __dso_handle _IO_stdin_used data mmap@@GLIBC_2.4 bcm2835_spi_setChipSelectPolarity fprintf@@GLIBC_2.4 bcm2835_peri_set_bits __libc_csu_init __errno_location@@GLIBC_2.4 _end bcm2835_set_debug _start bcm2835_spi_transfernb bcm2835_spi_chipSelect bcm2835_gpio_write bcm2835_gpio_set_pad __end__ bcm2835_spi_setBitOrder bits __bss_start bcm2835_gpio_clr_afen main bitidx bcm2835_gpio_eds bcm2835_gpio_afen munmap@@GLIBC_2.4 bcm2835_gpio_fsel bcm2835_peri_read_nb _Jv_RegisterClasses bcm2835_gpio_hen bcm2835_init bcm2835_gpio_ren atoi@@GLIBC_2.4 bcm2835_peri_write_nb readDHT bcm2835_spi_transfer bcm2835_gpio_clr_aren bcm2835_spi_begin abort@@GLIBC_2.4 _init close@@GLIBC_2.4 bcm2835_gpio_clr_len bcm2835_gpio_set_pud 

Bud Spencer
Raspinaute
Messages : 1089
Enregistré le : lun. 15 août 2016 21:38

Re: Pin 13 (GPIO27) et Mise a jour

Message par Bud Spencer » ven. 2 oct. 2020 20:14

Ok, donc '"/root/Adafruit_DHT" c’est la lib adafruit compilée.

Ca : DHT22:---Celsius, ---% ça veut dire quoi :
C’est juste une réponse formatée par la procédure ‘def validatePrint()’ de ton programme et ça indique clairement que le code est correct et il fait bien appel à la lib adafruit avec les bons paramètres et que celle-ci répond systématiquement ‘None,None’. Donc pas la peine de chercher à triturer le code dans tous les sens ça ne changera rien. Le problème est clairement une incompatibilité de la lib soit avec la version du pi ou avec la version python. Perso, je suis sur un PI4 (qui ne marche normalement pas avec un pi4, mais ca c'est une autre histoire ...) et j’ai exactement le meme symptôme avec python 2 (je l’avais déjà avec le Pi3). La solution : installer la lib Adafruit_DHT pour python 3 et passer à python 3
Le premier ennemi de la connaissance n’est pas l’ignorance, c’est l’illusion de la connaissance (S. Hawking).

Laurent53
Messages : 21
Enregistré le : mer. 30 sept. 2020 10:43

Re: Pin 13 (GPIO27) et Mise a jour

Message par Laurent53 » ven. 2 oct. 2020 21:37

Après vérification Python 3.2 est bien installé sur mon Raspberry mais si j'utilise cette version tout mes autres script plante .

root@PiHome:~# ls -l /usr/bin/python*
lrwxrwxrwx 1 root root 24 mars 16 2015 /usr/bin/python -> /etc/alternatives/python
lrwxrwxrwx 1 root root 9 sept. 28 2013 /usr/bin/python2 -> python2.7
-rwxr-xr-x 1 root root 2264344 nov. 24 2017 /usr/bin/python2.6
-rwxr-xr-x 1 root root 2678628 nov. 25 2017 /usr/bin/python2.7
-rwxr-xr-x 1 root root 1652 nov. 25 2017 /usr/bin/python2.7-config
lrwxrwxrwx 1 root root 9 oct. 21 2012 /usr/bin/python3 -> python3.2
lrwxrwxrwx 1 root root 11 mars 25 2017 /usr/bin/python3.2 -> python3.2mu
-rwxr-xr-x 1 root root 2810228 mars 25 2017 /usr/bin/python3.2mu
lrwxrwxrwx 1 root root 11 oct. 21 2012 /usr/bin/python3mu -> python3.2mu
lrwxrwxrwx 1 root root 16 sept. 28 2013 /usr/bin/python-config -> python2.7-config
root@PiHome:~#

Répondre

Retourner vers « Raspberry Pi (tout modèles) »