Table des matières
AT91 SAM7S
Présentation
AT91SAM7S64
- 0.9 MIPS/MHZ avec les instructions ARM
- 0.77 MIPS/MHZ avec les instructions THUMB
- Fréquence de fonctionnement : plus de 55Mhz (Voir fréquence max d'utilisation)
- USB 2.0 Full Speed (12Mbits)
- CAN 10 bits x 8 cannaux, 385KS/s
- SSC (Serial Synchronous Controller)(12.5Mb/s) : I2S, AC97, TDM
- SPI (50Mb/s), TWI I²C (400kb/s)
- 2 USARTs, IrDA (115.2kbps), ISO7816, RS485
- 3 timers 16bits avec 6 PWM
Alimentation
L'AT91SAM7S intègre un régulateur de 1.8V pour le coeur ARM.
Pour assurer une stabilité, il est nécessaire de mettre 4 condensateurs aux bornes de ce régulateur.
3.3V - 4.7µF / / 100nF - (VDDIN)Régulateur(VDDOUT) - 1nF / / 2.2µF
VDDIN | 3.3V nominal [3.0;3.6V] | l'entrée du régulateur |
VDDOUT | 1.8V | la sortie du régulateur |
VDDIO | 3.3V nominal [3.0;3.6V] ou 1.8V nominal [1.65;1.95V] | Alimentation de l'étage de sotie I/O |
VDDFLASH | 3.3V nominal [3.0;3.6V] | Alimentation de la mémoire flash |
VDDCORE | 1.8V nominal [1.65;1.95V] | Alimentation de coeur ARM7, peut être connecté directement à VDDOUT |
VDDPLL | 1.8V nominal [1.65;1.95V] | Alimentation la PLL, peut être connecté directement à VDDOUT |
Port I/O
- Interruption
- Résistances de tirage programmables
- Tolère 5V - Attension, si la tension d'entrée est supérieure à la tension VDDIO et si la résistance de tirage est activée (C'est le cas lors d'un reset) alors un courant passera de l'entrée vers VDDIO …
- 4 sorties à 16mA (PA0 à PA3) les autres à 8mA - 150mA au total pour l'AT91SAM7S64 - 100 mA au total pour l'AT91SAM7S32
Oscillateur
Plusieurs sources d'horloge sont possibles. Vous pouvez utiliser un quartz (3 à 20Mhz) (MAINCK), un circuit RC (22Khz à 42Khz) ou l'oscillateur RC interne (SLCK). La fréquence du quartz ou du circuit RC externe sont injectés dans une PLL dont la fréquence de sortie peut varier entre 80 et 220Mhz (PLLCK).
Fréquence maximum d'utilisation
Atmel vous garantit 55MHz dans le pire des cas. Vous pouvez monter plus haut, mais dans ce cas la fréquence dépendra de paramètres comme la température, la tension d'alimentation etc …
Programmation
SAM-BA
SAM-BA est petit programme permetant de charger un programme par l'intermédiaire d'une liaison série. Il réside dans une mémoire ROM de l'AT91. Lors de la procédure de restauration il est automatiquement chargé dans la mémoire programme.
Procédure de restauration:
- Coupez l'alimentation de votre carte
- Placez les pin TST, PA0, PA1 et PA2 à l'état haut (PA0,PA1 et PA2 disposent d'une resistance interne de tirage à l'état haut; donc il suffit de connecter TST à 3.3V)
- Alimentez votre carte
- Patientez 10s (Le temps que SAM-BA Boot se charge en début de mémoire flash
- Coupez l'alimentation de votre carte
- Déconnectez la pin TST du 3.3V
- Alimentez votre carte
Pour utiliser SAM-BA deux interfaces sont disponibles, soit l'USART (Mode DBGU) soit l'USB. Pour utiliser le mode DBGU, il est nécessaire d'utiliser un quartz de 3 à 20Mhz. Pour utiliser le mode USB, il vous faut un quartz de 18.432Mhz.
Vous trouverez l'interface graphique (SAM-BA GUI) permettant d'envoyer la fichier dans votre micro dans la section logiciel
Si vous chargez un programme à l'aide de SAM-BA celui-ci écrase SAM-BA. Apres un reset c'est donc votre programme qui sera démarré et non SAM-BA. Si vous voulez reflasher un autre programme, il faudra restaurer SAM-BA.
D'apres ce que j'ai pu comprendre, SAM-BA touche aux bits de protection de la mémoire flash (bits NVM/ Lock bits) et ces bits sont limités à 100 écritures/effacements sur la série des SAM7S. Donc évitez l'utilisation intensive de SAM-BA…
JTAG
Voir programmateur le Wiggler clone et OpenOCD
Tutoriaux disponibles sur ce wiki
- Tutorial de prise en main de la carte SAM7-P64 - Carte d'olimex, comment installer le driver USB, utiliser SAM-BA GUI, restaurer SAM-BA Boot etc
Liens
Documentation
Datasheet AT91SAM7S
Guide d'utilisation du SAM Boot Assistance (SAM-BA)
Un autre guide d'utilisation du SAM-BA
Introduction aux AT91 ARM7TDMI
Introduction aux AT91SAM7A,S,X (CAN, PWMC, USART, USB, PMC, RTCS, TWI, UDP etc)
Tutorial de prise en main SAM7S64
Utilisation d'outils opensource pour le développement sur AT91SAM7
Cartes de développement
Logiciels
Environnements de développement C
- EWARM est l'environnement de développement de IAR pour les microcontrôleurs ARM. La version gratuite (kickstart) est limitée à 32Ko de code.