在MDK中添加自己的FLASH编程算法.docx

上传人:牧羊曲112 文档编号:3379482 上传时间:2023-03-12 格式:DOCX 页数:3 大小:37.63KB
返回 下载 相关 举报
在MDK中添加自己的FLASH编程算法.docx_第1页
第1页 / 共3页
在MDK中添加自己的FLASH编程算法.docx_第2页
第2页 / 共3页
在MDK中添加自己的FLASH编程算法.docx_第3页
第3页 / 共3页
亲,该文档总共3页,全部预览完了,如果喜欢就下载吧!
资源描述

《在MDK中添加自己的FLASH编程算法.docx》由会员分享,可在线阅读,更多相关《在MDK中添加自己的FLASH编程算法.docx(3页珍藏版)》请在三一办公上搜索。

1、在MDK中添加自己的FLASH编程算法在MDK中添加自己的FLASH编程算法在Realview MDK中,Flash烧写算法不是通用的,都是针对具体的Flash存储芯片的。由于市面上的Flash种类比较多,所以Realview MDK不可能包含所有的Flash芯片烧写程序。但是在具体的应用中,开发者在Realview MDK中可能会找不到自己所需要的Flash烧写程序,这时,用户就必须自己添加Flash烧写程序。本文将详细的探讨这种方法。Realview MDK已经定义好了添加到其中的Flash烧写算法的接口,包括1个描述Flash芯片的结构体和6个对Flash芯片操作的函数定义。详细的内容可

2、以参考下面的代码。struct FlashDevice unsigned short Vers; / 体系结构及版本号;char DevName128; / 设备的名称及描述;unsigned short DevType; / 设备的类型,例如: ONCHIP, EXT8BIT, EXT16BIT等等;unsigned long DevAdr; / 默认设备的起始地址;unsigned long szDev; / 设备的总容量;unsigned long szPage; / 页面的大小;unsigned long Res; / 保留,以便将来扩展之用;unsigned char valEmpt

3、y; / Flash擦除后储存单元的值;unsigned long toProg; / 页写函数超时的时间;unsigned long toErase; / 扇区擦除函数超时的时间;struct FlashSectors sectorsSECTOR_NUM; /扇区的起始地址及容量设置数组。;extern int Init (unsigned long adr, unsigned long clk, unsigned long fnc);extern int UnInit (unsigned long fnc); extern int BlankCheck (unsigned long adr

4、, unsigned long sz, unsigned char pat);extern int EraseChip (void); extern int EraseSector (unsigned long adr); extern int ProgramPage (unsigned long adr, unsigned long sz, unsigned char *buf);extern unsigned long Verify (unsigned long adr, unsigned long sz, unsigned char *buf);在Realview MDK中,添加Flas

5、h烧写算法的实质就是填充上面的那个结构体以及实现那6个函数。至于几个函数是如何被Realview MDK调用的,用户不必关心,这些是由Realview MDK自动管理的,只要正确的实现了上面的那些内容,开发者就可以将Realview MDK编译链接后的程序下载到自己的Flash芯片中去。下面是添加一个Flash烧写的详细步骤: 1. 在C:KeilARMFlash下新建一个空的子文件夹;2. 在Flash文件夹中选择一个已存在的,且和欲添加的Flash算法相近的内容(如 .ARMFlashLPC_IAP_256) 拷贝到这个新文件中,并将此算法作为新算法的模板;3. 重命名工程文件LPC_IA

6、P_256.UV2以表示新的Flash ROM设备名,如29F400.UV2并用Vision IDE将其打开;4. 在对话框Project - Options for Target - Output 中将所有的输出文件名(如 LPC_IAP_256)替换为新的设备名;5. 编辑FlashPrg.C文件并为EraseChip, EraseBlock及ProgramBlock定义函数代码。在函数Init和UnInit中编写算法所需的初始化以及卸载代码;6. 在文件FlashDev.C中的struct FlashDevice结构体中定义设备参数;7. 重新编译工程,将在C:KeilARMFlash文件夹下生成*.FLX 格式的Flash编程算法。此文件即为所添加的Flash编程算法;8. 使用Configure Flash Download 中的Add按钮可将此编程算法文件添加到目标应用工程中。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号