X-Git-Url: https://git.gag.com/?a=blobdiff_plain;ds=sidebyside;f=src%2Fstm-demo%2Fao_demo.c;h=879f7f75bb4fbdb1cb3c71c67fddb43aa645439d;hb=67044cca5b463772491d0712d0ce07a8f897a476;hp=ea4dadfa89d438513c1414308569367d525bb947;hpb=0a198dfcd1b0defe194feaf301f4586e5573d6e9;p=fw%2Faltos diff --git a/src/stm-demo/ao_demo.c b/src/stm-demo/ao_demo.c index ea4dadfa..879f7f75 100644 --- a/src/stm-demo/ao_demo.c +++ b/src/stm-demo/ao_demo.c @@ -111,7 +111,26 @@ ao_spi_read(void) { } } +static void +ao_i2c_write(void) { + unsigned char data[] = { 0x55, 0xaa, 0xff, 0x00 }; + int i; + for (i = 0; i < 10; i++) { + ao_i2c_get(0); + if (ao_i2c_start(0, 0x55)) + ao_i2c_send(data, 4, 0); + else { + printf ("i2c start failed\n"); + ao_i2c_put(0); + break; + } + ao_i2c_put(0); + printf("."); + flush(); + ao_delay(100); + } +} static void ao_temp (void) @@ -133,6 +152,7 @@ __code struct ao_cmds ao_demo_cmds[] = { { ao_dma_test, "D\0DMA test" }, { ao_spi_write, "W\0SPI write" }, { ao_spi_read, "R\0SPI read" }, + { ao_i2c_write, "i\0I2C write" }, { ao_temp, "t\0Show temp" }, { 0, NULL } }; @@ -149,6 +169,7 @@ main(void) // ao_lcd_stm_init(); // ao_lcd_font_init(); ao_spi_init(); + ao_i2c_init(); ao_timer_set_adc_interval(100);