ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Суббота
23 ноября
327101
mazur (07.05.2012 13:37, просмотров: 34284)
Подскажите как сделать. Не могу пока сообразить как в сишный код перевести. Проект выложил. AVR-Studio. AVR Toolchain (WinAVR). Первое, как правильно макросы писать. Второе: затруднения в том, чтобы оставить примерно такую же структуру функций. Не знаю как правильно обозвать, вызов полных функций и частей функций. Самое трудное сейчас в Send_Byte со второй строки: Init_Display: ldi LCD_DATA,0x30 rcall Send_Com_Init ldi LCD_DATA,0x30 rcall Send_Com_Init ldi LCD_DATA,0x30 rcall Send_Com_Init ldi LCD_Data,$20 rcall Send_Com_Init ldi LCD_DATA,0x28 rcall Send_Com ldi LCD_Data,$01 rcall Send_Com ldi LCD_Data,$06 rcall Send_Com ldi LCD_Data,$0C Send_Com: cbi CMD_PORT,RS rjmp Send_Byte Data_Port_Out: in TEMP,Data_DDR ori TEMP,0xF0 out Data_DDR,TEMP ret Send_Data: sbi CMD_PORT,RS rjmp Send_Byte ret Send_Com_Init: cbi CMD_PORT,RS Send_Nibble: rcall Data_Port_Out in TEMP,DATA_PORT andi TEMP,0x0F rjmp Send_Nibble_1 Send_Byte: rcall Data_Port_Out in TEMP,DATA_PORT andi TEMP,0x0F eor TEMP,LCD_DATA andi LCD_DATA,0x0F eor TEMP,LCD_DATA out DATA_PORT,TEMP sbi CMD_PORT,Ena rcall Empty_Action cbi CMD_PORT,Ena andi TEMP,0x0F swap LCD_DATA Send_Nibble_1: andi LCD_DATA,0xF0 or TEMP,LCD_DATA out DATA_PORT,TEMP sbi CMD_PORT,Ena rcall Empty_Action cbi CMD_PORT,Ena Data_Port_In: in TEMP,Data_DDR andi TEMP,0x0F out Data_DDR,TEMP in TEMP,Data_Port andi TEMP,0x0F out Data_Port,TEMP ret