4.2. APP 开发流

4.2.1. 消息处理机制

  • AW31N SDK 为用户提供一种消息处理机制,系统各个功能组件会发出事件通知用户,用户只需在while中获取对应的msg消息,即可完成相应的开发,使用方法请参考: 消息与事件

4.2.2. 变量定义

  • AW31N芯片RAM分为 NK_RAM(12K,掉电不保存)和NV_RAM(16K,掉电保存),见下图

    Note

    NK_RAM在 运行低功耗(poweroff)时整块RAM都会掉电,因此使用NK_RAM定义的变量/结构体/指针均会丢失。使用NK_RAM的原因是为了得到更低的功耗。

  • 什么情况下会被划分到NK_RAM,或者NV_RAM?

    //NK_RAM定义
    NOT_KEEP_RAM
    u8 btNKRAM_static[BTCTLER_NK_RAM_SIZE] ALIGNED(4); //NK_RAM
    
    //NV_RAM定义
    u8 pNVRAM_static[BTCTLER_NV_MEMORY_SIZE] ALIGNED(4);//NV_RAM
    

    Tip

    从上可知,正常定义变量均分被分配到NV_RAM(不掉电),仅有在定义前面添加了NOT_KEEP_RAM 的变量/结构体/指针才会被放到NK_RAM(掉电)