对于908的MCU, 不管是擦写某一两各地址的FLASH, 还是对整个FLASH进行擦写操作, 都必须将擦写操作的程序放到RAM中运行, 或调用它Monitor ROM中的子程序. 操作的方法是一样的.
每种MCU的数据手册中, 都在介绍 FLASH Memory 的章节中介绍了对 FLASH 进行擦/写/读操作的方法; 而在 Monitor ROM 章节中介绍了 MCU 内置的 FLASH 操作子程序.
在对FLASH进行擦写操作时, 中断和定时器其实是可以用的, 但最好不用. 如果一定要用的话, 则必须用查询的方法. 因为中断矢量区在FLASH的范围内, 这时 MCU 是不能响应中断的.
另外l3hh161821说的不太准确. 所有的908的MCU都只能采用MON08接口, 而没有BDM接口, 这个没错. 但所有的 908 的 MCU 在编程时都需要一个 *.08P 的文件. 这个文件是编程软件使用的, 并不下载到芯片中去.
MON08接口虽然是 2*8 的, 但其实真正用到的并没有那么多. 用户可以做一个转接口, 那么在板子上只要做一个很小的接口就行了. 另外, 如果用户板上本来有通讯接口(任何通讯方式皆可), 用户完全可以用这个通讯口实现在线编程功能, 就不必有另外的编程接口了. 当然, 用这种方式需事先在芯片中载入相应的通讯程序. |