'-------------------------------------------------------------------------------- 'name : CharLCD_example.bas 'purpose : Character LCD control example 'micro controller : Mega168 (Kyohritsu-Digit ABL168 board) '-------------------------------------------------------------------------------- '-------------------------------------------------------------------------------- Rem Used ports '-------------------------------------------------------------------------------- ' PD0,1 : reserved by USB communication ' PB6,7 : reserved by XTAL OSC ' PB5 : reserved by Boot Loader ' ' PC1-4 : LCD - ' PC5 : LCD E ' PB4 : LCD RS '-------------------------------------------------------------------------------- $regfile = "m168def.dat" $crystal = 20000000 ' 20MHz clock $hwstack = 64 ' Sufficient HardWare Stack for multiple interrupts etc. $swstack = 32 ' used in multiple GOSUB nest. $framesize = 40 Rem Liquid Crystal Display (LCD) pin number definition Config Lcdpin = Pin , Db4 = Portc.4 , Db5 = Portc.3 , Db6 = Portc.2 , Db7 = Portc.1 Config Lcdpin = Pin , E = Portc.5 , Rs = Portb.4 Config Lcd = 16 * 2 ' 16-char. 2-line Rem type definition of variables Dim V As Single Dim S As String * 16 Rem program start Rem LCD initialize Cls ' Clear LCD Screen Cursor Off Lcd "Board test1" ' Character print to LCD Lowerline ' move to lower line in LCD screen Lcd "Exapmle" Wait 1 ' 1 sec. wait Lowerline Lcd "2nd line" Wait 1 Cls Upperline Lcd "Data print" V = 2.55 S = Fusing(v , "#.###") Lowerline Lcd "V=" ; S ; "V " Wait 1 Cls Upperline Lcd "LCD test END" End