« 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 ===
=== Kicad ===
 
==== Fichier Kicad ====
[[Fichier:Projet manette carte electronique.zip|center|vignette|0x0px]]
[[Fichier:Projet manette carte electronique.zip|center|vignette|0x0px]]
=== Kicad : schématique, routage et gerber ===


==== Schématique et routage ====
==== Schématique et routage ====
Ligne 21 : Ligne 21 :
[[Fichier:Visualisation du PCB.png|vignette|left|500px|Visualisation du PCB]]
[[Fichier:Visualisation du PCB.png|vignette|left|500px|Visualisation du PCB]]
<p style="clear: both;" />
<p style="clear: both;" />
=== Soudure ===


==== PCB sans composants ====
==== PCB sans composants ====
Ligne 55 : Ligne 57 :
<p style="clear: both;" />
<p style="clear: both;" />


=== Détection du mode DFU ===
=== Détection du mode DFU sur notre carte ===


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

Version du 10 avril 2024 à 13:10

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

Kicad

Fichier Kicad

Fichier:Projet manette carte electronique.zip

Schématique et routage

Schématique manette
Routage PCB

Fichier Gerber

Visualisation du PCB

Soudure

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 sur notre carte

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é