Monitor ROM中的指令为什么不能对flashmemory进行写操作??
- UID
- 128732
- 性别
- 男
|
Monitor ROM中的指令为什么不能对flashmemory进行写操作??
我现在使用VB的串口控件与qy4a进行通信...
databook上说可以利用monitor ROM中固化的指令对memory进行读写,
我是这么做的
使用VB
发送&H4A(read)-->发送十六进制高地址-->发送低地址
返回目标地址数据........这个没问题....能够正常的read
但是,当按照文中说的写数据时:
发送&H49(write)-->发送十六进制高地址-->发送低地址-->发送数据
这中操作只能对RAM和一些寄存器尽心写操作...对于flash memory无效..
请问这是为什么啊???
如何才能把数据写道flash中去...关键是利用VB串口和发送十六进制数 |
|
|
|
|
|
- UID
- 104380
- 性别
- 男
|
这些命令确实是只能对RAM和寄存器进行操作的。要对FLASH进行操作,请参考AN1831:Using MC68HC908 On-Chip FLASH Programming Routines.pdf,以及AN2346:EEPROM Emulation Using FLASH in MC68HC908QY/QT MCUs |
|
|
|
|
|
- UID
- 128732
- 性别
- 男
|
可是里面设计的内容都是汇编和C的方法...我用的是VB啊...我不想用codeworrier..只用自己写的软件....怎么load到ram里呢??还是用$49的操作数往目标ram地址中写入可以操作flash的程序啊...可我每次写进去的只能是16进制的数啊...怎么把汇编翻译成VB能发送的16进制数呢???? |
|
|
|
|
|
- UID
- 104380
- 性别
- 男
|
CodeWarrior能把汇编或C编译成S19文件,即你需要的16进制文件。然后你再把S19文件中的内容发送给单片机就行了。 |
|
|
|
|
|