你好,DM368 写34041 的寄存器写入与读出不一样,不知道为什么
void SpiWrite_gio(unsigned short addr,unsigned short reg) { int i; // sclk low
DRV_gpioClr(SPI1_SCLK_GPO); DRV_gpioClr(SPI1_CS_GPO);
for (i=0; i<16; i++) {
if (addr & 0x00000001)
{
DRV_gpioSet(SPI1_SDO_GPO); }
else
{
DRV_gpioClr(SPI1_SDO_GPO);
}
addr = (addr >> 1);
DRV_gpioSet(SPI1_SCLK_GPO); delay_us(1);
DRV_gpioClr(SPI1_SCLK_GPO); delay_us(1);
}
/***********************************/
for (i=0; i<16; i++) { if (reg & 0x00000001) {
DRV_gpioSet(SPI1_SDO_GPO); }
else
{
DRV_gpioClr(SPI1_SDO_GPO); }
reg = (reg >> 1);
DRV_gpioSet(SPI1_SCLK_GPO); delay_us(1);
DRV_gpioClr(SPI1_SCLK_GPO); delay_us(1);
}
DRV_gpioSet(SPI1_CS_GPO);
}
Christian Shen:
alex,
你的36位并口线中安排了SPI_MISO?如果没有的话没法读哦。。