|
STM32 + AT45DB161 接USB当U盘,AT45DB161 已经调试通过,可是AT45DB161 换成AT45DB081 调试不通过,请问还有还有什么地方需要修改!!!
static rt_err_t rt_spi_flash_control(rt_device_t dev, rt_uint8_t cmd, void *args)
{
RT_ASSERT(dev != RT_NULL);
if (cmd == RT_DEVICE_CTRL_BLK_GETGEOME)
{
struct rt_device_blk_geometry *geometry;
geometry = (struct rt_device_blk_geometry *)args;
if (geometry == RT_NULL) return -RT_ERROR;
geometry->bytes_per_sector = 512;//512
geometry->sector_count = 4096;
geometry->block_size = 4096; /* block erase: 4k */
}
return RT_EOK;
}
、、+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
#define SPI_FLASH_USE_DMA 0
#define SECTOR_SIZE 512//512
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
SPI_HostWriteByte(AT45DB_MM_PAGE_READ);
SPI_HostWriteByte((uint8_t)(page >> 6));
SPI_HostWriteByte((uint8_t)(page << 2));
// SPI_HostWriteByte((uint8_t)(page >> 7));
// SPI_HostWriteByte((uint8_t)(page << 1));
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
/* SPI_FLASH */
dev_spi_flash = rt_device_find("spi0");
Mass_Block_Size[0] = 512;//512
Mass_Block_Count[0] = 4096;
Mass_Memory_Size[0] = 4096*512;//512
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
以上是我已经修改的地方,请问高手,还有什么需要修改的地方!!! |
|