* lire des switchs (ON/OFF -> Etat logique : 1/0)
* alimenter de Ledsdes leds (enfin plutôt les allumer ou les éteindre)* afficher un message sur un écran LCD 2x 16 caractère 2x16 caractères
* lire la tension sur un potentiomètre (utilisation d'un convertisseur AD --> analogique numérique)
* utilisation de bus de communication --> liaison série (I2C - SPI - RS232)
* Alimentation externe 12V
== aperçu Aperçu & codes Codes & astuce Astuce ===== description Aperçu === ==== --> Clignotement Led Leds - Programme 1 à 4 ====Pour le premier programme, on désire faire 1 : Faire clignoter une led toutes les 0.5s --> 2Hz. programme 2 : comme pour le principe du chenillard, on veut faire déplacer le clignotement de la led (toujours à 2hz)sur une autre, mais manuellement, pour cela on utilise le switch S3. Dans le code, on pourra voir la notion très basique de l'anti-rebond programme 3 : On reprend la notion de chenillard manuel, mais là le désire c'est d'aller dans l'autre sens - donc que l'utilisateur ait le choix de faire clignoter la led de gauche ou la led de droit par rapport à led de basse qui clignote toujours à 2Hz programme 4 : On reprend la base du '''programme 2''', mais ici on va implémenter un mécanisme d'antirepond, c'est-à-dire que l'on veut garantir si la touche est bien pressée ; car un switch à lamelle a des effets "indésirable" du à l'aspect mécanique de la structure de celui-ci (voir explication --> antirepond : '''en construction''') ==== Affichage & ADC : code ==== programme 4 : désire simplement afficher un message sur l'affichage LCD 2x16 programme 5 : afficher un message "Exemple : FIXME" + l'information venant du convertisseur ADC du DSPic
=== code ===
==== --> Clignotement Led : code ====programme 1 --> [[File:Main.c]] programme 2 --> [[File:Main_cligno_led_VB.c]] programme 3 --> [[File:Main_Led_Cligno_AR_V1.c]] programme 4 --> [[File:Main_antirebond.c]] & [[File:Antirebond.h.c]] & [[File:Anti_rebond_v01.c]] ==== Affichage & ADC : code ==== programme 5 --> [[File:Main_affichage_simple.c]] programme 6 --> [[File:Main_ADC.c]]
=== astuce ===
==== --> Clignotement Led ====
'''WARNING''' :
Pour la partie Timer1, le bit TCS (Timer Clock Source)du registre T1CON doit être placé à 0, ce qui permet d'utiliser la fréquence interne (FCY) que l'on configure dans la partie oscillateur.
Pour ce premier programme, j'ai voulu utiliser pour la fréquence interne la même fréquence du Quart, soit FCY = 8MHz . Voir ci-dessous, le calcul pour déterminer différents paramètres.
Calcul permettant de déterminer les valeurs de bits pour M, N1, N2 (voir page 150 du datasheet):
--> voir image [[:File:Calcul_oscill.jpg]]
On choisit des valeurs pour N1 et N2 et il n'y plus qu'à calculer la valeur pour M
==== Affichage & ADC ====
'''WARNING''' --> pour afficher des caractères, utilisation du header file lcd.h (fournit sur le site de microchip)
== Liens utiles ==
* [http://www.microchip.com/wwwproducts/Devices.aspx?dDocName=en024679 Site Microchip - détails sur le DSP]
en cours === liens : lien pour achat board additionnel ===* [http://ch.farnell.com/microchip/ac164126/pictail-plus-prototype-carte-fille/dp/1439835 Carte fille de constructionprototypage pour carte Explorer 16]
== Project Leader ==
* [[User:Philou]]
en cours de construction
== Participant ==
* [[User:usernamePhiloux]] en cours de construction* you !!??!!