Podcast
Questions and Answers
Quelle sera la valeur de x après l'exécution du bloc de code suivant : x=10; while (x<5) { x++; }
?
Quelle sera la valeur de x après l'exécution du bloc de code suivant : x=10; while (x<5) { x++; }
?
Quel est le comportement de la boucle while dans le code while (bouton == 0) { action; }
?
Quel est le comportement de la boucle while dans le code while (bouton == 0) { action; }
?
Dans une boucle do...while, quelle affirmation est correcte ?
Dans une boucle do...while, quelle affirmation est correcte ?
Quelle est la conséquence de x++
à l'intérieur d'une boucle while while (x < 5) { x++; }
?
Quelle est la conséquence de x++
à l'intérieur d'une boucle while while (x < 5) { x++; }
?
Signup and view all the answers
Que se passe-t-il si le bouton est relâché dans la boucle while (bouton == 0) { action; }
?
Que se passe-t-il si le bouton est relâché dans la boucle while (bouton == 0) { action; }
?
Signup and view all the answers
Quel est le rôle principal du Bus de control dans un microprocesseur ?
Quel est le rôle principal du Bus de control dans un microprocesseur ?
Signup and view all the answers
Quelle unité effectue des opérations arithmétiques et logiques sur les données ?
Quelle unité effectue des opérations arithmétiques et logiques sur les données ?
Signup and view all the answers
Quel est le rôle du Pointeur de programme (PC) dans un microprocesseur ?
Quel est le rôle du Pointeur de programme (PC) dans un microprocesseur ?
Signup and view all the answers
Qu'est-ce qui caractérise le Bus d'adresses ?
Qu'est-ce qui caractérise le Bus d'adresses ?
Signup and view all the answers
Quel type de données le Bus de données transporte-t-il ?
Quel type de données le Bus de données transporte-t-il ?
Signup and view all the answers
Parmi les options suivantes, quelle opération n'est pas effectuée par l'UAL ?
Parmi les options suivantes, quelle opération n'est pas effectuée par l'UAL ?
Signup and view all the answers
Dans le modèle générique des microprocesseurs, quel est le rôle des Registres d’adresse ?
Dans le modèle générique des microprocesseurs, quel est le rôle des Registres d’adresse ?
Signup and view all the answers
Quel composant est principalement responsable de l'envoi d'instructions au Bus de contrôle ?
Quel composant est principalement responsable de l'envoi d'instructions au Bus de contrôle ?
Signup and view all the answers
Quel est le rôle du champ ACK dans une trame du Bus CAN?
Quel est le rôle du champ ACK dans une trame du Bus CAN?
Signup and view all the answers
Quelle est la longueur maximale du champ de données dans une trame CAN?
Quelle est la longueur maximale du champ de données dans une trame CAN?
Signup and view all the answers
Quel est le mécanisme utilisé pour résoudre les conflits lors de l'accès au bus CAN?
Quel est le mécanisme utilisé pour résoudre les conflits lors de l'accès au bus CAN?
Signup and view all the answers
À quoi correspond un identificateur de message de 11 bits ou 29 bits?
À quoi correspond un identificateur de message de 11 bits ou 29 bits?
Signup and view all the answers
Quel est l'usage de la zone réservée r0 et r1 dans le DLC?
Quel est l'usage de la zone réservée r0 et r1 dans le DLC?
Signup and view all the answers
Quelle est la fonction principale du champ CRC dans une trame CAN?
Quelle est la fonction principale du champ CRC dans une trame CAN?
Signup and view all the answers
Quelle est la vitesse maximale de transmission sur le Bus CAN?
Quelle est la vitesse maximale de transmission sur le Bus CAN?
Signup and view all the answers
Que représente le champ EOF dans une trame CAN?
Que représente le champ EOF dans une trame CAN?
Signup and view all the answers
Quel est le résultat final de la variable 'total' après l'exécution de la boucle ?
Quel est le résultat final de la variable 'total' après l'exécution de la boucle ?
Signup and view all the answers
Quelle fonction est utilisée pour allumer la LED si le bouton poussoir (BP) est activé ?
Quelle fonction est utilisée pour allumer la LED si le bouton poussoir (BP) est activé ?
Signup and view all the answers
Quelle fonction ajuste l'horloge du microcontrôleur en KHz ?
Quelle fonction ajuste l'horloge du microcontrôleur en KHz ?
Signup and view all the answers
À quel type de retard est associé la fonction 'Delay_us' ?
À quel type de retard est associé la fonction 'Delay_us' ?
Signup and view all the answers
Quelle instruction empêche l'extinction de la LED lorsque le bouton n'est pas pressé ?
Quelle instruction empêche l'extinction de la LED lorsque le bouton n'est pas pressé ?
Signup and view all the answers
Quelle est la portée de la fonction 'Hi' dans MikroC ?
Quelle est la portée de la fonction 'Hi' dans MikroC ?
Signup and view all the answers
Quel est le rôle de la fonction 'init_port()' dans le programme ?
Quel est le rôle de la fonction 'init_port()' dans le programme ?
Signup and view all the answers
Quel serait le comportement si 'bp' est égal à 0 dans le cycle while du 'main()' ?
Quel serait le comportement si 'bp' est égal à 0 dans le cycle while du 'main()' ?
Signup and view all the answers
Quel est l'effet de la fonction 'Delay_Cyc' ?
Quel est l'effet de la fonction 'Delay_Cyc' ?
Signup and view all the answers
Que signifie le retour de la fonction 'Lo' ?
Que signifie le retour de la fonction 'Lo' ?
Signup and view all the answers
Quelle est la plage de tension d'entrée recommandée pour alimenter une carte Arduino ?
Quelle est la plage de tension d'entrée recommandée pour alimenter une carte Arduino ?
Signup and view all the answers
Quelle fonction est exécutée une seule fois au début de l'exécution du programme Arduino ?
Quelle fonction est exécutée une seule fois au début de l'exécution du programme Arduino ?
Signup and view all the answers
Quelles sont les broches utilisées pour le port I2C sur une carte Arduino ?
Quelles sont les broches utilisées pour le port I2C sur une carte Arduino ?
Signup and view all the answers
Quel type de fichier est utilisé par défaut pour enregistrer un programme Arduino ?
Quel type de fichier est utilisé par défaut pour enregistrer un programme Arduino ?
Signup and view all the answers
Quel est le rôle de l'IDE Arduino ?
Quel est le rôle de l'IDE Arduino ?
Signup and view all the answers
Quelle est la fonction de la zone de messages dans l'IDE Arduino ?
Quelle est la fonction de la zone de messages dans l'IDE Arduino ?
Signup and view all the answers
Quel est le courant maximal recommandé pour une carte Arduino ?
Quel est le courant maximal recommandé pour une carte Arduino ?
Signup and view all the answers
Dans l'IDE Arduino, quelle option permet d'ouvrir le moniteur série ?
Dans l'IDE Arduino, quelle option permet d'ouvrir le moniteur série ?
Signup and view all the answers
Quel est le rôle de l'octet devsel dans une trame I2C ?
Quel est le rôle de l'octet devsel dans une trame I2C ?
Signup and view all the answers
Que se passe-t-il lorsqu'un maître relit un 0 alors qu'il a imposé un 1 ?
Que se passe-t-il lorsqu'un maître relit un 0 alors qu'il a imposé un 1 ?
Signup and view all the answers
Comment est structurée la trame d'écriture dans un algorithme d'écriture séquentielle ?
Comment est structurée la trame d'écriture dans un algorithme d'écriture séquentielle ?
Signup and view all the answers
Quel bit détermine le mode d'accès à un bloc dans une trame I2C ?
Quel bit détermine le mode d'accès à un bloc dans une trame I2C ?
Signup and view all the answers
Dans le contexte du bus I2C, quel est le rôle de la ligne SCL ?
Dans le contexte du bus I2C, quel est le rôle de la ligne SCL ?
Signup and view all the answers
Quelle condition doit être respectée pour qu'il n'y ait pas de conflit si plusieurs maîtres envoient des données simultanément ?
Quelle condition doit être respectée pour qu'il n'y ait pas de conflit si plusieurs maîtres envoient des données simultanément ?
Signup and view all the answers
Comment un maître relit-il le bit qu'il cherche à imposer sur le bus ?
Comment un maître relit-il le bit qu'il cherche à imposer sur le bus ?
Signup and view all the answers
Quel est le format de l'octet à envoyer pour écrire dans le bloc 0 d'un circuit 24C04 avec E2 à 1 et E1 à 0 ?
Quel est le format de l'octet à envoyer pour écrire dans le bloc 0 d'un circuit 24C04 avec E2 à 1 et E1 à 0 ?
Signup and view all the answers
Study Notes
Module M11
- Architecture des systèmes à processeurs (Cas des Microcontrôleurs PIC)
- Transmission et acquisition de données
- Éléments du Module Arduino
Partie 1 - Plan
- Systèmes de numération
- Introduction aux systèmes à processeurs
- Microsystèmes
- Microsystèmes simplifiés
- Modèle générique des microprocesseurs
- Notion de microcontrôleur
- Microcontrôleurs PIC
- Architectures des PIC
- Différentes familles de PIC
- Fonctions intégrées aux PIC
- Référence des µC PIC
- Architectures du PIC16F84
- Horloges, Mémoires, Registres du PIC16F84
Partie 2 - Plan
- Interruptions
- Interfaces graphiques de MikroC for PIC
- Éléments de programmation MikroC for PIC
- Fonctions intégrées à MikroC for PIC
- Bibliothèques intégrées à MikroC for PIC
- Conversion Analogique Numérique (ADC)
- Contrôleur LCD
- Module USART (UART)
- Modules CCP (PWM)
- Timer & Interruptions
- Généralités sur les Bus d'acquisition et de transmission de données
- Bus RS232 (USART ou UART ou Port Série)
- Bus CAN
- Bus I2C
- Aperçu sur le module Arduino
Systèmes de numération - Rappels
- Nombres Binaires Signés sur 8 Bits → C2
- Avantage du C2 par rapport aux autres
- MSB = 0 pour les positifs
- Un seul '0' est représenté
- MSB = 1 pour les négatifs
- Opérations en Binaire : Addition (Règle)
- 0 + 0 = 0
- 0 + 1 = 1
- 1 + 0 = 1
- 1 + 1 = 0 avec Retenue = 1
- Exemple : (12 +07)10 = (19)10
- Opérations en Binaire : Soustraction (Notion de Complément)
- Complément à 1 : "C1"
- C1(0) = 1
- C1(1) = 0
- Complément à 2: "C2"
- C2(x) = C1(x) + 1
- Soustraction (Règle) : X - Y = X + C2(Y)
- Exemple (12 - 7)10 = (05)10
- Remarque : Pour les nombres signés, si le MSB = 1 alors le nombre est négatif
Microsystèmes
- Horloge
- Marque le temps et l'activité du microprocesseur.
- Le µΡ utilise l'horloge pour exécuter les tâches selon une séquence préétablie.
- Fréquence d'horloge, c'est la fréquence de l'horloge interne du µΡ.
- Conditionne la rapidité à laquelle le processeur peut traiter les données.
- Microsystèmes simplifiés
- Modèle générique des microprocesseurs (UAL, Registres de données, Registres d'adresse..).
- UAL : Unité Arithmétique et Logique
- Addition, Soustraction, Décalage, ET logique, OU logique, ...
- PC: Compteur Programme (ou Compteur Ordinal)
- Contient sous forme binaire l'adresse de la prochaine instruction à exécuter
- Status : Registre d'Étât
- Associé au fonctionnement de l'UAL et a pour rôle d'enregistrer l' "état" de certaines opérations.
- Contient les bits qui ont chacun une affectation bien particulière (Indicateur de Retenue, Indicateur de Zéro, Indicateur de demi-Retenue)
Microsystèmes simplifié
- Bus de contrôles (Interruption)
- Bus d'adresses (16 bits)
- Bus de Données (8 bits)
- RAM (données)
- ROM (programme)
- Bus de données Bidirectionnel
- Bus d'adresses Unidirectionnel
- Bus de Contrôle Mixte
Familles de processeurs
- Microprocesseur : Généraliste
- Microcontrôleur: Applications Embarquées
- Processeur de Signal (DSP) : Spécialisé Traitement du signal
- ASIC : Spécifique à une application
- FPGA : Laboratoire configurable par l'utilisateur
Architectures des PIC
- Architecture matérielle Harvard
- Un bus pour chaque Mémoire (Données et Programme)
- Occupation mémoire Fixe pour toutes les instructions
- Architectural Logicielle RISC (Reducted Instruction Set Computers)
- Instructions simples (et rapides).
- Les instructions lisent leurs opérandes dans des registres.
- Beaucoup de registres.
- Instructions de longueur et de temps d'exécution fixes.
- Programmes plus longs.
- Machines simplifiées et plus rapide
- Différentes familles de PIC
- Base-Line : Instructions codées sur 12 bits
- Middle-Range : Instructions codées sur 14 bits
- High-End : Instructions codées sur 16 bits
Fonctions intégrées aux PIC
- Points communs à tous les µC :
- Timer 8 bits
- I/O (Entrées / Sorties)
- WDT (Watchdog Timer)
- Gestion du RESET
- Equipés d'un Oscillateur intégré
- Equipés de Résistances de Tirages internes configurables par programme
- Surveillance d'alimentation...
- Spécificités par µC :
- EEPROM (Mémoire reprogrammation) : Exemple PIC16C84
- 1 ou 2 Timer 16 bits
- ADC 8 ou 10 bits (Entrées Analogiques)
- DAC 8 bits
- Comparateur Analogique
- Tensions de référence
- CCP (Capture Compare PWM)
- ECCP (PWM à 4 canaux)
- Contrôleur de LCD
- Communications: I2C, SPI, USART, Bus CAN, USB, ...
Référence des µC PIC
- PIC16 F 84 - 4
- Catégorles : 10, 12, 16, 17 ou 18
- Type de Mémoire & d'Alimentation : F Flash 4,5 à 6V ; C EEPROM ou EPROM 4,5 à 6V ; CR ROM 4,5 à 6V ; LF Flash 2 à 6V ; LC EEPROM ou EPROM 2,5 à 6V ; LCR ROM 2,5 à 6V
- Fréquence Max
- Référence à 2 à 4 chiffres
Architectures du PIC16F84
- Architecture Harvard
- Famille Middle-Range (Instructions codées sur 14 bits)
- Type RISC : Jeu d'instruction réduit : que 35 instructions, et Temps d'exécution réduit.
- Vitesse Typique 4 MHz
- Données sur 8 bits
- 13 Entrées - Sorties configurables individuellement
Architecture interne (Structure)
- FLASH (Mémoire Programme)
- PILE
- INTERPRETAEUR D'INSTRUCTION
- UNITE D'EXECUTION
- UAL
- STATUTS
- FSR (ADDRESSES)
- RAM
- EEPROM
- INTCON
- OPTION_REG
- EETF
- GIE
- TOIE
- INTE
- RBIE
- TOIF
- INTF
- RBIF
- Adresse COMPTEUR PROGRAMME (PC)
- Bus INSTRUCTION
Architectures externes
- Le microcontrôleur est réalisé en Technologie CMOS.
- Les signaux sont Compatibles TTL.
- Broches du PIC16F84: Vss et Vdd alimentation; OSC1, OSC2: signaux d'Horloge ; MCLR (Master CLear) : Reset ou Vpp; CLKIN, RAO... RA4, RB0 ... RB7, TOCKI, INT
- Vitesse Typique 4 MHz.
- Données sur 8 bits.
- 13 Entrées - Sorties configurables individuellement.
Horloges du PIC16F84
- 1 cycle machine = 4 coups d'horloge
- F : 0 à 4 MHz ou 0 à 20 MHz selon le type de µC
- Horloge Interne
- Résonateur Quartz ou Céramique
- Horloge Externe
Registres du PIC16F84
- Registres Spéciaux - SFR :
- STATUS,
- INTCON,
- OPTION_REG,
- PORTA,
- PORTB
Ports d'entrée/sortie du PIC16F84
- Le PIC16F84 est équipé de 13 lignes d'E/S réparties en 2 Ports Parallèles Bidirectionnels.
- 5 lignes → Port A : RA4.....RA0
- 8 lignes → Port B : RB7.....RB0
Registres de Configuration des Ports
- Sens de direction des données (Entrée ou sortie)
- Registres TRISA (TRansfert Input Set port A) ou TRISB
- Bit x = 0 dans TRISA ou TRISB: Sortie et Bit x = 1: Entrée.
Registres du PIC16F84 option REG
- OPTION_REG: Bits de configuration pour divers périphériques.
- /RBPU (RB Pull Up) : Résistances de tirage à Vdd des entrées du port B (Validé par 0)
Modules I2C
- Les 2 fils (SCL et SDA), collecteur ouvert.
- Repos (État 1): 3,3V à 5V
- Actif (État 0): OV
- Les 2 fils sont au niveau 1.
Acquisition et Transmission Série de données
-
Généralités sur les bus série
-
Exemples de bus série
-
Bus courants dans les systèmes embarqués : RS232, RS485 , CAN, I2C, SPI, USB, 1 WIRE.
Bus CAN
- Introduction au bus CAN
- Réduction des coûts de câblage et de maintenance
- Protocole et paramètres électriques de ligne de transmission
- Transmission physique
- Questions câblage
- Topologie du réseau CAN
- Format des Trames de données du Bus CAN
- Composition de la trame
- Zone d'Arbitrage
- Format << Standard » (Version 2.0A)
- Format <<< Étendu » (Version 2.0B)
- Champ de Données
- Champ de Contrôle
- Champ ACK
- Champ EOF
Bus I2C
- Présentation
- Principe d'Arbitrage
- Exemple (Trame)
- Transmission d'une adresse
- Ecriture d'une donnée
- Lecture d'une donnée
- Restart
- Conflits et prise de contrôle du bus
Module Arduino
- Généralités sur les modules Arduino
- Leur taille physique est standardisée
- Logiciel de programmation (gratuit et open source, développé en Java doté d'une grande simplicité d'utilisation).
- Matériel (cartes électroniques dont les schémas sont en libre circulation sur internet).
- Arduino UNO
- Microcontrôleur : ATmega328P
- Tension de fonctionnement : 5V
- Tension d'alimentation (Recommandée) : 7-12V
- Broches E/S numériques
- Broches d'entrées analogiques
- Intensité maxi disponible par broche E/S (5V)
- Intensité maxi disponible par broche E/S (3.3V)
- Mémoire Programme Flash
- Mémoire SRAM (mémoire volatile)
- Mémoire EEPROM (mémoire non volatile)
- Vitesse d'horloge
- Dimensions
- Broches d'Arduino UNO
- SPI
- I2C
- Port USB de Programmation
- Entrée DC 7-12 V
- 2,1 mm
Studying That Suits You
Use AI to generate personalized quizzes and flashcards to suit your learning preferences.
Related Documents
Description
Testez vos connaissances sur le fonctionnement des boucles en programmation. Ce quiz couvre des concepts clés tels que les boucles while, do...while et l'impact des conditions et des actions dans ces structures. Préparez-vous à répondre à des questions sur les comportements de ces boucles spécifiques.