Rudiments de Programmation

Voici quelques rudiments de programmation qu’il m’a fallut trouver pour réaliser mes projets.


PHP

Depuis un programme écrit en Python, appeler un programme executable blink:

$:exec(« var/www/WiringPi/examples/blink »)

exécuter un programme avec passage de commande depuis une page web index.php:

<?php

echo exec(‘/home/pi/CPython/orangoutan/orangoutan init’)

?>

LINUX (BASH)

Raccourcis clavier en mode terminal

CTRL + R : recall last commands matching …

CTRL + O : run command found with CTRL+R

CTRL + L: clear terminal 

ALT + D: delete all characters after the cursor on the current line

TAB : complete word automatically

MOving cursor : CTRL+A= HOME. CTRL+E: END.

Pomme + D:split screen horizontally 

 
Effacer/copier un fichier un répertoire 

RM -rf folder

Changer droits d’accés d’un fichier

Si le fichier exécutable blink est réservé au root et que vous souhaitez le lancer depuis un autre usager , utiliser les commandes suivantes:

sudo chown root blink

sudo chmod 4755 blink

Vérifier que cela fonctionne bien en exécutant le programme sans sudo:

$: /blink

Exécuter un programme au démarrage (boot):

sudo nano /etc/rc.local

et ajouter la ligne de commande

./home/pi/CPython/orangoutan/orangoutan init

précédé de : (permet l’accès à la mémoire pour wiringpi)

chmod 666 /dev/gpiomem

 il existe d’autres méthodes pour exécuter un programme au démarrage (detail ici):

Attention:  If you add a script into /etc/rc.local, it is added to the boot sequence. If your code gets stuck then the boot sequence cannot proceed. So be careful as to which code you are trying to run at boot and test the code a couple of times. You can also get the script’s output and error written to a text file (say log.txt) and use it to debug.

sudo python /home/pi/sample.py & > /home/pi/Desktop/log.txt 2>&1

 PYTHON

Exécuter un programme écrit en python:

sudo python Robot4WD.py

Appeler une librairie en C depuis un fichier macaque.py en utilisant Ctypes:

import ctypes
libtest=ctypes.cdll.LoadLibrary(« /home/pi/CPython/macaque.so »)
output=libtest.initmotors()
output=libtest.enablemotors()


C

Compiler une librarie:

gcc -o blink blink.c -lwiringPi

sudo ./blink

creer un programme en C avec passage de fonctions et variables

gcc -c -Wall -Werror -fpic orangoutan.c -lwiringPi -lpthread

gcc -o orangoutan orangoutan.o -lwiringPi -lpthread

./orangoutan init

./orangoutan move 1 1 1

 

avec dans orangoutan.c

int main(int argc, char* argv[]) {….}