Coursera Microcontroleur

From Fixme.ch
Revision as of 23:20, 15 September 2014 by Philoux (Talk | contribs) (Exos libres)

Jump to: navigation, search


Description

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 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

  • Carte ARDUINO UNO --> Microcontrôleur ATMEL ATMEGA3228P
  • Carte EXPLORER 16 --> DSP MICROCHIP DSPic33FJ256GP710
  • Carte LAUNCH PAD --> Microcontrôleur TEXAS INSTR MPS430
  • Carte Starter KIT ETML-ES --> Microcontrôleur MICROCHIP PIC18F4520
  • vos cartes...

Explorer 16.jpg - cartes électroniques

Exercices - donnees

Exos libres

Exas

Solus de nos memmbres : Aperçu & Codes & Astuce

Solus Exos session 1

  • Réponse exos 1.1 : ~ 520 Ohms
  • Réponse exos 1.2 : /OR
  • Réponse exos 1.3 : voir fichier pdf -->File:Exos serie1.pdf
  • Réponse exos 1.4 : voir fichier pdf -->File:Exos serie1.pdf
  • Réponse exos 1.5 : voir réponse détaillée à venir
  • Réponse exos 1.6 : 1) 0b 101 2) 0b 1100 3) 0b 11 1111 4) 0b 1 0000 0001 5) 0b 101 0000 0000
  • Réponse exos 1.7 : 1) 0x37 2) 0x5F 3) 0xE4D9 4) 0x179
  • Réponse exos 1.8 : 1) 2 3 5 9 2) ce n'est pas un code BCD
  • Réponse exos 1.9 : voir fichier pdf -->File:Exos serie1.pdf

Exos 1 9 dauphin.jpg

Solus Exos session 2

  • Réponse exos 2.1 : voir fichier type .txt => renommer le fichier en .dophin File:FiBo.txt => utilisation de l'émulateur dauphin
  • Réponse exos 2.2 : un microcontrôleur contient un microprocesseur, car RAM / ROM / ALU - CPU est directement dans le même boitier.
  • Réponse exos 2.3 : non, car une valeur 32bits peut être réalisées avec des champs de 16 ou 8bits, voir même des champs de 4bits
  • 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
  • Réponse exos 2.6 :
                   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 :
                   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 :
                   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 :
                   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 Exas session 1

  • Réponse exas Q1 : 2)
  • Réponse exas Q2 : 3)
  • Réponse exas Q3 : < 2500 ohm
  • Réponse exas Q4 : 1)
  • Réponse exas Q5 : 1)
  • Réponse exas Q6 : 2) & 5)
  • Réponse exas Q7 : 1) & 3) & 6)
  • Réponse exas Q8 : 33
  • Réponse exas Q9 : 0b010101010101
  • Réponse exas Q10 : 2) & 6) & 7)

Solus Exas session 2

  • Réponse exas Q1 : 3)
  • Réponse exas Q2 : OUI
  • Réponse exas Q3 : 1) & 4) & 5)
  • Réponse exas Q4 : 1) & 4) & 5)
  • Réponse exas Q5 : 4 000 000
  • Réponse exas Q6 : 2) & 4) & 5)
  • Réponse exas Q7 : 2) & 3) & 4)
  • Réponse exas Q8 : 1) & 4) --> la solution 2 est admise comme correcte mais il subside un tout ?? A vos remarques

astuce

Regarder le champs discussion : https://fixme.ch/wiki/Talk:Coursera_Microcontroleur

Liens utiles

liens: interne --> wiki

liens : documentation PDF

liens : documentation Site Internet

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

Participant