标题: Codewarrior 5.1 vs Codewarrior 6.0 [打印本页] 作者: sideline 时间: 2007-7-22 16:44 标题: Codewarrior 5.1 vs Codewarrior 6.0
AW60, 用5.1写M95160 Serial SPI Bus EEPROM 没问题, 软硬件都没变, 换成6。0就不行了,无法写flash,Codewarrior 的编译选项的设置是一样的,请教可能的原因。谢谢
这是flash程序:
void WriteByteEE(word Addr,byte Dato)
{
SPI1C1_SPE = 1; // abilita la SPI
asm sei // spegni interrupt
if (SPI1S_SPTEF) // leggo flag ricezione
SS1=0; // inizio tx istruzione
SPI1D=WREN; // abilitazione alla scrittura
if (SPI1S_SPRF)
SPI1D;
while (SPI1S_SPRF==0)
;
SPI1D;
SS1=1; // fine istruzione
SS1=0; // inizio tx istruzione
while (SPI1S_SPTEF==0) // attendo momento adatto
;
SPI1D=WRITE; // 1?comando di lettura
while (SPI1S_SPTEF==0)
;
SPI1D=(byte)(Addr/256); // 2癷ndirizzo High
while (SPI1S_SPTEF==0)
;
SPI1D=(byte)(Addr); // 3癷ndirizzo Low
while (SPI1S_SPTEF==0)
;
SPI1D=(byte)(Dato); // 4?Dato
while (SPI1S_SPTEF==0)
;
SPI1D=1; // dato finto...
while (SPI1S_SPRF==0)
;
SS1=1; // questo byte di risposta ?quello valido
asm cli // accendi interrupt
}
// clock frequency = 10MHz
// SPI Master
void InitSPI(void)
{
SPI1C2 = 0x00;
SPI1BR=0x00;
SPI1C1=0x12;
}作者: strongchen 时间: 2007-7-23 10:10