SE3 PSE Binome2023-2
Aller à la navigation
Aller à la recherche
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.
Lien GIT
https://archives.plil.fr/sdeparis/projet_manette_sd_ah.git
Partie électronique
Kicad
Fichier Kicad
Fichier:Projet manette carte electronique.zip
Schématique et routage
Fichier Gerber
Soudure
PCB sans composants
Soudure des principaux composants
Partie programmation
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
Initialisation de notre carte
Remarque : les boutons poussoirs sont mal soudés.