你好,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);
}