> > As for actual pins, i always use macros (ex: #define LCD_DATA_4 > LATBbits.LATB2 ) in the .c file so that there is no change in .c file wh= en > i decide to reassign pins to LCD. > I use my own pure* C routines written long ago that has been very easily > ported to LPC21xx/ AVR without any hassle. There's no "wrong" way here. There's a trade-off of having the simplicity of assigning the data pins to any pin in any port of the processor with the added complication of breaking up the data byte and individually twiddling those pins vs. using a specific block of pins and passing the data in one write (or two with a shift in four bit mode). It's a classic engineering problem, solve it in hardware or solve it in software. "Best" depends on how you cost things. -Denny --=20 http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive View/change your membership options at http://mailman.mit.edu/mailman/listinfo/piclist .