参考页和工作页能够正常工作的函数

// 指定在参考页
Ccp_ControlStatus.page = CCP_PAGE_RP;

Ccp_ControlStatus.TxFailedLastOneFlag = FALSE;
Ccp_ControlStatus.TxFailedContinueFlag = FALSE;
/* copy data from reference page to working page /
/
将数据从参考页复制到工作页*/
//Mem_Copy(CCP_WORKING_PAGE_ADDR,CCP_REFERENCE_PAGE_ADDR,CCP_PAGE_SIZE>>1);
//memcpy(CCP_WORKING_PAGE_ADDR,CCP_REFERENCE_PAGE_ADDR,CCP_PAGE_SIZE>>1);
//by Adams 20190331
//for DBG
// DataRecord_Read(CCP_REFERENCE_PAGE_ADDR, (uint32_t *)CCP_WORKING_PAGE, 512);
DataRecord_ReadS((uint8_t *)CCP_REFERENCE_PAGE_ADDR, (uint8_t )CCP_WORKING_PAGE_ADDR, 51220);
//EFLASH_ReadS(CCP_REFERENCE_PAGE_ADDR, (uint32_t )CCP_WORKING_PAGE_ADDR, 5124); // 读取FLASH 的诗句
// DataRecord_Read(CCP_REFERENCE_PAGE_ADDR, (uint32_t *)SPK_ADV_adjust, 512);

// 选择工作页或者参考页
// 11 命令
/* 0x11 /
static void Ccp_SelectCalPage(uint8 index)
{
uint32 addr;
addr = (uint32)(Ccp_ControlStatus.mta0);
if((addr >= CCP_PAGE_LOGIC_ADDR)&&
(addr < CCP_LOGIC_PAGE_END))
{
/
reference page*/
/* 参考页*/
Ccp_PageRP();
Ccp_ControlStatus.page = CCP_PAGE_RP;
}
else
{
/* working page /
/
工作页*/
Ccp_PageWP();
Ccp_ControlStatus.page = CCP_PAGE_WP;
}
}

Std_ReturnType Mem_Copy(uint32 to,uint32 from,uint32 len)
{
uint32 cnt;
Std_ReturnType status;
int * __far pto = (int * __far) (int * __rptr) (to); // 2个指针 指向某个地址 将from的地址搬到to
int * __far pfrom = (int * __far) (int * __rptr) (from);
for(cnt = 0;cnt<len;cnt++)
{
*pto++ = *pfrom++;
}

status = E_OK;
return(status);
}

  • 1
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 6
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

qq_34309267

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值