CLS INPUT "Nom du fichier … cr‚er :"; nom$ ' Saisie du nom de fichier nom$ = nom$ + ".epr" ' Extension pour fichier binaire. OPEN nom$ FOR BINARY AS #1 ' Cr‚ation du fichier SEEK 1, 0 ' D‚but du fichier FOR t = 1 TO 33 ' Lecture des datas d'entˆte, READ oct ' pour initialiser le module put$ #1,chr$(oct) ' d'affichage en: NEXT ' 4 bits sans curseur. saisie: INPUT "Phrase pour terminer :"; a$ ' Entr‚e phrase N IF LEN(a$) > 16 THEN BEEP: GOTO saisie ' Si phrase trop longue=>boucle IF a$ = "x" OR a$ = "X" THEN GOTO fin ' Si x=> fin diff = INT((16 - LEN(a$)) / 2) ' Calcule le nombre d'espaces ' … placer au d‚but, pour centrer ' la phrase. nbcar = diff + LEN(a$) ' Calcule le nb.total de caractŠres. carpos = 1 ' Raz le nb. de caractŠres envoy‚s. FOR t = 1 TO diff ' Envoie les espaces de centrage. car = 32 ' Code Ascii de l'espace. GOSUB calhex ' D‚coupe en quartets, et envoie NEXT t ' les signaux de commande. FOR t = 1 TO LEN(a$) ' Prend les caractŠres de la phrase b$ = MID$(a$, t, 1) ' un par un, les affiche, car = ASC(b$) ' GOSUB calhex ' NEXT ' Ici fin=>tempo oct = 0 ' => cls GOSUB ecrit ' oct = 80 ' GOSUB ecrit ' oct = 80 ' GOSUB ecrit ' oct = 64 ' GOSUB ecrit ' oct = 80 ' GOSUB ecrit ' oct = 81 ' GOSUB ecrit ' oct = 65 ' GOSUB ecrit ' ' GOTO saisie ' Phrase suivante. END ' Fin. calhex: ' Sous programme d'envoie ' d'un caractŠre: oct = 96 ' Gestion du signal E GOSUB ecrit ' Gestion du signal RS oct = 112 ' D‚coupage du caractŠre GOSUB ecrit ' en deux quartets. pfo1 = car AND 240 ' pfo$ = HEX$(pfo1) ' pfo = VAL(LEFT$(pfo$, 1)) ' oct = pfo + 112 ' GOSUB ecrit ' oct = pfo + 96 ' GOSUB ecrit ' oct = pfo + 112 ' GOSUB ecrit ' pfa = car AND 15 ' oct = pfa + 112 ' GOSUB ecrit ' oct = pfa + 96 ' GOSUB ecrit ' carpos = carpos + 1 ' IF carpos <> 9 THEN RETURN ' Si 9 Šme caractŠre=> oct = 80 ' envoie la s‚quence de GOSUB ecrit ' passage … la ligne. oct = 92 ' GOSUB ecrit ' oct = 76 ' GOSUB ecrit ' oct = 92 ' GOSUB ecrit ' oct = 80 ' GOSUB ecrit ' oct = 64 ' GOSUB ecrit ' GOSUB ecrit ' RETURN ' fin: ' Ici fin des phrases=> oct = 208 ' fait passer le bit 7 … 1 GOSUB ecrit ' pour faire coller le relais CLOSE : BEEP: END ' et tout remettre … z‚ro, ' fermeture du fichier. ecrit: ' Range l'octet dans le fichier ' put$ #1,chr$(oct) ' RETURN ' ' Octets d'initialisation envoy‚s au module LCD, pour le configurer en mode ' 4 bits, sans curseur. DATA 80,80,80,80,80,80,80,82,66,80,80,64,80,81,65,80,80,64,80,82,66,80,80,64 DATA 80,92,76,80,80,64,80,86,70