' ********************************************************************** ' ** Programma: LCD_AV.BAS - Versione : 1.3 - 06 Febbraio 2001 ** ' ** Compilatore : BASCOM AVR, (IDE V. 1.11.4.0, LIB V. 1.11.4.0) ** ' ** Scheda : K51-AVR ** ' ** Ditta: grifo(r) ITALIAN TECHNOLOGY ** ' ** Via Dell' Artigiano 8/6 40016 San Giorgio di Piano (BO) ** ' ** Tel.+39 051 892 052 Fax +39 051 893 661 ** ' ** http://www.grifo.com http://www.grifo.it ** ' ** sales@grifo.it tech@grifo.it grifo@grifo.it ** ' ** ** ' ** Realizzato da: Graziano GAIBA ** ' ********************************************************************** ' ' Questo programma permette di gestire un display LCD alfanumerico, con ' un numero righe e colonne definibili dall'utente. ' Il diplay deve essere collegato su CN5 seguendo i collegamenti indicati ' nello schema dell K51 AVR nella pagina 4 di 4. ' Attenzione togliere dallo zoccolo l'integrato IC12, atrimenti andra' in ' conflitto con i segnali dell'LCD. ' '*********************************************************************** ' '****************** Direttive del compilatore ************************** ' $regfile = "8515def.DAT" ' elenco registri 90S8515 $romstart = &H0 ' indirizzo di partenza del codice $crystal = 5529600 ' frequenza di clock del micro $baud = 19200 ' Baud rate porta seriale Config Lcd = 20 * 4 ' Lcd avente 20 colonne e 2 righe Config Lcdmode = Port ' Report mostra impostazione ' dei pin per gestire LCD Config Lcdpin = Pin , Db4 = Portb.5 , Db5 = Portb.6 , Db6 = Portb.7 , Db7 = Portb.2 , E = Portb.4 , Rs = Portb.3 Deflcdchar 0 , 253 , 245 , 249 , 245 , 245 , 225 , 226 , 252 ' Carratere (R) di registrato, creato con LCD Designer nel menu Edit. ' '****************** Dichiarazione delle variabili ********************** ' Dim A As Byte ' variabile per uso generico ' '************************* Programma main ****************************** ' Main: Cls ' cancellazione LCD Lcd "Grifo" ' visualizzo la stringa Lcd Chr(0) ; ' visualizzo il carattere definito Lcd " www.grifo.com" ' visualizzo la stringa Locate 2 , 1 ' posizione riga 2 e colonna 1 Lcd "Tel.+39051892052" ' visualizzo la stringa Wait 1 ' attesa di 1 secondo For A = 1 To 10 ' esegui 10 volte Shiftlcd Right ' shift a destra il dipaly Waitms 255 ' ritardo di 255 ms Next For A = 1 To 10 ' esegui 10 volte Shiftlcd Left ' shift a sinistra il dipaly Waitms 255 ' ritardo di 255 ms Next Thirdline ' posiziono sulla riga 3 Lcd "Line 3" ' visualizzo la stringa Fourthline ' posiziono sulla riga 4 Lcd "Line 4" ' visualizzo la stringa Do Loop ' loop inifinito End