Board logo

标题: Monitor ROM中的指令为什么不能对flashmemory进行写操作?? [打印本页]

作者: pingzju.li    时间: 2006-1-18 13:41     标题: Monitor ROM中的指令为什么不能对flashmemory进行写操作??

我现在使用VB的串口控件与qy4a进行通信...


databook上说可以利用monitor ROM中固化的指令对memory进行读写,


我是这么做的


使用VB


发送&H4A(read)-->发送十六进制高地址-->发送低地址


返回目标地址数据........这个没问题....能够正常的read


但是,当按照文中说的写数据时:


发送&H49(write)-->发送十六进制高地址-->发送低地址-->发送数据


这中操作只能对RAM和一些寄存器尽心写操作...对于flash memory无效..


请问这是为什么啊???


如何才能把数据写道flash中去...关键是利用VB串口和发送十六进制数


作者: strongchen    时间: 2006-1-18 14:46

这些命令确实是只能对RAM和寄存器进行操作的。要对FLASH进行操作,请参考AN1831:Using MC68HC908 On-Chip FLASH Programming Routines.pdf,以及AN2346:EEPROM Emulation Using FLASH in MC68HC908QY/QT MCUs
作者: pingzju.li    时间: 2006-1-19 11:06

可是里面设计的内容都是汇编和C的方法...我用的是VB啊...我不想用codeworrier..只用自己写的软件....怎么load到ram里呢??还是用$49的操作数往目标ram地址中写入可以操作flash的程序啊...可我每次写进去的只能是16进制的数啊...怎么把汇编翻译成VB能发送的16进制数呢????
作者: strongchen    时间: 2006-1-19 14:01

CodeWarrior能把汇编或C编译成S19文件,即你需要的16进制文件。然后你再把S19文件中的内容发送给单片机就行了。




欢迎光临 电子技术论坛_中国专业的电子工程师学习交流社区-中电网技术论坛 (http://bbs.eccn.com/) Powered by Discuz! 7.0.0