La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

Janvier 2008JF VIENNEOUTIL DE DÉVELOPPEMENT LOGICIEL Slide 1 OUTIL DE DÉVELOPPEMENT LOGICIEL.

Présentations similaires


Présentation au sujet: "Janvier 2008JF VIENNEOUTIL DE DÉVELOPPEMENT LOGICIEL Slide 1 OUTIL DE DÉVELOPPEMENT LOGICIEL."— Transcription de la présentation:

1 Janvier 2008JF VIENNEOUTIL DE DÉVELOPPEMENT LOGICIEL Slide 1 OUTIL DE DÉVELOPPEMENT LOGICIEL

2 Janvier 2008JF VIENNEOUTIL DE DÉVELOPPEMENT LOGICIEL Slide 2 L'ASSEMBLEUR L'ÉDITEUR DE LIENS LE "LOCATE" BREF, L'ENSEMBLE DES LOGICIELS QUI CONSTITUENT L'OUTIL DE DÉVELOPPEMENT LOGICIEL A ÉTÉ ÉCRIT PAR : Patrick DUCROT UNE DOCUMENTATION D'UNE DIZAINE DE PAGES EST DISPONIBLE, EN ANNEXE, À LA FIN DE VOTRE POLYCOPIÉ.

3 Janvier 2008JF VIENNEOUTIL DE DÉVELOPPEMENT LOGICIEL Slide 3 MUX SERVEUR NOVELL SALLE PC SOUS DOS IMPRIMANTE SALLE PC SOUS DOS IMPRIMANTE ETHERNET 100 Mbits/s

4 Janvier 2008JF VIENNEOUTIL DE DÉVELOPPEMENT LOGICIEL Slide 4 FICHIER SOURCE - NOM DU FICHIER : Max. 9 caractères suivis de l'extension.src Exemple : ex5.src - UNE LIGNE COMPORTE AU MAXIMUM QUATRE CHAMPS : [Étiquette: ]OpérateurOpérande(s)[ ;Commentaires] Pour l'assembleur, si le premier champ se termine par : il s'agit d'une étiquette => etiq:mova,bOK etiqmova,bFAUX => l'assembleur envoie le message "etiq instruction non reconnue" etiq :mova,b FAUX => même message d'erreur.

5 Janvier 2008JF VIENNEOUTIL DE DÉVELOPPEMENT LOGICIEL Slide 5 FICHIER SOURCE - NOM DU FICHIER : Max. 9 caractères suivis de l'extension.src Exemple : ex5.src - UNE LIGNE COMPORTE AU MAXIMUM QUATRE CHAMPS : [Étiquette: ]OpérateurOpérande(s)[ ;Commentaires] Tout ce qui figure après le point virgule, jusqu'à la fin de la ligne, est considéré comme du commentaire. Exemples de ligne : init:movb,a;Le code de la touche est dans le registre B. ;Traitement pour la touche GO it75: inxh nop

6 Janvier 2008JF VIENNEOUTIL DE DÉVELOPPEMENT LOGICIEL Slide 6 ÉTIQUETTE - UNE ÉTIQUETTE (ON DIT AUSSI LABEL OU RÉFÉRENCE) CORRESPOND À UNE ADRESSE. it65:nop pushpsw …. lxih,it65 Pour mettre dans HL l'adresse correspondant à it65 loop:nop cpi12 …. jmploop

7 Janvier 2008JF VIENNEOUTIL DE DÉVELOPPEMENT LOGICIEL Slide 7 VALEURS NUMÉRIQUES (ADRESSES OU DONNÉES) UN NOMBRE HEXADÉCIMAL DOIT OBLIGATOIREMENT COMMENCER PAR UN CHIFFRE COMPRIS ENTRE 0 ET 9 ET SE TERMINER PAR LE SUFFIXE H. cpi10hmvia,0ffh mvia,ffh FAUX! UN NOMBRE DÉCIMAL EST COMPOSÉ DE CHIFFRES COMPRIS ENTRE 0 ET 9 ET N'A PAS DE SUFFIXE. lxih,1000mvim,150 UN NOMBRE BINAIRE EST COMPOSÉ DE 0 ET 1 ET SE TERMINE PAR LE SUFFIXE B. ani bmvia, b

8 Janvier 2008JF VIENNEOUTIL DE DÉVELOPPEMENT LOGICIEL Slide 8 LA DIRECTIVE EQU nomequexpression CETTE DIRECTIVE NE GÉNÈRE PAS DE CODE. À UTILISER DE PRÉFÉRENCE AU DÉBUT DU FICHIER SOURCE. RDKBDequ02E7h GOequ12h;Code de la touche GO CNT79equ19h;Registre de contrôle du 8279 MAXequ100 callRDKBD cpiGO outCNT79 mvia,MAX À CONSOMMER SANS MODÉRATION !

9 Janvier 2008JF VIENNEOUTIL DE DÉVELOPPEMENT LOGICIEL Slide 9 LA DIRECTIVE DB (DEFINE BYTE) CETTE DIRECTIVE PERMET D'INITIALISER UNE ZONE MÉMOIRE AVEC DES OCTETS (DE 1 À 50). UTILISATION TYPIQUE : INITIALISATION DE CONSTANTES 8 BITS.. table8:db15 12h h 0ffh 15 0E 12 EA 46 FF table8

10 Janvier 2008JF VIENNEOUTIL DE DÉVELOPPEMENT LOGICIEL Slide 10 LA DIRECTIVE DW (DEFINE WORD) CETTE DIRECTIVE PERMET D'INITIALISER UNE ZONE MÉMOIRE AVEC DES MOTS DE 16 BITS (DE 1 À 25) EN RESPECTANT L'ORDRE INTEL. UTILISATION TYPIQUE : INITIALISATION DE CONSTANTES 16 BITS.. table16:dw1234h abcdh E 16 CD table16 AB

11 Janvier 2008JF VIENNEOUTIL DE DÉVELOPPEMENT LOGICIEL Slide 11 LA DIRECTIVE DS (DEFINE STORAGE) CETTE DIRECTIVE PERMET DE RÉSERVER DE LA MÉMOIRE POUR DES OCTETS NON INITIALISÉS. UTILISATION TYPIQUE : RÉSERVATION DE MÉMOIRE POUR LES VARIABLES. compteur:ds2 ;Réserver deux octets pour le compteur tab_dst:ds20 ;Réserver 20 octets pour le tableau destination lxih,0 shldcompteur; Compteur=0 lxib,tab_dst; BC pointe le tableau destination

12 Janvier 2008JF VIENNEOUTIL DE DÉVELOPPEMENT LOGICIEL Slide 12 ASSEMBLEUR RELOGEABLE UN ASSEMBLEUR RELOGEABLE EST UN ASSEMBLEUR POUR LEQUEL ON NE FAIT AUCUNE HYPOTHÈSE SUR L'ADRESSE DÉFINITIVE D'IMPLANTATION DU CODE ET DES VARIABLES. ON NE SUPPOSE RIEN SUR L'ADRESSE DE start. ON NE SUPPOSE RIEN SUR L'ADRESSE DE compteur.

13 Janvier 2008JF VIENNEOUTIL DE DÉVELOPPEMENT LOGICIEL Slide 13 DEUX TYPES DE MÉMOIRE DANS TOUT APPAREIL EMBARQUÉ, IL Y A : - DE LA MÉMOIRE NON VOLATILE (ROM, FLASH…) POUR LE PROGRAMME ET LES CONSTANTES. - DE LA MÉMOIRE VOLATILE (RAM) POUR LES VARIABLES ET LA PILE. ROM, FLASH … RAM μPμP DEUX ESPACES MÉMOIRE DIFFÉRENTS NB : IL Y A TOUJOURS DE LA MÉMOIRE NON VOLATILE À L'ADRESSE DU RESET

14 Janvier 2008JF VIENNEOUTIL DE DÉVELOPPEMENT LOGICIEL Slide 14 CAS DE LA MAQUETTE SDK85 - COMPTE TENU DU CARACTÈRE PÉDAGOGIQUE DE LA MAQUETTE, VOTRE PROGRAMME NE PEUT ÊTRE QU'EN RAM ROM (MONITEUR) 07FFH 2000H RAM 20FFH 2800H RAM 28FFH 8000H RAM 2Ko TÉLÉCHARGEABLE 87FFH CET ESPACE MÉMOIRE CONVIENT PARFAITEMENT POUR LES VARIABLES. compteur DEVRA CORRESPONDRE À L'ADRESSE 2800H. LE SYSTÈME DE DÉVELOPPEMENT LOGICIEL VOUS PERMET DE TÉLÉCHARGER VOTRE CODE ET VOS CONSTANTES UNIQUEMENT DANS CET ESPACE MÉMOIRE. start DEVRA CORRESPONDRE À L'ADRESSE 8000H. CET ESPACE MÉMOIRE CONVIENT PARFAITEMENT POUR LA PILE QUI PEUT AINSI S'ÉTENDRE DE 20C2H À 2000H. CODE VARIABLES PILE

15 Janvier 2008JF VIENNEOUTIL DE DÉVELOPPEMENT LOGICIEL Slide 15 LES DIRECTIVES CSEG ET DSEG -1- LORSQUE VOUS ÉCRIVEZ VOTRE SOURCE LE PROGRAMME DOIT POUVOIR ÊTRE UTILISABLE QUELQUE SOIT L'ADRESSE D'IMPLANTATION DU CODE ET DES VARIABLES. -2- EN CONSÉQUENCE, À L'ISSUE DE L'ASSEMBLAGE, LES ADRESSES DU CODE ET DES VARIABLES NE DOIVENT PAS ÊTRE FIGÉES. C'EST EN CE SENS QUE L'ASSEMBLEUR DOIT ÊTRE RELOGEABLE. COMME NOUS LE VERRONS BIENTÔT, CECI PREND TOUTE SON IMPORTANCE DANS LE CAS DE LA PROGRAMMATION MODULAIRE. -3- IL NOUS FAUT DONC, AU MOMENT OÙ NOUS ÉCRIVONS LE SOURCE DISPOSER DE DIRECTIVES PERMETTANT DE "RELOGER" ULTÉRIEUREMENT LE CODE ET LES VARIABLES. CES DEUX DIRECTIVES SONT cseg ET dseg : C COMME CODE ET D COMME DATA.

16 Janvier 2008JF VIENNEOUTIL DE DÉVELOPPEMENT LOGICIEL Slide 16 LES DIRECTIVES CSEG ET DSEG EN PROCÉDANT AINSI LES ÉTIQUETTES compteur ET start VONT TOUTES LES DEUX CORRESPONDRE À L'ADRESSE 0000 À L'ISSUE DE L'ASSEMBLAGE. MAIS LE FAIT D'AVOIR UTILISÉ LES DIRECTIVES cseg ET dseg FAIT QUE CES ADRESSES NE SONT PAS DÉFINITIVES. NB : SI ON N'UTILISE PAS CES DIRECTIVES, L'ASSEMBLEUR FONCTIONNE EN ASSEMBLEUR ABSOLU À COMPTER DE L'ADRESSE 0.

17 Janvier 2008JF VIENNEOUTIL DE DÉVELOPPEMENT LOGICIEL Slide 17 LES DIRECTIVES CSEG ET DSEG EXAMEN DU FICHIER DE LISTE GÉNÉRÉ PAR L'ASSEMBLEUR COMPTEUR EST À L'ADRESSE 0000 START EST À L'ADRESSE 0000 SIGNIFIE QU'IL S'AGIT D'UNE ADRESSE RELOGEABLE

18 Janvier 2008JF VIENNEOUTIL DE DÉVELOPPEMENT LOGICIEL Slide 18 LA PROGRAMMATION MODULAIRE ON PARLE DE PROGRAMMATION MODULAIRE LORSQUE LE LOGICIEL D'UNE APPLICATION CORRESPOND À PLUSIEURS FICHIERS SOURCES. PRENONS UN EXEMPLE POUR LEQUEL NOUS AVONS DEUX FICHIERS SOURCES : ppal.src QUI CORRESPOND AU PROGRAMME PRINCIPAL. fonc.src QUI CORRESPOND À UNE FONCTION fonc APPELÉE PAR LE PROGRAMME PRINCIPAL. ;Fichier ppal.src dseg var1:ds2 cseg start:lxisp,20c2h …. callfonc …. ;Fichier fonc.src dseg fvar:ds1 cseg fonc:…. …. ret

19 Janvier 2008JF VIENNEOUTIL DE DÉVELOPPEMENT LOGICIEL Slide 19 LA PROGRAMMATION MODULAIRE ASSEMBLAGE DU FICHIER ppal.src ;Fichier ppal.src dseg var1:ds2 cseg start:lxisp,20c2h …. callfonc …. L'ASSEMBLEUR VA GÉNÉRER L'ERREUR "FONC : ÉTIQUETTE NON RECONNUE" POUR SUPPRIMER CETTE ERREUR IL FAUT FAIRE SAVOIR À L'ASSEMBLEUR QUE CETTE ÉTIQUETTE EST DÉFINIE DANS UN AUTRE FICHIER. POUR CELA IL SUFFIT D'ÉCRIRE extrn fonc DANS LE FICHIER ppal.src extrn fonc CECI ÉTANT FAIT, L'ASSEMBLEUR NE RENCONTRE PLUS D'ERREUR ET GÉNÈRE UN FICHIER OBJET : ppal.obj COMMANDE => assemble ppal.src

20 Janvier 2008JF VIENNEOUTIL DE DÉVELOPPEMENT LOGICIEL Slide 20 LA COMMANDE assemble nomfic.src nomfic.src nomfic.objnomfic.lst assemble nomfic.src FICHIER SOURCE FICHIER DE LISTE - C'EST DANS CE FICHIER QU'APPARAISSENT LES ERREURS D'ASSEMBLAGE. - FICHIER QUE L'ON PEUT IMPRIMER LORSQU'IL N'Y A PLUS D'ERREUR À L'ASSEMBLAGE. FICHIER OBJET - À SOUMETTRE À L'ÉDITEUR DE LIENS. (Cf. SUITE DE LA PRÉSENTATION)

21 Janvier 2008JF VIENNEOUTIL DE DÉVELOPPEMENT LOGICIEL Slide 21 LA PROGRAMMATION MODULAIRE (SUITE) ;Fichier fonc.src dseg fvar:ds1 cseg fonc:…. …. ret LE FICHIER fonc.src EST ASSEMBLÉ SANS ERREUR. À L'ISSUE DE L'ASSEMBLAGE DES DEUX FICHIERS ppal.src ET fonc.src ON DISPOSE DES DEUX FICHIERS OBJET : ppal.obj ET fonc.obj IL NOUS FAUT MAINTENANT RÉUNIR LES VARIABLES ET LE CODE DES DEUX MODULES. C'EST LE RÔLE DE L'ÉDITEUR DE LIENS (LINK) : NOUS ALLONS "LINKER" LES DEUX FICHIERS OBJET ppal.obj ET fonc.obj. L'EXAMEN DES FICHIERS DE LISTE ppal.lst ET fonc.lst MONTRE QUE : var1 EST À L'ADRESSE 0000 fvar EST À L'ADRESSE 0000 start EST À L'ADRESSE 0000 fonc EST À L'ADRESSE 0000

22 Janvier 2008JF VIENNEOUTIL DE DÉVELOPPEMENT LOGICIEL Slide 22 LA PROGRAMMATION MODULAIRE (SUITE) ppal.src ppal.obj assemble ppal.src L'ÉDITEUR DE LIENS ppal.lst fonc.lst assemble fonc.src fonc.obj fonc.src link ppal.obj fonc.obj to p.lnk p.lnk ERREUR AU LINK => "FONC : REFERENCE EXTERNE NON RÉSOLUE"

23 Janvier 2008JF VIENNEOUTIL DE DÉVELOPPEMENT LOGICIEL Slide 23 LA PROGRAMMATION MODULAIRE (SUITE) LA DIRECTIVE PUBLIC POUR QU'UNE RÉFÉRENCE DÉCLARÉE extrn DANS UN MODULE PUISSE ÊTRE UTILISÉE AU LINK IL EST NÉCESSAIRE QUE CETTE RÉFÉRENCE SOIT DÉCLARÉE public DANS LE MODULE OÙ ELLE EST DÉFINIE. ;Fichier fonc.src dseg fvar:ds1 cseg fonc:…. …. ret public fonc IL N'Y A PLUS D'ERREUR AU LINK

24 Janvier 2008JF VIENNEOUTIL DE DÉVELOPPEMENT LOGICIEL Slide 24 LA PROGRAMMATION MODULAIRE (SUITE) À L'ISSUE DU LINK LA SITUATION EST LA SUIVANTE : DSEG var1 fvar CSEG 0000 start fonc IL NE RESTE PLUS QU'À FIXER L'ADRESSE DÉFINITIVE D'IMPLANTATION POUR DSEG ET CSEG

25 Janvier 2008JF VIENNEOUTIL DE DÉVELOPPEMENT LOGICIEL Slide 25 LA PROGRAMMATION MODULAIRE (SUITE) LA COMMANDE LOCATE p.lnk pp.map locate –map p.lnk code 8000h data 2800h FICHIER À VISUALISER POUR OBTENIR L'ADRESSE DÉFINITIVE DE TOUTES LES RÉFÉRENCES. FICHIER À TÉLÉCHARGER DANS LA MAQUETTE. type p.map transmit p

26 Janvier 2008JF VIENNEOUTIL DE DÉVELOPPEMENT LOGICIEL Slide 26 LA PROGRAMMATION MODULAIRE (SUITE) À L'ISSUE DU LOCATE LA SITUATION EST LA SUIVANTE : DSEG var1 fvar CSEG 8000 start fonc

27 Janvier 2008JF VIENNEOUTIL DE DÉVELOPPEMENT LOGICIEL Slide 27 EXEMPLE DE FICHIER P.MAP EXEMPLE DE FICHIER P IL S'AGIT EN FAIT D'UN FICHIER "HEX" AU FORMAT INTEL. C'EST CE FICHIER QU'IL FAUT TÉLÉCHARGER DANS LA MAQUETTE SDK85.

28 Janvier 2008JF VIENNEOUTIL DE DÉVELOPPEMENT LOGICIEL Slide 28 MAQUETTE SDK85 : TÉLÉCHARGEMENT LIAISON SÉRIE VIA UN PORT COM DU PC MAQUETTE SDK85 INTERFACE TÉLÉCHARGEMENT 3 LED DE CONTRÔLE POUR LE TÉLÉCHARGEMENT JACK > transmit p :0F C220 ……………….. : FF 16 FILS DU BUS D'ADRESSES DU FILS DU BUS DE DONNÉES DU 8085 BUS DE CONTRÔLE DU 8085 => RESET RD WR IO/M HOLD HLDA 3 FILS POUR LA COMMANDE DES LED DE CONTRÔLE. LE TÉLÉCHARGEMENT SE FAIT PAR ACCÈS DIRECT MÉMOIRE (DMA). LE HARDWARE DE LA MAQUETTE SDK85 LIMITE LE TÉLÉCHARGEMENT À L'ESPACE MÉMOIRE 8000H-FFFFH. 2 Ko DE RAM 8000H-87FFH

29 Janvier 2008JF VIENNEOUTIL DE DÉVELOPPEMENT LOGICIEL Slide 29 OUTIL DE DÉVELOPPEMENT LOGICIEL FIN


Télécharger ppt "Janvier 2008JF VIENNEOUTIL DE DÉVELOPPEMENT LOGICIEL Slide 1 OUTIL DE DÉVELOPPEMENT LOGICIEL."

Présentations similaires


Annonces Google