求助,908LJ12的片内FLASH在线编程作为EPROM用
 
- UID
- 109730
- 性别
- 男
|
求助,908LJ12的片内FLASH在线编程作为EPROM用
采用LJ12的片内的监控程序,在用户模式下 将片内的FALSH做为EPROM用为什么不成功呢?请大家帮忙~我的程序大致如下
定义数据快
BUS_SPEED DS 1; 总线速度 $20
DATA_SIZE DS 1;数据个数 $0C
FLASH_ADR DS 2: FLASH 目标地址 $EC00
DATA BUF DS N; 要读 写操作的RAM 块数据 12个
程序好后 LDHX #BUS_SPEED
JSR FC00;写
JSR FC03;读 但是好象数据无法读 CPU一直复位 写操作好象没复位 但是由于无法读 也不知道写得对不对 请大家分析 |
|
|
|
|
|
 
- UID
- 109730
- 性别
- 男
|
哦 能说些具体的嘛~
我明天到实验室再测试啊 搞了1-2天了 问题还没解决啊 |
|
|
|
|
|
 
- UID
- 109730
- 性别
- 男
|
请问 楼上的
你的数据DATA SIZE的大小好象不对啊~还有 开RAM的单元好象也很大啊~
另外 FILE——PTR一定要在 0080的地方吗? |
|
|
|
|
|
 
- UID
- 109730
- 性别
- 男
|
OCEANX, 我想用FLASH存一些不丢失的系数
然后程序上电调用这些系数,该调用那些程序啊
几天测试下来怎么都不成功啊~
用FC06测试写 数据程序好象能运行
但是上电调用写的FLASH系数(用FF30) 好象程序一直同不过啊 |
|
|
|
|
|
 
- UID
- 109730
- 性别
- 男
|
我看到MOTO的1个LJ12设计电表的例子 可以调用 EPREAD $FC03 和EPWRITE $FC00可以实现,而我在程序中总是无法读写 程序一运行到调用1快 就复位 不知道为什么啊 郁闷了几天 还是没搞定啊 做个实验的帮助贴下啊 |
|
|
|
|
|
 
- UID
- 109730
- 性别
- 男
|
不对啊
应该用地址方式调用的 手册上写得很清楚啊
我把程序拷贝给大家 看看 不知道为什么程序执行到那里 单片机就复位啊
定义 FILEPTR:
BUS_SPEED
DATA_SIZE
ADDRH
ADDRL
DATA..
初始化
SEI
STA $FFFF
LDHX #FILEPTR
JSR 地址
CLI
程序就是不行啊 |
|
|
|
|
|
 
- UID
- 109730
- 性别
- 男
|
郁闷啊 ~
今天 用 LK24 测试可以了
但是同样程序 LJ12不 行啊
不做到 为啥 |
|
|
|
|
|
 
- UID
- 109730
- 性别
- 男
|
是呀 手册上LJ12和LK24是相同的
不知道 LJ12的手册更新没 |
|
|
|
|
|
 
- UID
- 109730
- 性别
- 男
|
相同的啊 都是32.768 PLL 成 8M的总线速度啊 |
|
|
|
|
|
 
- UID
- 109730
- 性别
- 男
|
问题已经解决
主要是每次 调用程序的时候都要初始化入口参数
然后是写操作前要擦除操作 打开快保护容许 |
|
|
|
|
|