小编use*_*574的帖子

pic32 引导加载程序写入内存

我在使 PIC32MX795F512L 的引导加载程序正常工作时遇到问题。

我基于 microchip 网站上的示例代码。

这是我应该写入内存的代码部分,到目前为止我已经验证了引导加载程序(解析十六进制文件很好,数据到达这一点但没有写入内存):

#define NVMOP_WORD_PGM          0x4001 


// Write the data into flash.   
Result = NVMemWriteWord(ProgAddress, WrData);   
// Assert on error. This must be caught during debug phase.
if(Result != 0)
{       
    ASSERT(Result==0);
}

UINT NVMemWriteWord(void* address, UINT data)
{
    UINT res;

    NVMADDR = KVA_TO_PA((unsigned int)address);

    // Load data into NVMDATA register
    NVMDATA = data;

    // Unlock and Write Word
    res = NVMemOperation(NVMOP_WORD_PGM);

    return res;
}

UINT __attribute__((nomips16)) NVMemOperation(UINT nvmop)
{
    int int_status;
    int susp;

    // Disable …
Run Code Online (Sandbox Code Playgroud)

c microchip bootloader mplab pic32

3
推荐指数
1
解决办法
4761
查看次数

标签 统计

bootloader ×1

c ×1

microchip ×1

mplab ×1

pic32 ×1