Changes

Jump to: navigation, search

Coursera Microcontroleur

6,672 bytes added, 10:47, 6 November 2023
/* liens: interne --> wiki */
Ce wiki a pour but de mettre a disposition des codes (codes sources) réalisés par les membres de Fixme ou autres, les astuces, et tous autres informations qui permettent de suivre et comprendre le cours en ligne [https://www.coursera.org/course/microcontroleurs coursera - comprendre les microcontroleurs] donné par Monsieur Jean-Daniel Nicoud & Pierre-Yves Rochat.
De plus chaque vendredi soir à partir de 20h une partie des Electronics Meeting sera consacrée à réaliser, corriger, comprendre les exercices proposés, les données seront à disposition sur cette page wiki en format pdf.  '''IMPORTANT''' : vous remarquez des erreurs, des explications erronées, vous voulez simplement contribuer à ce wiki, alors n'hésiter --> améliorer le !!!
== Matériels ==
* Exercices libres semaine 1 : [[File:Exos_1.pdf‎ ]]
* Exercices libres semaine 2 : [[File:Exos 2.pdf‎ ]]
* Exercices libres semaine 3 : [[File:Exos 3.pdf ]]
* Exercices libres semaine 4 : [[File:Exos 4.pdf ]]
=== Exas ===
* Réponse exos 2.4 : non, le traitement des données va dépendre de plusieurs paramètres comme bus d'adresse, bus de données, jeu d'instructions, etc
* Réponse exos 2.5 :
DSPic (carte Explorer) : [[File:Exo_2_5_DSPic.c‎]] - langage C classique avec utilisation Timer et interruption Arduino langage : [[File:Exo_2_5_ARD.c‎]] - langage C classique avec paramètre lié à l'arduino : à venir * Réponse exos 2.6 : à venir DSPic (carte Explorer) : [[File:Main_2_6_DSPic.c]]‎ - langage C classique avec utilisation Timer et interruption / sans de gestion de rebonds * Réponse exos 2.7 : à venir DSPic (carte Explorer) : [[File:Main_2_7_DSPic_V1.c‎ ]]‎ - langage C classique sans utilisation de Timer / ni de gestion de rebonds DSPic (carte Explorer) : [[File:Main_2_7_DSPic_V2.c‎ ]]‎ - langage C classique utilisation Timer + gestion anti-rebond (aller voir code sur la page du wiki de la carte Explorer 16)* Réponse exos 2.8 : à venir DSPic (carte Explorer) : [[File:Main_2_8_DSPic.c‎ ]]‎ - langage C classique sans utilisation de Timer / ni de gestion de rebonds DSPic (carte Explorer) : [[File:Main_2_8_DSPic_v2.c‎ ]]‎ - langage C classique avec utilisation Timer + gestion anti-rebond (aller voir code sur la page du wiki de la carte Explorer 16)* Réponse exos 2.9 : à venir DSPic (carte Explorer) : [[File:Main_2_9_DSPic_Modif.c‎ ]]‎ - langage C classique avec utilisation Timer + gestion anti-rebond (aller voir code sur la page du wiki de la carte Explorer 16) * Réponse exos 2.10 : DSPic (carte Explorer) : [[File:Main 2 10 DSPic MAP.c ]]‎ - langage C classique sans Timer et ni gestion d'anti-rebond === Solus Exos session 3 === * Réponse exos 3.1 : 1) '''11 ou 0x0B''' 2) '''253 ou 0xFD''' 3) '''2''' 4) '''251 ou 0xFB''' 5) '''2''' 6) '''0''' 7) '''83''' 8) '''1''' Code en C (sous CodeBlock) : [[File:Exos 3 1.c]]‎ - langage C classique * Réponse exos 3.2 : int i = 0; while(i < 10){i++;...} * Réponse exos 3.3 : DSPic (carte Explorer) : [[File:Main_3_3_DSPic.c‎]]‎ - langage C classique avec utilisation Timer + gestion anti-rebond (voir codes sur la page du wiki de la carte Explorer 16 -> lien en bas de page) * Réponse exos 3.4 : DSPic (carte Explorer) : [[File:‎Main_3_4_DSPic.c]]‎ - langage C classique avec utilisation Timer (voir codes sur la page du wiki de la carte Explorer 16 -> lien en bas de page) * Réponse exos 3.5 : DSPic (carte Explorer) : [[File:Main 3 5 DSPic.c]]‎ - langage C classique avec utilisation Timer (voir codes sur la page du wiki de la carte Explorer 16 -> lien en bas de page)  * Réponse exos 3.6 : on peut écrire la déclaration suivante '''DDRC = 0b01000001''' comme ceci : DDRC = 0x41, mais la encore la visibilité n'est pas très claire quand au sortie que l'on veut activé ou DDRC = (1 << DDC6) | (1 << DDC0) <= ici c'est plus clair quand au pin que l'on veut mettre en état de sortie  [[Rappel]] DDRC = Data Direction Register (C est le port avec lequel on veut travailler) * Réponse exos 3.7 : DSPic (carte Explorer) : [[File:Main_3_7_DSPic.c‎]]‎ - langage C classique avec utilisation Timer + gestion anti-rebond(voir codes sur la page du wiki de la carte Explorer 16 -> lien en bas de page) * Réponse exos 3.8 : DSPic (carte Explorer) : [[File:Main_3_8_DSPic.c‎]]‎ - langage C classique avec utilisation Timer + gestion anti-rebond(voir codes sur la page du wiki de la carte Explorer 16 -> lien en bas de page) * Réponse exos 3.9 : DSPic (carte Explorer) : [[File:Main_3_9_DSPic.c‎ ]]‎ - langage C classique avec utilisation Timer + gestion anti-rebond(voir codes sur la page du wiki de la carte Explorer 16 -> lien en bas de page) * Réponse exos 3.10 : DSPic (carte Explorer) : [[File:Main_3_10_DSPic.c]]‎ - langage C classique avec utilisation Timer + gestion anti-rebond(voir codes sur la page du wiki de la carte Explorer 16 -> lien en bas de page) * Réponse exos 3.11 : DSPic (carte Explorer) : [[File:Main_3_11_DSPic.c‎]]‎ - langage C classique sans gestion de touche ou timer (voir codes sur la page du wiki de la carte Explorer 16 -> lien en bas de page) === Solus Exos session 4 === * Réponse exos 4.1 : DSPic (carte Explorer) : [[File:Main_4_1A_DSPic.c‎ ]]‎ - langage C classique avec gestion des touches avec une fonction d'anti-rebond et du timer (voir codes sur la page du wiki de la carte Explorer 16 -> lien en bas de page) DSPic (carte Explorer) : [[File:Main 4 1B DSPic.c]]‎ - langage C classique avec gestion des touches avec une fonction d'anti-rebond et du timer (voir codes sur la page du wiki de la carte Explorer 16 -> lien en bas de page) DSPic (carte Explorer) : [[File:Main 4 1C DSPic.c]]‎ - langage C classique avec gestion des touches avec une fonction d'anti-rebond et du timer (voir codes sur la page du wiki de la carte Explorer 16 -> lien en bas de page) '''Remarque''': pour réaliser ces exercices, une carte d'extension a été utilisée (réalisée à venirFixme) et connectée à la carte Explorer 16 (voir les lien interne en bas de page).
=== Solus Exas session 1 ===
=== astuce ===
en cours de constructionRegarder le champs discussion : https://fixme.ch/wiki/Talk:Coursera_Microcontroleur
== Liens utiles ==
=== liens: interne --> wiki ===
*[https://fixme.ch/wiki/Electro_docs page de composants utiliser sur les projets de Fixme]
*[https://fixme.ch/wiki/PIC Outils pour programmée des PICs]*[https://fixme.ch/wiki/Explorer_16_DSPIC Quelques codes pour la carte Explorer]*[https://fixme.ch/wiki/Extension_Explorer_16 Extension pour la carte de développement Explorer 16]*[https://fixme.ch/wiki/OutilsProgMicroController Outils pour programmer des microcontroleurs]*[https://fixme.ch/wiki/Langage_C Page présentant modestement le langage C]*[https://fixme.ch/wiki/Presentation_Microcontroleur présentation Jean Daniel Nicoud - Ponte de la programmation sur uC - EPFL]
=== liens : documentation PDF ===
 
* [http://ww1.microchip.com/downloads/en/DeviceDoc/Explorer%2016%20User%20Guide%2051589a.pdf Doc PDF Carte Explorer 16]
* [http://ww1.microchip.com/downloads/en/DeviceDoc/70593d.pdf Doc PDF Datasheet DSPIC33FJxxx]
* [http://ww1.microchip.com/downloads/en/DeviceDoc/70186E.pdf Doc PDF Complément Datasheet --> Oscillateur]
* [http://www.didel.com/C/FichiersImportes.pdf Doc PDF pour l'importation de fichier sous Android]
* [http://www.bricobot.ch/kits/Miaou.pdf Doc PDF montrant le montage d'un nourrisseur de chat à distance]
=== liens : documentation Site Internet ===
* [https://www.coursera.org/epfl Lien sur les différents cours proposer par l'EPFL en ligne & ligne]
* [http://www.epsitec.ch/dauphin/ Simulateur de mini PC Daulphin]
 
* [http://www.arduino.cc/ Site de l'Arduino]
* [http://arduino.cc/en/Hacking/PinMapping168 Pining de l'ATMEGA328P]
* [http://www.microchip.com/wwwproducts/Devices.aspx?dDocName=en024679 Site Microchip - détails sur le DSP]
* [http://fr.openclassrooms.com/informatique/cours/l-aleatoire-en-c-et-c-se-servir-de-rand-1 théorie sur le pseudo-aléatoire en C]
* [http://fr.wikipedia.org/wiki/C_(langage) Wiki sur le langage C - Rappel de la taille des types]
 
== Bibliographie ==
 
* Le langage C - Tony Zhang - CampusPress - ISBN:2-7440-1518-0 => livre de poche bien sympas pour se remémorer quelques notions de C (perdue), malgré certaines coquilles
== Autre ==
* Pour ceux cherchant la facilité, regardez du côté de [[ArduBlock]]. La page est en anglais, mais en cas d'incompréhension, je peux sans problème la traduire dans la langue de Molière. Merci donc de contacter [[User:Pherjung]] pour toute question en rapport avec [[ArduBlock]].
== Participant ==
* [[User:Philoux]]
* [[User:Nemen]]
* [[User:Pherjung]]
* you... :-D
952
edits