Board logo

标题: [求助]下载程序进去以后Flash只能写一次,请问? [打印本页]

作者: zihongshu    时间: 2005-5-16 19:35     标题: [求助]下载程序进去以后Flash只能写一次,请问?

因为项目时间比较紧,所以直接拿网上的写flash的例程序来用,就是那个C demo程序,c调用汇编。我是在程序运行的时候通过串口向flash写一些参数,可是发现第一次写是正确的,第二次写和预想的不一样,然后后面的就写不进去了,初始化的时候我只是初始化了时钟,别的关于Flash的寄存器好像都是关于加密的,没有管,不知道是什么原因,请问是我调用的有问题还是别的原因,程序如下:
DisableInterrupts;
InitFlashClock();
{
unsigned short temp;
temp = (unsigned short)&ModuleConfigInfoRam.AppNetID;                        
                        
ByteProgram (MODULE_CONFIG_INFO_ADDRESS,1,temp, HighVoltage, CallBack);

ByteProgram ((MODULE_CONFIG_INFO_ADDRESS + 1),1,(temp + 1), HighVoltage, CallBack);

ByteProgram ((MODULE_CONFIG_INFO_ADDRESS + 2),1,(temp + 2), HighVoltage, CallBack);
}
                      
EnableInterrupts;
其中
void InitFlashClock(void){
    FCDIV = 0x27;
}

void CallBack(void)
{
}
MODULE_CONFIG_INFO_ADDRESS 是0x1840                [em27][em27][em27]
作者: strongchen    时间: 2005-5-17 09:59

程序在写FLASH之前有没有将其擦空?
作者: zihongshu    时间: 2005-5-18 13:59

哇!版主在啊,请教flash读写的问题,还是上面那个程序,为什么有的时候能写3个字节,有的时候只能写一个呢?写一个的时候程序就飞了,为什么啊?哎呀,头疼啊

作者: strongchen    时间: 2005-5-18 17:35

可以试试先将COP(Watchdog)关断。




欢迎光临 电子技术论坛_中国专业的电子工程师学习交流社区-中电网技术论坛 (http://bbs.eccn.com/) Powered by Discuz! 7.0.0