Étape 8: Logiciel, partie 3: adresse IP Pi sur écran de Nokia
afficher. Nous aurons besoin d’avoir l’écran branché sur son wired-up
prise de courant. En outre, la Pi nécessitera un adaptateur sans fil branché à
un port USB et les procédures appropriées prises afin que le Pi se connecte à
le réseau local. Et, bien sûr, l’Arduino doit avoir l’esquisse
charger ci-dessous.
Boot up branché la Pi avec l’équipement nécessaire. Après le démarrage,
lancer une session de minicom comme dans l’étape précédente, pour initialiser le
Port série de l’IP. Enfin, exécutez le Bash script plus bas dans cette étape.
Voici l’esquisse de l’Arduino :
/ * Affichage Nokia PCD8544, données de port série à. * /
/ * Dans ce cas particulier, l’adresse IP. */
/ * Exécuter script shell qui analyse et envoie l’IP addr. à/dev/ttyUSB0. */
#include < stdio.h >
#include « PCD8544.h »
/ * Broches numériques. */
Broche 7 - horloge série out (SCLK)
goupille 6 - données sérielles (DIN)
broche 5 - données/commande select (D/C)
broche 4 - puce LCD sélectionnez (CS)
broche 3 - LCD reset (RST)
Nokia PCD8544 = PCD8544 (7, 6, 5, 4, 3) ;
#define intervalle 500
#define BUFFSIZE 80 / / série tampon.
char ligne 1 [40] = "adresse IP:" ; En-tête.
int DELAY = 4000 ; Intervalle entre les mises à jour de l’affichage.
void setup(void) {}
Nokia.init() ;
Nokia.Command(PCD8544_DISPLAYCONTROL | PCD8544_DISPLAYNORMAL) ;
Serial.Begin(9600) ; Commencer la série UART à 9600 bauds.
Nokia.Clear() ;
Nokia.DrawString (0, 0, ligne1) ;
Nokia.Display() ;
}
Sub loop(void)
{
char serialdata [BUFFSIZE + 3] ;
int lf = 10 ;
Serial.readBytesUntil (lf, serialdata, BUFFSIZE) ;
Nokia.DrawString (0, 1, serialdata) ;
Nokia.Display() ;
Delay(Interval) ;
}
Vous pouvez le télécharger ici:
http://bash.DETA.in/NokiaSerial.INO
Voici le script Bash :
#! / bin/bash
# inet.addr.sh
# Echo l’adresse IP de l’IP à un port série...
#+... à qui nous arrive doit comporter en annexe un Arduino.
# Exécuter ce script après que Aduino est mise sous tension avec des croquis
#+ (NokiaSerial.ino).
commande = ifconfig
addr_hdr = "adresse:"
addr_prefix = "inet 192" # pour Pidora. Peut changer pour autre distro !
serial_port = / dev/ttyAMA0 # connexion directe au Pi rx et dx.
# ifconfig | grep "inet 192" | awk « {print $2} » | sed s/addr: / /
ipaddr = $(${commande} | grep « $addr_prefix » |
awk « {print $2} » | sed s / $addr_hdr / /)
echo $ipaddr > « $serial_port » # pas nécessaire de mettre en boucle ou répéter.
# echo $ipaddr # Debug.
sortie $?
Vous pouvez télécharger le script ici:
http://bash.DETA.in/inet.addr.sh
Ne voyez-vous pas l’adresse IP de la Pi sur ce petit écran Nokia ?
Étonnant, n’est-il pas ?
Cette application particulière est pratique si vous configurez la Pi comme un serveur sans tête.
Une fois la Pi démarre, il affiche son adresse IP sur le réseau,
et cela signifie que tout fonctionne très bien. Il rend également plus facile
pour faire un log-on distant depuis un autre ordinateur. Titre d’exercice,
vous pourriez modifier le script Bash pour en outre afficher quelque chose sur le
Etat de la PI sur les autres lignes disponibles du Nokia d’affichage, tels que
espace libre sur la carte SD (commandedf ).