I2C_RESULT i2c_InitDefaults(void) { //printf("i2c:InitDefaults\n"); memcpy(&config, &defaults, sizeof(I2C_CONFIG)); //printf("calling INIT\n"); _INIT(); //printf("finished INIT\n"); return I2C_RESULT_OK; }
/*-----------*/ int main(void) { uint8_t x; _INIT(); wdt_enable(WDTO_1S); usbInit(); usbDeviceDisconnect(); // enforce re-enumeration, do this while interrupts are disabled! x = 25; while(--x) { // fake USB disconnect for > 250 ms wdt_reset(); _delay_ms(10); } usbDeviceConnect(); pulse_counter = 0; sei(); DisplayRefresh(1); x = 100; while(--x) { wdt_reset(); _delay_ms(10); } ClearLine(SecondLine); DisplayRefresh(1); uart_init(__UBRR); uart_putstr("\r\n"); uart_putstr("Radioactive@Home V2.60\r\n"); uart_putstr("Firmware 1.0 (27.03.14)\r\n"); while(1) { wdt_reset(); usbPoll(); HV_Supply_EVENT(); BeepIfChange_EVENT(); Switch_EVENT(); RadCalc_EVENT(); DisplayRefresh_EVENT(); } return 0; }
I2C_RESULT i2c_Init(I2C_CONFIG* pConfig) { memcpy(&config, pConfig, sizeof(I2C_CONFIG)); _INIT(); return I2C_RESULT_OK; }