smiles
Advanced Member level 4
Here is my beginning code, temporarily stop here when compile error
Could you tell me ways to fix that error or give me ideas to optimize my code, thanks so much !!!
Code:
void main()
{
// TODO: USER CODE!!
// MNEMONICS FOR BUTTONS
#define row1 PIN_A0
#define row2 PIN_A1
#define row3 PIN_A2
#define row4 PIN_A3
#define col1 PIN_D3
#define col2 PIN_D2
#define col3 PIN_D1
#define col4 PIN_D0
// MNEMONICS FOR LCD
#define lcd_rs PIN_B0
#define lcd_rw PIN_B1
#define lcd_e PIN_B2
#define lcd_cmd_wri 0x00
#define lcd_data_wri 0x01
#define lcd_set_function 0x30
#define lcd_set_visible 0x0E
#define lcd_set_mode 0x06
#define lcd_set_home_address 0x80
#define lcd_clear 0x01
set_tris_a(0xff);
set_tris_b(0x00);
set_tris_c(0x00);
set_tris_d(0x00);
output_high(PIN_C0);
//.........
//continue.......
//.........
}
void WriteToLCD(char type,char message)
{
if(type == "data"){
output_d(message);
output_b(lcd_data_wri);
}
if(type == "command"){
output_d(message);
output_b(lcd_cmd_wri);
}
output_high(lcd_e);
#asm
nop
#endasm
output_low(lcd_e);
}
void InitLCD()
{
WriteToLCD("command",lcd_set_function);// it says error:attempt to create a pointer to constant, below ones are similar
WriteToLCD("command",lcd_set_visible);
WriteToLCD("command",lcd_set_mode);
WriteToLCD("command",lcd_set_home_address);
}
void ClearLCD()
{
WriteToLCD("command",lcd_clear);
WriteToLCD("command",lcd_set_home_address);
}