Académique Documents
Professionnel Documents
Culture Documents
#Semaine 2
programme en assembleur :
POINT DE VU MICROCONTRÔLEUR :
DÉFINITION DU MCU :
montage électronique :
47 k résistance de pull-up pour le bouton reset , pour éviter de laisser l’entrée à l’air sans
connaître son état (pull-up sortir à 1 ; pull-down sortie à 0)
P1.0 du MSP40 est utilisé comme sortie , sur laquelle on a branché une LED en série avec
une résistance pour limiter le passage du courant.
PROGRAMMATION C/ARDUINO
LA PWM:
faire des impulsion de longueur variable exemple pour changer la vitesse d’un moteur.
Attention !!
delay(0) décompté à partir de la valeurs max qui est 65s
donc il faut exclure 0 et 20.
on fera donc si c’est zéro alors j’active la led ledON
si c’est 20 la même chose.
explication du code de droit :
on veut ajouter 1 donc soit 9+1=10 en binaire ca 1010 qui est 10 qui dépasse
9 on fait alors +6 pour revenir à zer0 et incrémente l’état suivant.
il faut donc que dans le dernier mot binaire tous les bites passe à zero
rappel:
bcd &&0x000F= valeur du dernier mot binaire sur (4bit) dans le decodeur bcd (en exa)
0x9 valeur 9 en exa
bcd &&0x00F0= valeur de l’avant dernier mot dans le decodeurs ( chaque mot est sur 4bits)
if(bcd &&0x00F0>0x90) ; {bcd +=0x6} si la valeur de l’avant dernier mot est plus grand que
9 on ajoute 6 à l’avant dernier mot.
ainsi de suite
jusqu'à ce qu’on obtient 400.
si max=200
on écrit alors y=(x*200)/1024
on remarque que 1024=2^10
on a y=(X*200)>>10;
y = (x*(128+64+8))>>10;
y=(X<<7+X<<8 +X<< 3)>>10; car (2^7 +2^6+2^3)