Interruptions et sound system

Yesss !! J’ai mis en place mon lecteur de carte SD et ma sortie audio (non-filtrée pour le moment). Je suis assez content car cette partie a été entièrement faite à partir de composants de récupération (sur carte son et autres PCBs qui traînent … au cas ou … dans mon antre).

Premiers tests sur la lecture du contenu des fichiers sur la carte SD : ça fonctionne nickel et du premier coup ! C’te classe !

Second tests : lecture d’un son stocké sur la carte SD : ça fonctionne nickel aussi (bon, le son n’est pas filtré du tout et on peut entendre les « battements » de l’arduino… 😀 ).

Intégration de l’ensemble au code d’origine et là, PAF ! Tout fonctionne mais le son est très … llllllllleeeeeeeennnnnnnnntttttttt ! :( Diantre, mais d’ou vient le problème ???

La faute à la gestion des lampes : je génère une interruption logiciel en utilisant le timer 2 (Nota : utiliser le kit 1.5 pour pouvoir utiliser les ISR en overflow du timer 2 !!!) . Cette interruption prend pas mal de temps(gère les switchs et les 96 lampes) et est exécutée assez souvent pour ne pas subir le clignotement des lampes (25 fois par seconde minimum). Les sons sont aussi générés via interruption (à 32 ou 64 KHz), du coup je n’ai plus assez de bus pour géré les 2 systèmes en même temp … il me faudrait un player 4 ou 8KHz (vu les sons de l’époque) pour que ça tienne je pense ….

Je pense donc ajouter un second arduino (par forcément un Mega du coup), connecté au premier, uniquement pour gérer les sons… :)

Une petite photo de la chose (ajout du lecteur SD et de la sortie audio) :

SD card et audio

 

 

2 réflexions au sujet de « Interruptions et sound system »

  1. Bonjour,

    Je suis avec intérêt ton projet, que j’espère tu n’as pas abandonné. J’ai eu le Mr & Mrs Pac Man, mais je l’ai revendu à cause de son gameplay que l’on pourrait nettement améliorer, notamment en scindant l’augmentation des valeurs des éjecteurs droit et gauche, pour que chacun ait sa propre échelle de bonus
    D’origine, durant l’attract mode, les lettres B A L L Y sont écrites successivement dans le « pac maze ».
    Moi, c’est un Fireball II, pour lequel j’aimerai vraiment revoir complètement les règles.

    Bonne continuation !

  2. Bonjour,

    Oh que non je n’ai pas abandonné du tout (et puis un flipper dans la salle à manger, ça ne s’oublie pas:) ) mais j’ai quelques jeux de café au format Jamma à réparer en parallèle.

    Malheureusement les 2 rampes sont électriquement liées, allumer le 10K gauche allume le 10K droit. Il n’est pas impossible de scinder les 2 mais ça impliquerait l’utilisation d’un autre « Lamp Driver » (quoique, de mémoire certaines sorties ne sont pas connectées …).

    Au niveau gameplay, partant de rien, je vais pouvoir me permettre de faire mes propres règles, c’est l’avantage (mais ça représente un travail assez conséquent).

    Il me reste donc :
    – le son (faut juste que je rachète un petit Arduino)
    – les afficheurs (bon , je crois avoir compris comment cela fonctionne)
    – les animations (je vais me faire un petit utilitaire pour pouvoir les générer)
    – un gameplay (j’en ai fait un, mais ultra-minimaliste).

    Il est beau le Fireball II (bave…!!!). Pas facile de changer le gameplay d’un flipper fonctionnel mais pas impossible (travail de fou). Il faudrait extraire le contenu des Eproms de la CPU, les désassembler, analyser le code, le modifier et le ré-implanter dans une nouvelle Eprom… sacré projet !!!

    Merci pour les encouragements.

Les commentaires sont fermés.