« SE3 PSE Binome2023-2 » : différence entre les versions

De projets-se.plil.fr
Aller à la navigation Aller à la recherche
Aucun résumé des modifications
Aucun résumé des modifications
Ligne 8 : Ligne 8 :
== '''Partie électronique''' ==
== '''Partie électronique''' ==


=== Fichier Kicad ===
[[Fichier:Projet manette carte electronique.zip|center|vignette|0x0px]]
[[Fichier:Projet manette carte electronique.zip|center|vignette|0x0px]]


Ligne 32 : Ligne 33 :
== '''Partie informatique''' ==
== '''Partie informatique''' ==


==='''Programme en C pour allumer les leds:'''===
=== Implémentation d'un programme en C pour allumer les LEDs d'un PCB ===
 
Implémentation d'un programme pour allumer les LEDs d'un PCB.


  #include <avr/io.h>
  #include <avr/io.h>
Ligne 55 : Ligne 54 :
[[Fichier:Clignotement des leds.mp4|vignette|left|Clignotement des leds]]
[[Fichier:Clignotement des leds.mp4|vignette|left|Clignotement des leds]]


=== Détection du mode DFU ===


 
==== Utilisation de la carte Arduino Uno afin de détecter le mode DFU ====
[[Fichier:Mode dfu détecté.jpg|vignette|mode dfu détecté]]
[[Fichier:Utilisation arduino uno.jpg|alt=Utilisation arduino |vignette|left|500px|Utilisation arduino pour détecter le mode dfu]]
[[Fichier:Utilisation arduino uno.jpg|alt=Utilisation arduino |vignette|Utilisation arduino pour détecter le mode dfu]]
[[Fichier:Mode dfu détecté.jpg|vignette|right|500px|mode dfu détecté]]
<p style="clear: both;" />

Version du 10 avril 2024 à 13:05

Sujet : Manette de jeu

Cahier des charges

Concevoir une manette de jeu vidéo, afin de pouvoir jouer à Space Invader, codé en informatique. Utilisation d'au moins 3 boutons poussoirs pour aller à gauche, à droite, et tirer des missiles en haut sur les monstres. Utilisation de LEDs afin de savoir le nombre de vies restant à l'utilisateur.

Partie électronique

Fichier Kicad

Fichier:Projet manette carte electronique.zip

Kicad : schématique, routage et gerber

Schématique et routage

Schématique manette
Routage PCB

Fichier Gerber

Visualisation du PCB

PCB sans composants

Carte PCB

Soudure des principaux composants

Principaux composants soudés sur la carte
Principaux composants soudés sur la carte

Partie informatique

Implémentation d'un programme en C pour allumer les LEDs d'un PCB

#include <avr/io.h>
#include <stdio.h>
#include <util/delay.h>

int main(){   
  CLKSEL0 = 0b00010101;   // sélection de l'horloge externe
  CLKSEL1 = 0b00001111;   // minimum de 8Mhz
  CLKPR = 0b10000000;     // modification du diviseur d'horloge (CLKPCE=1)
  CLKPR = 0;              // 0 pour pas de diviseur (diviseur de 1)
  DDRD |=0x03;            // car on souhaite déclarer en sortie les ports 0 et 1 ce qui correspond à 3 en hexa
  while(1){
    PORTD ^=0x03;       // le xor permet d'allumer et éteindre les leds successivement
    _delay_ms(1000);    // tps en ms
  }
  return 0; 
}

Détection du mode DFU

Utilisation de la carte Arduino Uno afin de détecter le mode DFU

Utilisation arduino
Utilisation arduino pour détecter le mode dfu
mode dfu détecté