导航: 老古网老古论坛XMOS公共讨论区XMOS开源项目区单片机程序设计嵌入式系统广告区域
→小弟写的FLASH块檫除、块写、块读程序(C)大家给点意见[linkaimu]

 *第18685篇: 小弟写的FLASH块檫除、块写、块读程序(C)大家给点意见

  
楼 主:linkaimu 2004年1月15日16:06
 小弟写的FLASH块檫除、块写、块读程序(C)大家给点意见
各位大哥看看程序是否有毛病。谢谢了!void Flash_Erase()
{
AUXR1=0x20h;   //ENBOOT置位,寻址固件
R0=18;         //18.432M晶振
R1=0x01;      //檫除块4内容
DPH=0xc0;
DPL=0;
pgm_mip();    //调用BOOTROM子程序
//AUXR1=0;      //清ENBOOT  此语句是否有必要???????
}

/*********************************************
*选中的flash 有16K字节
*传进写的地址和数据
**********************************************/
void Flash_Write(unsigned int add,unsigned char num)
{
unsigned char address1;
unsigned char address2;
unsigned char  number;
address1=add/256;
address2=add%256;
number=num;
AUXR1=0x20;   //ENBOOT置位,寻址固件
R0=18;         //18.432M晶振
R1=0x02;      //把数据写到块4
DPH=0xc0+address1;
DPL=0+address2;
ACC=number;
pgm_mip();    //调用BOOTROM子程序
//AUXR1=0;      //清ENBOOT

/*********************************************
*选中的flash 有16K字节
*传入需要读出数据的地址,返回读出的数据
**********************************************/
unsigned char Flash_Read(unsigned int add)
{
unsigned char address1;
unsigned char address2;
address1=add/256;
address2=add%256;
ACC=0;
AUXR1=0x20;   //ENBOOT置位,寻址固件
R0=18;         //18.432M晶振
R1=0x03;      //把块4内容
DPH=0xc0+address1;
DPL=0+address2;
pgm_mip();    //调用BOOTROM子程序
//AUXR1=0;      //清ENBOOT
}

  
2楼:linkaimu 2004年1月16日11:27
 正确还是错误,大家给点意见。有用过fla
正确还是错误,大家给点意见。有用过flash芯片的吗??谢谢了!
  
3楼:rain_cxp 2004年7月20日09:53
 你好,你的问题有没有解决哦?
我也想用FLASH,32M的,正苦于没有参考可借鉴,能否帮个忙?
rain_cxp@hotmail.com或者QQ-21764567。MSN也可以。先谢谢了

>>>>>>对该主题发表你的看法

本主题贴数3,分页: [第1页]


[上一篇主题]:有没有谁使用过DS80C400微处理器?

[下一篇主题]:老古:请及时清理**功的垃圾言辞,还人类网友一个电子科学的殿堂!!!!!!!!