ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Вторник
23 апреля
416200 Топик полностью
mazur (08.06.2013 21:08, просмотров: 165) ответил mazur на Как мне правильно сделать? Выдает ошибку при компилировании. Ругается на LCD_DATA.
Сделал так:  void lcd_send_byte (u08 LCD_DATA) { DATA_DDR = (DATA_DDR | 0xF0); setb(CMD_PORT, EN); DATA_PORT = (DATA_PORT & 0x0F) | (LCD_DATA & 0xF0); asm("nop"); asm("nop"); asm("nop"); asm("nop"); asm("nop"); clrb(CMD_PORT, EN); asm("nop"); asm("nop"); asm("nop"); asm("nop"); asm("nop"); setb(CMD_PORT, EN); DATA_PORT = (DATA_PORT & 0x0F) | (LCD_DATA << 4); asm("nop"); asm("nop"); asm("nop"); asm("nop"); asm("nop"); clrb(CMD_PORT, EN); asm("nop"); asm("nop"); asm("nop"); asm("nop"); asm("nop"); } //======================================================================== void lcd_send_com (u08 LCD_DATA) { clrb(CMD_PORT, RS); lcd_send_byte (LCD_DATA); lcd_io_in(); } //======================================================================== //======================================================================== void lcd_send_data (u08 LCD_DATA) { setb(CMD_PORT,RS); lcd_send_byte (LCD_DATA); clrb(CMD_PORT,RS); lcd_io_in(); } //======================================================================== Не знаю, правильно или нет, компилятор не ругнулся, в симуляторе и в дизассемблере вроде все нормально.