|
QN902x的Memory organization疑问
发表于 2015-4-21 11:17:51
浏览:6977
|
回复:4
打印
只看该作者
[复制链接]
楼主
前言:
最近要熟悉QN902x模块,故先把它当作普通单片机来用,然后再来了解蓝牙协议方面的知识,通过参考《上手教程》--->《环境搭建》以及结合Datasheet看,有如下几个疑问:
问题:
Q1:
首先,QN902x的ROM是96KB、RAM是64KB、Flash是128KB;通过查看datasheet,ROM的地址即是0x00000000~0x00017FFF,RAM则是0x10000000~0x1000FFFF;但是Flash的地址是多少到多少?查看手册没有看有标地址从多少到多少?
Q2: 从《上手教程》--->《环境搭建》看,发现Flash的地址,如下图一所示:
图中的Flash地址是0x10000000~0x1000FFFF,这样不会跟RAM地址冲突吗?
Q3:
查看资料说:
- 96K ROM:里面固化了运行BLE协议栈所需要的底层驱动、内核、基础协议栈,源码不可见,提供部分的API使用,以机器码的形式存储,使用的时候直接读取地址。(那么这么说这部分代码我是不能擦除的吗?)
- 那如果我用编译器下载到QN902x放在Flash里面去是吗?
Q4:
参考《上手教程》--->《环境搭建》看ROM和RAM的分配好像跟Datasheet的不一样啊,如下图二所示:
Q5:
如果我要做IAP升级的话,那么我是不是直接调用Serial Flash的API写一个Bootloader程序,并将其烧入Flash的前面的几十KB大小里,然后一复位上电把Bootloader复制至RAM并运行再对Flash的User区进行擦除编写?
|
|