static int ak4118_on_test_card_init(uint8 slot, uint8 ch) { spi_ctl_t config = {8, 0, 400000}; int retval = 0; mdc_bus_select((mdc_slot_t)slot); bsp_spi0_ctl(&config); retval += AK4118_write(0x00, 0x42); bsp_delay_ms(2); retval += AK4118_write(0x00, 0x43); bsp_delay_ms(2); retval += AK4118_write(0x01, 0x5A); /* audio format i2s */ retval += AK4118_write(0x02, 0x80); retval += AK4118_write(0x21, 0x02); /* gp1 output*/ retval += AK4118_write(0x22, 0x00); test_input_select((test_input_t)ch); mdc_bus_select(SLOT_NUM); config.protocal = 3; bsp_spi0_ctl(&config); return retval; }
int eeprom_write(uint32 addr, uint8 *buf, size_t size) { uint8 write_size; size_t index = 0; OSAL_ASSERT(buf != NULL); do{ if(size > EPROM_PAGE_SIZE){ write_size = EPROM_PAGE_SIZE; }else{ write_size = size; } if(osal_iic_write_buf(EPROM, addr, buf, write_size) < 0){ return -1; } buf += write_size; index += write_size; addr += write_size; bsp_delay_ms(50); }while(index < size); return size; }
void bsp_test_timer(void) { // This will block indefinitely while (1) { bsp_delay_ms(50); GPIO_PinOutToggle(MICRO_IO1_PORT, MICRO_IO1_PIN); } }