代码如下:
void srom_download( void )
{
uint byte_count;
spi_enable();
write_adns( ADDR_CONFIG_IVREG, VALUE_FULLROM ); /*select 3k bytes srom size*/
write_adns( ADDR_SROMEN_REG, VALUE_SROMINI ); /*initialize SROM*/
spi_disable();
delay_100us(100); /*delay 10ms*/
spi_enable();
write_adns( ADDR_SROMEN_REG, VALUE_SROMSTA ); /*start SROM downloading*/
spi_disable();
delay_100us(2);
spi_enable();
spi_transfer(ADDR_SROMLB_REG); /*write SROM_Load_Burst register address*/
/*----download 3070 bytes SROM file----*/
for ( byte_count = 0; byte_count < 3070; byte_count++ )
{
delay_10us();
delay_10us();
//delay_10us();
//delay_10us();
spi_transfer(SROM_DATA[byte_count]);
}
delay_10us();
delay_10us();
spi_disable();
delay_10us();
}
|