一个致命的错误
         
                原创
        
    
    
                
             ©著作权归作者所有:来自51CTO博客作者Lyndon_梁飞的原创作品,请联系作者获取转载授权,否则将追究法律责任        
            
                    
                昨天调试了一天的程序,今天终于发现原来是把设备基地址误写成DMA基地址。
static u8 g_IntMgrData[             (ADI_INT_SECONDARY_MEMORY * 8)];  /* storage for interrupt manager */
static u8 g_DMAMgrData[ADI_DMA_BASE_MEMORY +  (ADI_DMA_CHANNEL_MEMORY * 8)];    /* storage for DMA manager */
static u8 g_DevMgrData[ADI_DEV_BASE_MEMORY +  (ADI_DEV_DEVICE_MEMORY * 4)];   /* storage for device manager */
DSP初始化时需要存储配置参数,所以要预先开辟静态数据以保持效率。但是我在写的时候误将
static u8 g_DevMgrData[ADI_DEV_BASE_MEMORY +  (ADI_DEV_DEVICE_MEMORY * 4)];   /* storage for device manager */
写成了
static u8 g_DevMgrData[ADI_DMA_BASE_MEMORY +  (ADI_DEV_DEVICE_MEMORY * 4)];   /* storage for device manager */
debug的时候却没能发现,今天将源码跟备份一对比才发现犯了一个如此低级的错误。
这样的小错误有时候却是无法避免的,但调试过程中也学到很多知识。