[资源共享] 板子收到分享试用心得!!!顺便填一个坑!!!IAP Flash...

[复制链接]
 楼主| yefeng19901202 发表于 2018-3-9 15:38 | 显示全部楼层 |阅读模式
本帖最后由 yefeng19901202 于 2018-3-9 15:51 编辑

原厂带的Flash操作程序基本和这个一样
void Flash_WriteArr(unsigned int fui_Address,unsigned char fuc_Length,unsigned char *fucp_SaveArr)
{        
        EA = 0;
        while(fuc_Length--)
        {                 
                IAP_DATA=*fucp_SaveArr;         //待编程数据,写入数据寄存器必须放在解锁之前
                IAP_CMD=0xF00F;                                //Flash解锁
                IAP_ADDR=fui_Address;                //写入地址
                IAP_CMD=0xB44B;                                //字节编程
                IAP_CMD=0xE11E;                                //触发一次操作
                fui_Address++;                                //地址加一
                fucp_SaveArr++;                                //数据后移一位
        }
        EA = 1;
}
在不开xdata模式可以使用,开启后不能用,
改进后程序
void Flash_WriteArr(unsigned int fui_Address,unsigned char fuc_Length,unsigned char *fucp_SaveArr)
{        
        data unsigned int fui_Address2;
        data unsigned char fuc_Length2;
        fui_Address2 = fui_Address;
        fuc_Length2 = fuc_Length;
        EA = 0;
        while(fuc_Length2--)
        {                 
                IAP_DATA=*fucp_SaveArr;         //待编程数据,写入数据寄存器必须放在解锁之前
                IAP_CMD=0xF00F;                                //Flash解锁
                IAP_ADDR=fui_Address2;                //写入地址
                IAP_CMD=0xB44B;                                //字节编程
                IAP_CMD=0xE11E;                                //触发一次操作
                fui_Address2++;                                //地址加一
                fucp_SaveArr++;                                //数据后移一位
        }
        EA = 1;
}

labasi 发表于 2018-6-22 15:38 | 显示全部楼层
楼主有新的发现 恭喜啊
dxia 发表于 2018-7-17 12:07 | 显示全部楼层
您好!问问 存入的数据读出来就变化了是什么原因?
lu0754 发表于 2020-9-8 21:09 | 显示全部楼层
IAP相关的寄存器手册没有的介绍,只是C言语的例子。这个有许多人踩到大坑!
别看我照片 发表于 2020-9-9 09:05 | 显示全部楼层
感谢分享,不错的,一款不错的软件,太棒了。
weifeng90 发表于 2020-9-12 16:55 | 显示全部楼层
感谢楼主抓虫,哈哈哈!
gouguoccc 发表于 2020-9-12 17:11 | 显示全部楼层
哈哈哈,恭喜楼主又发现一个BUG。
明天真的好 发表于 2020-9-17 19:17 | 显示全部楼层
IAP相关的寄存器手册没有的介绍,只是C言语的例子。这个有许多人踩到大坑!
taborguo 发表于 2020-11-5 16:06 | 显示全部楼层
PWM互补功能很强大,配置也方便,是不错的选择
jerow 发表于 2020-11-26 09:20 | 显示全部楼层
在不开xdata模式可以使用,开启后不能用,这是为什么呢?为什么开启后不能用了
您需要登录后才可以回帖 登录 | 注册

本版积分规则

4

主题

5

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部