i don't see why that will not work , assuming the pic config you have omitted showing is correct
can you blink a led ?
this works fine for a 648a , a 628a's rich brother
Code:'****************************************************************'* Name : LCD_TEST.BAS * '* Author : RICHARD * '* Date : 4/8/2017 * '* Version : 1.0 * '* Notes : pic16f648a ep7 * '* : 2016 LCD * '**************************************************************** #CONFIG __config _INTOSC_OSC_NOCLKOUT & _WDT_ON & _PWRTE_OFF & _MCLRE_ON & _BODEN_ON & _LVP_OFF & _DATA_CP_OFF & _CP_OFF #ENDCONFIG DEFINE OSC 4 'LCD defines begin here DEFINE LCD_BITS 4 'defines the number of data interface lines (4 or 8) DEFINE LCD_DREG PORTB 'defines the port where data lines are connected to DEFINE LCD_DBIT 0 'defines the position of data lines for 4-bit interface (0 or 4) DEFINE LCD_RSREG PORTB 'defines the port where RS line is connected to DEFINE LCD_RSBIT 4 'defines the pin where RS line is connected to DEFINE LCD_EREG PORTB 'defines the port where E line is connected to DEFINE LCD_EBIT 5 'defines the pin where E line is connected DEFINE LCD_COMMANDUS 1500 'defines the delay after LCDOUT statement DEFINE LCD_DATAUS 50 'delay in micro seconds 'END of LCD DEFINES Pause 500 ' LCD initialize time lcdout $FE,1 LCDOUT $fe,$83,"HELLO" LCDOUT $fe,$c8,"World" stop end ps rb4 must be pulled low if using ep7 on board programmer or else pgm load will never verify




Bookmarks