mardi 26 avril 2016

Projet PV16SOG

Ce projet est une suite logique des projets comme PICvision et PICvision portable. Il s'agit d'un petit ordinateur dans le style 1978, pensez à Apple II ou TRS-80 modèle I. Le montage électronique est réalisé avec seulement 3 composants actifs, le MCU PIC24EP512MC202, la mémoire SPI RAM 23LC512 et le régulateur de tension 3,3Volt. Le montage est réalisé sur une carte à pastilles passantes (sur les 2 faces).

Puisque ce projet a sa propre page WEB je ne ferai ici qu'une brève présentation.

Caractéristiques

  • Processeur: MCU PIC24EP512MC202. Il s'agit d'un MCU 16 bits avec 512Ko de mémoire flash et 48Ko de mémoire RAM.
  • Video: Sortie vidéo NTSC 16 tons de gris.
    • Mode texte: 21 lignes de 40 caractères.
    • Mode graphique: 240x170 pixels 16 tons de gris
  • Son: Sortie tonalité simple (onde carré).
  • périphériques utilisateur: Clavier PS/2 et joystick Atari 2600
  • Stockage: Carte SD format en FAT/FAT32.
  • Shell: Shell de commandes dans le style MS-DOS avec des commandes comme dir, del, ren,etc.
  • Programmation: BASIC inspiré de QBASIC. Il s'agit d'un compilateur BASIC entier 16 bits procédural. Pas de numéro de lignes ni de GOTO et GOSUB, je voulais quelque chose de plus moderne. Ce BASIC peut-être utilisé en interactif à la manière de Python, mais il y a aussi un éditeur de texte pour écrire des programmes et les sauvegardés dans un fichier.
  • RAM: La mémoire RAM disponible pour les programmes BASIC est de 20512 octets. La SPI RAM peut-aussi être utilisée pour conserver des données temporaires.

Vidéo de présentation

présentation du boitier. Réalisé en contre-plaqué de merisier 3mm.

Présentation du shell de commande. Exécution de quelques commandes, de quelques petits démo en BASIC et finalement écriture d'une fonction factiorielle utilisant la résursivité.

État du projet

L'ordinateur est utilisable dans l'état actuel du code. Lorsque je tombe sur un bogue je le corrige rapidement. La documentation n'est pas tout à fait complétée. Je dois encore écrire des exemples pour le BASIC.

Liens