查看: 4975|回复: 6

[S12] S12 Bootloader的一些问题

[复制链接]

该用户从未签到

5

主题

24

帖子

0

新手上路

Rank: 1

积分
43
最后登录
1970-1-1
发表于 2012-2-15 15:15:26 | 显示全部楼层 |阅读模式
请教各位大侠,

1. 我现在使用Freescale上的AN4258,下载小程序可以,但是大程序时,几十K,经常出错,起不来。

  我想查是通讯的问题,还是没有正确写入的问题。


2.可以用以下的来读相关地址的数据吗?为什么在读0x30000后的数据老是不对,是否有PPAGE的问题?

UINT8 PFlash_Read(UINT32 address)

{    

  return (*(UINT8 *)address);

}
我知道答案 目前已有5人回答
回复

使用道具 举报

  • TA的每日心情
    难过
    2021-12-15 16:01
  • 签到天数: 1 天

    连续签到: 1 天

    [LV.1]初来乍到

    305

    主题

    4701

    帖子

    0

    中级会员

    Rank: 3Rank: 3

    积分
    377
    最后登录
    2023-8-16
    发表于 2012-2-15 15:43:45 | 显示全部楼层

    RE:S12 Bootloader的一些问题

    读取地址的时候必须是读取16位的,写的时候也必须是16位写入的。关于查询这个问题,可以通过通讯处理,比如,你先发送1包数据,注意你发送这包数据一定要有效验和,接收处理效验没有问题就回复一个标记。通过这样的方式来判断是不是中间丢失了数据。第二,写FLASH的时候,只能以字的方式,16位数据格式写入到FLASH中,而且FLASH的存放是低字节在前高字节在后。
    该会员没有填写今日想说内容.
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    5

    主题

    24

    帖子

    0

    新手上路

    Rank: 1

    积分
    43
    最后登录
    1970-1-1
     楼主| 发表于 2012-2-16 14:49:43 | 显示全部楼层

    回复:S12 Bootloader的一些问题

    多谢。我想问下,S12物理地址与逻辑地址对应关系,怎么换算?
    上面没读出去的问题已经解决,是PPAGE没设对。如下
    address = 0x8000+address;
    asm
    {
      ldaa #$0c;
      staa PPAGE;
    }
    return (*(UINT8 *)((UINT16)address));
    这样有个麻烦的地方,我是对比S19和PHY文件来知道之间的关系。从而读该地址的数据,有没有可以直接知道来换算?
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    难过
    2021-12-15 16:01
  • 签到天数: 1 天

    连续签到: 1 天

    [LV.1]初来乍到

    305

    主题

    4701

    帖子

    0

    中级会员

    Rank: 3Rank: 3

    积分
    377
    最后登录
    2023-8-16
    发表于 2012-2-16 16:03:36 | 显示全部楼层

    RE:S12 Bootloader的一些问题

    你可以看S19文件,用记事本打开。你可以看到类似S810这类的,你到网上搜索一下飞思卡尔S19文件格式,就可以分析出各个地址的数据内容了。
    该会员没有填写今日想说内容.
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    5

    主题

    24

    帖子

    0

    新手上路

    Rank: 1

    积分
    43
    最后登录
    1970-1-1
     楼主| 发表于 2012-2-16 16:38:28 | 显示全部楼层

    回复:S12 Bootloader的一些问题

    S19文件格式,这个格式介绍看了,还清楚,对S2,S3,S4,S7,..定义
    但是不清楚比如
    PAGE下
    S2240C8000C67F7B01204AC0F7004A86DE0E10EF4A
    但是通过log2phy 12工具转换成物理地址
    S214030000C67F7B01204AC0F7004A86DE0E10EF4A
    我不知道这个地址0C8000怎么转换到030000
    怎么对应关系
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    5

    主题

    24

    帖子

    0

    新手上路

    Rank: 1

    积分
    43
    最后登录
    1970-1-1
     楼主| 发表于 2012-2-17 12:28:13 | 显示全部楼层

    RE:S12 Bootloader的一些问题

    安大侠,在吗
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    0

    主题

    7

    帖子

    0

    新手上路

    Rank: 1

    积分
    9
    最后登录
    1970-1-1
    发表于 2012-7-1 21:10:21 | 显示全部楼层

    RE:S12 Bootloader的一些问题

    转换方式 Datasheet 里有的
    回复 支持 反对

    使用道具 举报

    您需要登录后才可以回帖 注册/登录

    本版积分规则

    关闭

    站长推荐上一条 /3 下一条

    Archiver|手机版|小黑屋|恩智浦技术社区

    GMT+8, 2025-7-28 16:52 , Processed in 0.099663 second(s), 27 queries , MemCache On.

    Powered by Discuz! X3.4

    Copyright © 2001-2024, Tencent Cloud.

    快速回复 返回顶部 返回列表