er121_hc11 pour pdf.qxp
Transcription
er121_hc11 pour pdf.qxp
ERMES121HC11 Voici une présentation succincte des caractéristiques du 68HC11 - Alimentation 5V, - Mémoire RAM 256 octets - Mémoire Eeprom 512 octets - Mémoire Eprom 8K octets - Oscillateur externe 8Mhz - Code compatible 68HC05 - 2 accumulateurs 8 bits - une liaison série asynchrone (SCI) - une liaison série synchrone (SPI) - un convertisseur analogique numérique 8 bits, 8 entrées - circuit d'interruption temps réel - 1 timer 16bits (commutable sur pins externe/3 entrées de captures, 5 sorties de comparaison)) - 13 entrées/sorties (I/O) bi-directionnel - 1 entrée IRQ - 1 entrée RST - 1 entrée INTERRUPTION CARTE DE DÉVELOPPEMENT POUR 68HC11 Caractéristiques : Dimensions : 180 x 75mm Alilmentation 12V à 18V Principe de fonctionnement de la carte: 1 PRÉSENTATION Cette carte à été conçue et développée pour répondre à de nombreuses demandes concernant le 68HC11. Elle permet la programmation de plusieurs types de 68HC11 en boîtier PLCC 52 broches, elle permet aussi le développement d'application grâce, à un logiciel fourni par MOTOROLA et aux interfaces fournies par la valise ER121. Le mode single chip et mode étendu est possible grâce à la présence du 68HC24 et d'une EEPROM 2864. Possibilités d'utiliser entre autre le 68HC11A1FN 68HC811E1FN 68HC811E2FN 68HC711E9 2 FONCTIONNEMENT Le 68HC11: C'est un µC en technologie HCMOS qui se décline en plusieurs versions Nous utiliserons en exemple le 68HC11E2 et le 68HC711E9, 8K de mémoire. Le montage est alimenté au travers de l'interrupteur S2 par la valise ER121, mais nécessite tout de même un régulateur U1 de 12V dont la sortie est rehaussée par la diode D8 à 12.6V pour la tension de programmation de 12.6V. .Les condensateurs C1,C2,C3,C4,C6 filtrent la tension d'alimentation, et la led L1 indique la mise sous tension du µC. La résistance variable AJ2 permettra une variation de la tension mesurée lors des tests des convertisseurs. Les liaisons avec les interfaces de la valise ER121 s'effectuent au travers des connecteurs JP1 et JP2 par du fil rigide de 0.5 ou 0.8mm type fil téléphone. Une zone de câblage à été prévue, elle permettra de souder quelques composants spécifiques. VCOM ERMES121HC11 3 ATTENTION : Suite aux retours SAV, nous avons constaté certaines erreurs dues à l'inattention ou au manque d'application lors de la réalisation des KITS. Vous trouverez ci-après les erreurs classiques généralement constatées. 1/ La soudure froide : Elle se produit lorsque la panne du fer ne chauffe pas assez les deux éléments à souder, la soudure ne peut pas accrocher, car la température n'est pas atteinte. Une panne peut se produire de suite ou après quelques temps d'utilisation, lorsque l'oxydation fait son œuvre. vérifiez que la soudure est brillante et qu'elle forme un cône autour de la patte du composant, de plus rappelons qu'il ne faut jamais souffler sur une soudure ( même pour aller plus vite) . 16V C13 100nF VPP 4 5 6 PT1 TEST R7 470 U1 LM7812 1 1 3 L1 LED3mm 2 C1 V100uF/25V 3 C4 100nF C5 100nF 2 C2 RÉALISATION VDD 1 V100uF/25V 3 5V1 TEST VCC 2 VCOM Le µC nécessite pour son fonctionnement un circuit de reset réalisé par R2,C3 et BP_RST, et un circuit oscillant à 8Mhz réalisé autour de Q1, R1, C11 et C12. Le quartz de 8Mhz nécessaire pendant la phase de programmation peut être changé, par la suite, s'il est monté sur support. Les mini-dip S1, permettent l'application de la tension de programmation et la configuration du mode de fonctionnement du µC: mode Test, étendu, multiplexé, boot. En mode étendu (le programme est situé dans l'Eeprom externe) les ports B et C monopolisés par l'adressage de la mémoire sont restitués grâce au 68HC24(U5) qui nécessite un décodage d'adresse réalisée par le 74HC00 (U6) et un multiplexage des ports réalisé par le 74HC373 (U3). S2 SW DPDT D8 1N4148 VCC VCC GND1 TEST AJ1 C9 100nF C6 100nF C7 100nF 2/ La " gougoutte " de soudure entre deux pattes très proches : La solution est simple, vérifiez avant la soudure les connexions aboutissant à la pastille que vous allez souder, et contrôler après. N’oubliez pas, que plus un composant est petit (condensateur, transistor), plus il a du mal à évacuer la chaleur, ne pas rester trop longtemps (<5s) sur une patte et espacez le soudage sur un composant actif. 3/ N’hésitez pas à plaquer correctement les éléments sur le circuit imprimé ( support CI, poussoir etc..), dans le cas contraire lors de l'utilisation (insertion, extraction, serrage) Les efforts ne seront pas transmis sur l'élément, mais sur les pistes du circuit imprimé d'où rupture de celles-ci. La méthode consiste par exemple pour un support C.I., à faire 2 soudures en diagonale puis appuyer sur le support et chauffer les 2 soudures, l'une après l'autre, vous serez surpris de voir que le support s'enfonce encore. Une exception à cette règle, concerne les éléments qui sont AJ2 P2.2K PAST amenés à chauffer (risque de brûlure sur le circuit imprimé). Un dernier conseil : Pour le positionnement des composants, nous vous conseillons de les implanter dans le même sens de lecture ( la vérification des valeurs sera grandement facilitée ), et de bien les plaquer sur le circuit-imprimé, la résistance mécanique sera bien meilleure. Le circuit imprimé étant percé et sérigraphié, la difficulté réside juste dans le placement des composants. ATTENTION : Certains composants sont polarisés, ils ont donc un sens d'insertion particulier. Il s'agit des diodes, des leds, des circuits intégrés et de leurs supports. Il est conseillé d'implanter les composants de la manière suivante : Montez les composants comme suit : UVA R 16V JP1 HEADE R3 2X2 UV INIT D1 D3 D5 D7 BUS Y RX.RF TX.RF DTMF.C1 DTMF.C3 DTMF.R2 DTMF.R4 RX.I TX.P RX.P CP.10 CP.8 CP.6 CP.4 CP.2 BP.1 BP.3 BP.5 BP.7 TRIAC AFF.D1 AFF.D3 AFF.D5 AFF.D7 AFF.RS AFF.CS INI ERMES121HC11 D1 D3 D5 D7 BSY RX1 TX1 DC1 DC3 DR2 DR4 RXI1 Montez la diode : (Attention au sens) D8 : 1N4148 Montez les résistances : R1 : 10MΩ ( Noir, marron, bleu ) R2 : 100KΩ (Marron, Rouge, noir, jaune) R3, R4, R5, R6 : 4K7Ω (Jaune, violet, rouge) R7, R11 : 470Ω (Jaune, violet, marron) R10 : 1,5KΩ (marron, vert, rouge) Montez la résistance réseau : (Attention au sens) R8 : 8 Résistances SIL 10K ( Repère sur 1 du C.I. ) Montez les LEDS enfoncées : (Attention au sens) L1, L2, L3 : diodes LED 3mm rouge Montez les supports de Tulipe et PLCC : (Attention au sens) U2 : Support PLCC 52 broches U3 : Support tulipe 20 broches U4 : Support tulipe 28 broches U5 : Support PLCC 44 broches U6 : Support tulipe 14 broches Montez le DIP SWITCH : (Attention au sens) S1 : Dip switch 4 positions à glissière ( voir photo ) Montez les condensateurs céramique : C11, C12 : 15Pf Montez les condensateurs milfeuil : C3, C4, C5, C6, C7, C8, C9, C13 : 100nF Montez les condensateurs chimique : (Attention au sens ) C1, C2 : 100µF / 25V Radial Montez le régulateur TO220 : U1 : LM7812 Montez le bouton poussoir : BP_RST : Bouton poussoir Montez le quartz : Q1 : Quartz 8Mhz Montez la résistance ajustable : AJ1 : 4K7Ω Montez les connecteurs : JP1, JP2 : 2 x 32 broches RX2 TXP1 CP10 CP8 CP6 CP4 CP2 BP1 BP3 BP5 BP7 TRI AD1 AD3 AD5 AD7 ARS AC1 1 3 5 7 9 11 13 15 17 19 21 23 25 27 29 31 33 35 37 39 41 43 45 47 49 51 53 55 57 59 61 63 2 4 6 8 10 12 14 16 18 20 22 24 26 28 30 32 34 36 38 40 42 44 46 48 50 52 54 56 58 60 62 64 VSS 12 V STR D0 D2 D4 D6 ACK RX.RF TX.RF DTMF.C2 DTMF.R1 DTMF.R3 DTMF.OE RX.I TX.P RX.P CP.9 CP.7 CP.5 CP.3 CP.1 BP.2 BP.4 BP.6 BP.8 TRIAC AFF.D0 AFF.D2 AFF.D4 AFF.D6 AFF.RW AFF.CS 12 V STR D0 D2 D4 D6 BZ1 ACK I1 RXF I3 TXF I5 DC2 DTR1 DR3 RXI RXP CP7 DOE TXP CP9 CP5 CP3 CP1 BP2 BP6 TRI1 AD2 AD6 VCOM JP2 16 V BP4 BP8 AD0 AD4 ARW ACS VSS TX.S RT.S RX.S BUZ1 INTER1 INTER3 INTER5 REL2 REL1 BUZZER TX.I RF.ON R.TEL REC MES S PL AY LE D.1 LE D.2 LE D.3 44 0HZ IMP2 IMP1 CE.S YNTH COL1 COL2 COL3 LIG4 LIG3 LIG2 LIG1 1 3 5 7 9 11 13 15 17 19 21 23 25 27 29 31 33 35 37 39 41 43 45 47 49 51 53 55 57 59 61 63 2 4 6 8 10 12 14 16 18 20 22 24 26 28 30 32 34 36 38 40 42 44 46 48 50 52 54 56 58 60 62 64 VSS TX.S RT.S RX.S BUZ2 INTER2 INTER4 INTER6 REL2 REL1 BUZZER TX.I RF.ON R.TEL REC MES S PLAY LED.1 LED.2 LED.3 440HZ IMP2 IMP1 CE.SYNTH COL1 COL2 COL3 LIG4 LIG3 LIG2 LIG1 5V 0V TXS RTS RXS BZ2 I4 RL2 BUZ RFO REC PL Y I2 I6 RL1 TXI TEL MES LD1 LD2 LD3 44 0 IM1 CO1 CO3 LG3 IM2 CSY CO2 LG4 LG2 LG1 HEA DE R3 2X2 CARTE µC TX.P PD1.TX RX.P PD0.RX 68HC11 U13 K0 K1 K2 K3 K4 K5 K6 K7 K8 K9 K1 0 K1 1 K1 2 K1 3 K1 4 K1 5 K1 6 K1 7 K1 8 K1 9 AFF-S : Barette, sécable 3 contacts. Montez l’interrupteur à glissière S2 : Interrupteur à glissière 2 positions Montez les Circuits intégrés sur supports : U2 : 68HC711E9 U3 : 74HC373 U4 : 2864A U6 : 74HC00 U5 : OPTION VOIR NOMENCLATURE 4 MISE EN ROUTE Programmes fournis sur le CDROM: La plupart des logiciels sont en Freeware et fournis gracieusement par MOTOROLA et permettent la programmation et la mise au point de vos logiciels. Lire-Com.EXE permet le dialogue avec un port série COM1 ou COM2, il envoie sur le port série sélectionné dans Lire-Com.cfg les caractères tapés au clavier et affiche les caractères reçus, sous forme ASCII et hexadécimal. 1 2 3 4 5 6 7 8 9 10 20 19 18 17 16 15 14 13 12 11 1 U14 2 3 4 5 6 7 8 9 10 20 19 18 17 16 15 14 13 12 11 K2 0 K2 1 K2 2 K2 3 K2 4 K2 5 K2 6 K2 7 K2 8 K2 9 K3 0 K3 1 K3 2 K3 3 K3 4 K3 5 K3 6 K3 7 K3 8 K3 9 U1 5 K0 K1 K2 K3 K4 K5 K6 K7 K8 K9 K10 K11 K12 K13 K14 K15 K16 K17 K18 K19 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 21 K2 0 K2 1 K2 2 K2 3 K2 4 K2 5 K2 6 K2 7 K2 8 K2 9 K3 0 K3 1 K3 2 K3 3 K3 4 K3 5 K3 6 K3 7 K3 8 K3 9 EELOAD.EXE est un logiciel en basic (dont le source est fourni) qui permet le chargement, la programmation et la vérification d'un programme S19 dans la mémoire interne ou externe du 68HC11. Il utilise le code EEPROGIX.BOO qu'il télécharge dans le µC. PCBUG11.EXE permet la programmation, la mise au point de vos codes et le contrôle de la carte. Il nécessite des talkers d'extension .BOO Le fichier PCBUG11.MAN est le manuel de PCBUG11. ASMHC11.EXE permet l'assemblage et la génération de divers fichiers nécessaires au µC et à PCBUG11. BUZ-B600.ASC: exemple de programme située en Eeprom ($B600)qui fait clignoter une led sur le PORT-B2 et sonner un buzzer sur PORT-B3 BUZ-B600.S19 est le fichier associé à charger dans le µC. As11.exe : assembleur 68HC11, produit le fichier d'extension "S19" Asmhc11.exe : assembleur 68HC11, produit le fichier d'extension "REC" convertboot.exe : converti un fichier d'extension "S19" or "REC" vers un fichier d'extension "boo" PA0 PA1 PA2 PA3 PA4 PA5 PA6 PA7 R1 10M C11 15pF VPROG S1 MODA MODB (Bootloader) compatible avec le chargeur Eeload. R9 1 2 3 4 8 7 6 5 R10 1.5K 100 SW DIP-4 L2 LED3MM Les macro-commandes (extension *.MCR) permettent la simplification des commandes en apportant des fonctions prédéfinies directement accessibles. VCC VCC R5 4.7K CONNEC TEUR D 'E XTENSION VPROG A8 A9 A10 A11 A12 A13 A14 A15 42 41 40 39 38 37 36 35 XIRQ IRQ XIRQ Mise en route 9 10 11 12 13 14 15 16 PD0 PD1 PD2 PD3 PD4 PD5 PD0.RX PD1.TX R4 4.7K AD0 AD1 AD2 AD3 AD4 AD5 AD6 AD7 IRQ 20 21 22 23 24 25 18 19 PC0/AD 0 PC1/AD 1 PC2/AD 2 PC3/AD 3 PC4/AD 4 PC5/AD 5 PC6/AD 6 PC7/AD 7 PE0/AN0 PE1/AN1 PE2/AN2 PE3/AN3 PE4/AN4 PE5/AN5 PE6/AN6 PE7/AN7 TC3/PA0 TC2/PA1 TC1/PA2 OC5/TC4/PA3 OC4/PA4 OC3/PA5 OC2/PA6 PAI/OC1/PA7 PB0/A8 PB1/A9 PB2/A10 PB3/A11 PB4/A12 PB5/A13 PB6/A14 PB7/A15 PD0/RXD PD1/TXD PD2/MIS O PD3/MOSI PD4/SC K PD5/SS LIR/MODE A VSTBY/MODE B RESET E VRH VRL XIRQ IRQ STRB/RW STRA/AS 43 45 47 49 44 46 48 50 PE0 PE1 PE2 PE3 PE4 PE5 PE6 PE7 34 33 32 31 30 29 28 27 PA0 PA1 PA2 PA3 PA4 PA5 PA6 PA7 3 2 MODA MODB 17 RST VCC R2 100K 1 C3 100nF RST ENB C8 100nF 6 STRB 4 STRA STRA Test de la liaison série: Enlever le 68HC11, court-circuiter TXP et RXP sur le connecteur JP2. Avant de lancer le logiciel LIRECOM.EXE (fourni), configurer le port série utilisé dans le fichier "Lire-Com.CFG" grâce à un éditeur de texte type EDIT.COM. Vérifier à l'écran, que tout caractère tapé sur le clavier est envoyé sur la liaison série et est retourné par la carte en ECHO. Ceci valide tout le circuit de dialogue passant PD0 PD1 PD2 PD3 PD4 PD5 V1.02 CON-HC11 VCC VCC R8 17 U3 AD0 AD1 AD2 AD3 AD4 AD5 AD6 AD7 A12 A13 A14 A15 A11 MODA IRQ RST ENB STRA STRB 38 37 36 35 33 32 31 30 6 5 4 3 1 12 23 34 44 43 28 39 41 42 40 AD0 AD1 AD2 AD3 AD4 AD5 AD6 AD7 A12 A13 A14 A15 NC NC NC NC CS MODE IRQ RST E AS R/W VDD Mettre hors tension la valise, insérer la carte, sans les circuits intégrés, dans l'emplacement sur la carte ER121 en prenant garde au positionnement correct des connecteurs. Mettre sous tension la carte ER121, puis la carte HC11 par S1, et vérifier les tensions d'alimentation 5V et 12V sur les points tests PT1 (12.5V) et VCC(5V). La led L1 s'illumine, ainsi que la led L2 alimentée par R4, si on bascule le mini-dip 1 de S2 qui applique la tension de programmation au µC. Si tout est correct, vous pouvez mettre sur arrêt les deux interrupteurs, insérer un µC (52 pins compatible 68HC11E1,68HC711E9 …), pour réaliser les tests qui suivent, ces tests ne sont pas un cours sur la programmation, mais plutôt un exemple de prise de contrôle du matériel. Raccorder le PC à la prise DB9 de la carte ER121 par un cordon série classique, mettre sous tension la carte ER121 et celle du HC11. PE0 PE1 PE2 PE3 PE4 PE5 PE6 PE7 PD0 PD1 PD2 PD3 PD4 PD5 STRB U2 68HC711E9 Vérifier toujours les soudures ainsi que les possibles court-circuit réalisés malencontreusement. PC0 PC1 PC2 PC3 PC4 PC5 PC6 PC7 PE0 PE1 PE2 PE3 PE4 PE5 PE6 PE7 VCC 52 51 PB0 PB1 PB2 PB3 PB4 PB5 PB6 PB7 AD0 AD1 AD2 AD3 AD4 AD5 AD6 AD7 RST MINIBP ENB 5 BP_RST 2 PA0 PA1 PA2 PA3 PA4 PA5 PA6 PA7 A8 A9 A10 A11 A12 A13 A14 A15 8 VPP R3 4.7K XTAL VCC R6 4.7K 7 VCC 8MHZ Q1 EXTAL ERMES121HC11 C12 15pF PB0 PB1 PB2 PB3 PB4 PB5 PB6 PB7 STRA STRB PC0 PC1 PC2 PC3 PC4 PC5 PC6 PC7 IOTEST VSS 27 26 25 24 22 21 20 19 HB0 HB1 HB2 HB3 HB4 HB5 HB6 HB7 7 18 STA STB 8 9 10 11 13 14 15 16 HC0 HC1 HC2 HC3 HC4 HC5 HC6 HC7 2 29 HB0 HB1 HB2 HB3 HB4 HB5 HB6 HB7 U6A 1 2 3 3 18 4 17 7 14 8 13 STRA 11 74HC00 U6D STRB 12 D0 D1 D2 D3 D4 D5 D6 D7 Q0 Q1 Q2 Q3 Q4 Q5 Q6 Q7 CS OE 11 STA STB HC0 HC1 HC2 HC3 HC4 HC5 HC6 HC7 A14 A15 AD0 AD1 AD2 AD3 AD4 AD5 AD6 AD7 U4 13 74HC373 2 19 5 16 6 15 9 12 1 A0 A1 A2 A3 A4 A5 A6 A7 A8 A9 A10 A11 A12 A13 74HC00 U6B 20 22 27 1 4 6 ENB 10 9 8 7 6 5 4 3 25 24 21 23 2 26 5 VCC 74HC00 A0 A1 A2 A3 A4 A5 A6 A7 A8 A9 A10 A11 A12 A13 D0 D1 D2 D3 D4 D5 D6 D7 11 12 13 15 16 17 18 19 AD0 AD1 AD2 AD3 AD4 AD5 AD6 AD7 AD0 AD1 AD2 AD3 AD4 AD5 AD6 AD7 1 2 3 4 5 6 7 8 9 SIL 10K_8 CE OE PGM VPP 2864A U6C 9 8 10 74HC 00 U5 68HC24 par l'interface RS232 de la valise. Il est fortement conseiller (obligatoire) d'utiliser un extracteur de PLCC pour retirer le µC du support PLCC, sinon celui-ci ne résistera pas longtemps aux manipulations. Les deux 2 mini interrupteurs (3 et 4 de S2) correspondent au pin MODA et MODB du µC. Configurer le mini-dip S2 comme suit: ON OFF 1 X MODB 2 X MODA 3 NC 4 X VPP Les modes de fonctionnement du 68HC11 sont résumés dans le tableau suivant : MODB 1 1 0 0 MODA 0 1 0 1 Mode sélectionné Single Chip (Mode 0) Expanded multiplexed (Mode 1) Spécial bootstrap Spécial test La carte peut fonctionner en mode Single Chip avec le 68HC711E9 ou le contenu du programme est situé dans le µC et tous les ports sont utilisables par l'application, c'est le mode le plus simple et le plus économique en terme de composants. ERMES121HC11 On peut aussi sélectionner le mode "Expanded" où le programme est situé dans une mémoire externe que gère le µC, pour cela une partie de ses ports d'entrée/sortie (PORTB et PORTC) est mobilisée pour réaliser un bus d'adresse et de données. Motorola a prévu une compensation grâce à l'utilisation du 68HC24 qui va restituer les ports indisponibles. Toutefois il faudra décoder une partie des adresses affectées à la mémoire externe par une logique externe U6 et multiplexer le bus d'adresse par U3. L'avantage de ce mode est l'utilisation d'une mémoire EEPROM plus facile à programmer, mais surtout la sectorisation des adresses mémoires autorisera l'emploi de circuit spécifique comme les ACIA, PIA, RAM et autres interfaces avec lesquelles le dialogue sera plus aisé grâce à l'emploi du bus adresses et données. En fait, on retrouve ici la structure d'un vrai micro ordinateur. PCBUG11 (Ver3.42) de MOTOROLA et d'autres logiciels nécessaires sont fournis gracieusement sur le CDROM du KIT, on peut les trouver sur le site Motorola ou PE MICRO Utilisation du logiciel : Le logiciel "PCBUG11" permet la mise au point d'un programme en utilisant le mode bootstrap. Lors du Reset, la liaison série du µC est configurée à 9600 bps et une petite routine de dialogue située en ROM du µC est activée et permet le chargement de quelques octets dans la RAM (adresse 00) du µC depuis le port série du PC. Le logiciel PCBUG11 charge alors un petit programme appelé TALKER (192 octets) qui permet le dialogue entre le µC et le PC et l'exécution des commandes de PCBUG. Il permet de mettre votre programme en EEPROM ($B600-$B7FF) afin que votre programme puisse être autonome (et rester en mémoire après un RESET ou une mise hors tension). Pour DEBUGGER (mettre au point) vous devez être en Mode Bootstrap, lancer votre programme, en mode pas à pas et mettre des points d'arrêts. Pour les points d'arrêts logiciels, le Talker devra être en EEPROM et votre programme en RAM. Test de la carte avec un 68HC711E9: - Chargement d'un programme en EEPROM. L'Eeprom du 68HC711E9 est située en $B600 et L'Eprom est située en $D000. - Passer en mode BOOSTRAP en mettant les minidip 3&4 de S1 sur 0 - Lancer le fichier bat, PCB-E-1.BAT qui active la commande PCBUG11 -E PORT=1 pour un µC=68HC711E9 et l'utilisation du port COM1 ou lancer le logiciel PCBUG11 pour définir d'autres paramètres. Si un problème apparaît lors de l'exécution de PCBUG11, vérifier le port série utilisé. Vous pouvez pour cela lancer le programme TESTCOM1 ou TESTCOM2 pour vérifier l'état du PORT. La zone supérieure de l'écran affiche le résultat de vos commandes, la bande centrale affiche le contenu des registres du µC, la zone inférieure est réservée à la saisie des commandes, on trouve aussi en bas à droite le type de processeur choisi ainsi que le mode de fonctionnement actuel de PCBUG11 (State: Run, Stop ou Trace). Pour quitter PCBUG11et retourner au système, taper: QUIT + Y ( Fig. 2 ) ERMES121HC11 ( Fig. 2 ) Remarque: Trois commandes importantes: - RM: Modification des registres RS: valeur des registres MM Adresse -> permet la modification d'une adresse, par exemple mm $1004 permet le changement d'état du PORTB que l'on peut visualiser sur une led. - Pour charger une macro-commande de programmation LOADM CLS-B600.MCRle µC indique le chargement OK Le µC vous indique que vous disposez alors de 3 macro, PROG, BLANK-B600, BLANK-D000 Pour programmer le fichier fourni BUZ-B600.S19, taper: PROG BUZ-B600.S19. Suivez les indications à l'écran, vous pouvez vérifier la virginité ou la programmation de l'EEPROM en tapant : MD $B600 $B700 Vous pouvez changer la valeur des registres avec RM +Enter - Lancer le programme avec G $B600 et voir le fonctionnement du programme de test sur les Pins du portA qui vont osciller. Une fois le logiciel chargé, vous pouvez soit: ERMES121HC11 - Positionner les cavaliers MODA et MODB dans le mode désiré et effectuer un RESET - soit utiliser le logiciel PCBUG11 pour la mise au point (taper HELP pour obtenir l'aide sur les différentes commandes). Pour programmer l'Eprom interne du 68HC711E9: ATTENTION: Pour programmer l'Eeprom interne ($B600-$B7FF) l'alimentation normale suffit, mais pour programmer l'Eprom interne du 68HC711E9 ($D000-$FFFF), il faut une tension d'alimentation supérieure à 14Volts au niveau de la sortie du transformateur, pour avoir en final une tension de programmation VPP de 12.6V au niveau de la carte. Cependant en fonctionnement normal cette tension est un peu élevée pour le refroidisseur du LM7805 et on peut observer un échauffement important. Aussi est t'il souhaitable de diminuer la tension d'alimentation de la valise une fois la programmation terminer. a) Exemple du chargement et exécution du programme BUZ-B600.ASC en Eprom interne - Taper ASMHC11 BUZ-B600.ASC pour générer le code - Taper PCB-E-1.bat ou PCBUG11 -E PORT=1 - Charger la macro: LOADM CLS-B600 - Effacer l'Eeprom grâce à la macro l'eeprom, taper CLSB600 et vérifier l'effacement MD $B600 - Charger le code: LOADM BUZ-B600.S19 - Relier par du fil téléphone rigide (sans souder, ce n'est pas nécessaire) le Port-B2 vers une des leds 1 à 8 de la valise et relier Port-B3 à BZ1 de JP1 et BZ2 à 0V - Exécuter le code: G $B600, la led clignote et le buzzer sonne - Taper s+Enter pour stopper le programme Remarque: Vous pouvez charger ce programme en RAM en $100 par exemple en tapant LOADS BUZ-B600.S19 $100 b) Exemple du chargement et exécution du programme BUZ-C000.ASC en Eeprom externe ($C000-$FFFF) - Taper ASMHC11 BUZ-B600.ASC pour générer le code BUZ-B600.S19 - Taper EELOAD1 - Choix: COM1 - Choix: ECHO=Y - Taper X pour eXternal EEPROM Filename= BUZ-C000.S19 Le programme indique "Download Complete" - Relancer EELOAD.EXE et sélectionner l'option V pour Verify Le logiciel indique 0 Erreur après le test Le chargement s'effectue - Passer en mode étendue en basculant MODA&MODB sur 1 - Relier la led (1 à 8) sur PD2 - Relier BZ1 à PD3 et BZ2 à 0V - Faire un RESET par BP_RST Le programme se déroule, led clignotante et buzzer sonne. On voit ici que c'est le vecteur RESET qui a lancé le programme. Pour arrêter passer MODA&MODB =0 faire un RESET et lancer PCBUG11 Autre procédure: - Taper le code source avec un éditeur type EDIT.COM fourni avec Windows. - Lancer le programme ASMHC11.EXE qui compile le programme et génère les différents fichiers nécessaires à PCBUG11.EXE - Vérifier qu'il y n'y à pas d'erreur dans le programme XXXX.LST avec EDIT.COM - Lancer le batch PCB-E-1.BAT qui réalise la commande PCBUG11 -A PORT=1 si le port série utilisé est COM1 - Taper LOADM 711E9 pour charger des macrocommandes qui facilitent la programmation et le test du 711E9. Le programme indique qu'il charge 2 Macros Loading MACRO PROG Loading MACRO BLANK - Taper PROG File.S19 et suivre les instructions de la macro commande. Mettre INTER1 sur ON, LED VPP allumée Taper sur une touche Le système indique: "MEMORIES VERIFIES CORRECTLY" "INTER 1 sur OFF" FIN PROG Faire ACTION1 ou 2 suivant le mode choisi. ACTION1: En mode BOOT, par PCBUG11, taper G $AdresseDébut et vérifier le fonctionnement du programme ACTION2: En mode single chip (mode autonome) - Mettre alors les mini-interrupteurs 3&4 sur single chip - Mettre sous tension - Vérifier le fonctionnement du programme Vous pouvez effacer la mémoire EEPROM en tapant EEPROM ERASE BULK $B600 et vérifier avec la macro BLANK-B600 ou en tapant MD $B600 $B700 Chargement d'un programme pour un 68HC11E1 et la carte reliée au port série COM1 de l'ordinateur. Le 68HC11E1 a 512 octets d' Eeprom et 512 de Ram. On charge le programme en mémoire EEPROM à partir de l'adresse $B600, le registre de contrôle étant situé en $1000-$103F. - Faire un RESET de la carte cible en mode bootstrap. (MODA=MODB=0) (inter 3&4 de S1 vers la gauche) ERMES121HC11 - Puis lancer le fichier batch qui correspond à la commande PCBUG11 -A port=1 PCB-A-1.BAT Ou - Lancer PCBUG11 et répondre aux questions. Remarque: le logiciel doit s'exécuter sans messages d'erreurs. Si une erreur apparaît, il y a plusieurs possibilités: Vérifier que la led située sur la carte HC11 clignote et signale le dialogue µC/PC avec un port série actif et un cordon série valide. Autre possibilité, soit le 68HC11 est mal configuré (mode bootstrap non activé), soit PCBUG11 ne supporte pas un ordinateur de plus de 200MHz avec génération de l'erreur "runtime error" - il faut utiliser dans ce cas le patch adéquat de Motorola). L'exemple proposé va consister au chargement d'un petit programme de test des ports, que vous pourrez modifier au fur et à mesure, pour cela: - Taper MS $1035 0 - Taper EEPROM 0 - Taper EEPROM $B600 $B7FF pour signaler que l'EEPROM est située de $B600 à $B7FF. - Taper EEPROM ERASE BULK pour effacer l'EEPROM - Vérifier que l'opération a été réussie en tapant MD $B600 $B7FF : tous les octets sont à $FF. Remarque: Il existe, on le verra, une macro-commande qui fait cela automatiquement: Voir le fichier CLS-B600.MCR avec un éditeur de texte comme EDIT.COM Charger ce fichier par LOADM CLS-B600.MCR Et activer par CLSB600 qui défini et efface la mémoire Eeprom d'autre part Charger le programme en Eeprom. -Taper: Loads Buz-B600.S19 - Vérifier le code: DASM $B600 $B63A - Relier par du fil téléphone rigide (sans souder, ce n'est pas nécessaire) le Port-B2 vers une des leds 1 à 8 de la valise et relier Port-B3 à BZ1 de JP1 et BZ2 à 0V - Exécuter le code: G $B600 La led clignote et le buzzer sonne - Taper s+Enter pour stopper le programme. Lorsqu'on stoppe le programme, le 68HC11 relance le TALKER Vous pouvez écrire et modifier votre programme avec un éditeur de texte tel que EDIT ou NOTEPAD. Vous devez ensuite compiler votre programme, en tapant: ASMHC11 Programme.ASC ce qui génère alors les fichiers nécessaires au µC: Remarque importante : Si la programmation de la mémoire EEPROM échoue, soit sa position est mal définie (adresses $B600 à $B7FF) soit le registre de protection en écriture BPROT (présent sur les 68HC11) est toujours configuré pour protéger l'EEPROM. Dans ce cas, il faut, après avoir lancé PCBUG11 modifier le registre BPROT situé en $1035 en tapant: MM $1035 $10 Vous pouvez connaître la définition actuelle de la mémoire en tapant: EEPROM -> donne la situation de l'Eeprom EPROM -> donne la situation de l'Eprom Si l'EEPROM n'est pas présente dans la cartographie mémoire, c'est que le registre "CONFIG REGISTER" est mal initialisé, le bit concerné est EEON et permet d'activer ou non l'EEPROM. ce registre se programme comme une case de mémoire EEPROM. Par ailleurs, 3 types de fichiers sont utilisés. - Fichier Source avec l'extension ASC - Fichier Listing avec l'extension LST - Fichier Motorola avec l'extension S19 Programmation de l' EEPROM d'un 68HC11A1 ou E1 sous PCBUG11: - Lancer PCBUG11 - Vérifier le contrôle de la carte par le PC en tapant MD $100 $1FF pour visualiser le contenu de la zone indiquée. Pour programmer l'EEPROM, taper : - MS $1035 00 afin d'autoriser la programmation de l' EEPROM. - EEPROM 0 - EEPROM $B600 $B7FF fixe la position de l' EEPROM. - EEPROM ERASE BULK Efface toute l'EEPROM - LOADS B600.S19 Il faut un temps d'attente et PCBUG11 affiche : Total bytes loaded : $002C Total bytes programmed : $002C - Vérifier la programmation avec MD $B600 $B630 ou VERF NomDuFichier.S19: pour contrôler le chargement du programme. Remarque: Si un problème de programmation apparaît sur un 68HC11 plus ancien, vous pouvez augmenter le délai de programmation à 20mS, au lieu de 10mS, avec la commande EEPROM DELAY 20. Programmation en mode BOOTSTRAP: Le MC68HC811E2 est un bon µC pour la mise au point de petit programme:car il a 2ko d'Eeprom (située en $F800) et 256 octets de RAM. - Lancer PCBUG11.EXE en tapant PCB-A-1.bat - Loadm 811E2.MCR charge la macro-commande de PROG pour le 811E2 - Taper PROG BUZ-F800.S19 pour définir, effacer et programmer l'Eeprom - Taper MD $FFF0 pour voir le vecteur RESET défini en $F800 - Mettre en mode Single Chip: ModA=0 ModB=1 - Faire un RESET - Visualiser le clignotement du PORT-B2 avec une Led de la valise Passer en mode étendu depuis le mode bootstrap, avec PCBUG11: Liste des composants ERMES121HC11 - Taper: MS $1035 $00 enlève la protection BPROT. - Taper: EEPROM 0 - Taper: EEPROM DELAY 20 - Taper: EEPROM $FE00 $FFFF - Taper: EEPROM ERASE BULK $FE00 efface l'EEPROM Interne du 68HC11 - Taper: MOVE $BFC0 $BFFF $FFC0 Recopie les vecteurs d'interruptions de la BootRom dans l'Eprom Interne. - Taper: MS $103C $26 Passe en mode étendue de façon logicielle. - Taper: BF $8000 $9000 $FF Efface l'EEPROM Tout ces ordres peuvent être mis dans un macro commande, qui sera chargée avec la commande: LOADM TEST-EXT.Mcr et activer avec la commande TRANSFERT Maintenant faire charger le programme avec la commande LOADS nomfic.s19 Information: Le connecteur AFF-S situé sur la carte HC11 permet la connexion facile d'un afficheur avec liaison série intégré disponible en Kit et permettant grâce à des commandes très simples l'affichage de message sur un afficheur 2X16 caractères ou 1X8 caractères. Bon développement... Désignation Qté Repère Résistance 5% 10 MOHMS Résistance 5¨% 100KR Résistance 5% 4,7KR Résistance 5% 1,5KR Résistance 5% 470R Réseau SIL 10K R 8 pattes+1 Résistance Ajus 4.7K Diode 1N4148 LED3mm LED3mm Condensateur milfe 100nF Condensateur céra 15pF Condensateur Chim 100µF/25V Radial Quartz 8Mhz Régulateur TO220 LM7812 Dip Switch 8 broches Circuit intégré 74HC373 Circuit intégré 2864A Circuit intégré 74HC00 Circuit intégré 68HC24 Support PLCC 52 broches Support PLCC 44 broches Support tulipes 20 broches Support tulipes 28 broches Support tulipes 14 broches Accessoires : Connecteurs 2 x 32 broches Bouton Poussoir 4 broches Interrupteur glissiè 6 broches Connecteur 3 contacts 1 1 4 1 2 1 1 1 3 8 2 2 1 1 1 1 1 1 1 1 1 1 1 1 R1 R2 R3, R4, R5, R6 R10 R7, R11 R8 AJ1 D8 L1, L2, L3 C3, C4, C5, C6, C7, C8, C9, C13 C11, C12 C1, C2 Q1 U1 S1 U3 U4 U6 U5 ( OPTION MODE ÉTENDU ) U2 U5 U3 U4 U6 2 1 1 1 JP1, JP2 BP_RST S2 AFF-S Observation Réf : CI68HC24 Garantie : Les Kits ERMES ont été élaborés et testés de façon rigoureuse. Un soin tout particulier est apporté dans le choix des composants et le circuit imprimé est d’une qualité irréprochable. Si toutefois vous deviez rencontrer un problème lors de la réalisation, veuillez avant toute chose vérifier l’implantation des composants (sens et valeur), les soudures, le câblage. Vérifier de plus l’alimentation des circuits intégrés. Si le phénomène persiste, notre service technique est à votre disposition pour vous aider. Envoyer nous un courrier, accompagné d’une enveloppe timbrée pour la réponse (délai réponse env. Une semaine), en nous donnant le maximum d’informations. Nous garantissons le bon fonctionnement des kits ERMES. En cas de problème ramenez le kit chez votre distributeur. La réparation sera effectuée gratuitement, sauf en cas de mauvais assemblage évident. Nous déclinons toute responsabilité pour tout dommage causé par l’utilisation ou la défectuosité d’un kit ERMES.