资源简介
完整工程,基于MC8S08DZ60的EEPROM擦写读取,已经在开发板上测试成功
代码片段和文件信息
#include /* for EnableInterrupts macro */
#include “derivative.h“ /* include peripheral declarations */
void readEEPROM(unsigned int addressunsigned char *readbufunsigned char length);
void WriteEEPROM(unsigned int start_addrunsigned char *pDataunsigned char length);
void MCU_SetBusClock(void); /* XOSC 4.332MHZBUS clock 8.664MHZ */
unsigned char ProgramRam[6] = {0x030x010x020x040x050x06};
unsigned char readbuf[6];
void main(void) {
MCU_SetBusClock();
EnableInterrupts; /* enable interrupts */
/* include your code here */
FCDIV=49; //设置分频 8.664mhz/50在150k到200khz间
WriteEEPROM(0x1400ProgramRam6);
readEEPROM(0x1400readbuf6);
for(;;)
{ __RESET_WATCHDOG();}
}
void readEEPROM(unsigned int start_addressunsigned char *readbufferunsigned char length)
{
unsigned char i;
unsigned char *p;
for(i=0;i {
p = (unsigned char *)(start_address);
readbuffer[i]= *p;
start_address++;
}
}
void WriteEEPROM(unsigned int start_addrunsigned char *pDataunsigned char length)
{
unsigned char i;
unsigned char *p;
if(FSTAT_FACCERR==1)
FSTAT_FACCERR=1; //清除错误标记
p=( unsigned char *)(start_addr); //指定地址
*p=0x01;
FCMD=0X40; //擦除命令
FSTAT_FCBEF=1; //启动命令
asm{ //等待4个bus cycle
NOP
NOP
NOP
NOP
}
while(FSTAT_FCCF==0); //等待完成
for(i=0;i {
if(FSTAT_FACCERR==1)
FSTAT_FACCERR=1;
p=( unsigned char *)(start_addr+i); //指定地址
*p=pData[i]; //写入的数据
FCMD=0X20; //写入命令
FSTAT_FCBEF=1; //启动命令
asm{ //等待4个bus cycle
NOP
NOP
NOP
NOP
}
while(FSTAT_FCCF==0); //等待完成
}
}
/******************************************************************************************
| FUNCTION NAME : MCU_SetBusClock
| CALLED BY : xxxx
| PRECONDITIONS : xxxx
| INPUT PARAMETERS : xxxx
| OUTPUT PARAMETERS: xxxx
| RETURN VALUE : xxxx
| DEscriptION : set MCGOUT and bus frequencyBDIV = 1 VDIV = 16 RDIV = 4 OSC = 4.332MHz
| MCGOUT = [(OSC / RDIV) * VDIV] / BDIV;
| MCGOUT = [(4.332MHz / 4) * 16] / 1 = 17.328MHz;
| Bus frequency = MCGOUT / 2 = 8.664MHz
| NOTE : xxxx
|*******************************************************************************************/
void MCU_SetBusClock(void) /* XOSC 4.332MHZBUS clock 8.664MHZ */
{
//SOPT1 = 0; /* STOP WATCH DOG *
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 2415 2012-08-17 11:57 eep\BDM_P&E_Multili
文件 94751 2012-08-17 12:05 eep\bin\Project.abs
文件 1268 2012-08-17 12:05 eep\bin\Project.abs.s19
文件 65545 2012-08-17 12:05 eep\bin\Project.map
文件 59 2012-08-17 11:11 eep\cmd\BDM_P&E_Multili
文件 60 2012-08-17 11:11 eep\cmd\BDM_P&E_Multili
文件 60 2012-08-17 11:11 eep\cmd\BDM_P&E_Multili
文件 59 2012-08-17 11:11 eep\cmd\BDM_P&E_Multili
文件 3077 2011-09-29 09:49 eep\cmd\HCS08_OpenSourceBDM_Erase_Unsecure.cmd
文件 59 2011-09-29 09:49 eep\cmd\HCS08_OpenSourceBDM_Postload.cmd
文件 60 2011-09-29 09:49 eep\cmd\HCS08_OpenSourceBDM_Preload.cmd
文件 60 2011-09-29 09:49 eep\cmd\HCS08_OpenSourceBDM_Reset.cmd
文件 59 2011-09-29 09:49 eep\cmd\HCS08_OpenSourceBDM_Startup.cmd
文件 856 2011-09-29 09:49 eep\C_Layout.hwl
文件 161 2011-09-29 09:49 eep\Default.mem
文件 73393 2012-08-17 11:11 eep\eep.mcp
文件 4279 2012-08-17 12:05 eep\eep_Data\CWSettingsWindows.stg
文件 12408 2012-08-17 12:05 eep\eep_Data\Standard\ob
文件 92624 2012-08-17 11:11 eep\eep_Data\Standard\ob
文件 7217 2012-08-17 11:11 eep\eep_Data\Standard\ob
文件 298268 2012-08-17 12:05 eep\eep_Data\Standard\TargetDataWindows.tdt
文件 1949 2011-09-29 09:49 eep\HCS08_OpenSourceBDM.ini
文件 140 2011-09-29 09:49 eep\prm\burner.bbl
文件 1750 2011-09-29 09:49 eep\prm\Project.prm
文件 423 2011-09-29 09:49 eep\Sources\derivative.h
文件 4096 2011-09-29 09:49 eep\Sources\eep.IAB
文件 368 2011-09-29 09:49 eep\Sources\eep.IAD
文件 4096 2011-09-29 09:49 eep\Sources\eep.IMB
文件 368 2011-09-29 09:49 eep\Sources\eep.IMD
文件 12 2011-09-29 09:49 eep\Sources\eep.PFI
............此处省略18个文件信息
相关资源
- 51单片机模拟IIC协议读写EEPROM(24C02)
- AT89C52自带EEPROM的使用
- MC9S08DZ60资料包.zip
- AT24C08 EEPROM读写操作
- 24LC02EEPROM源程序代码
- flash、SRAM、EEPROM在AVR中的应用
- PIC单片机的EEPROM读写及说明
- MT7620_EEPROM编辑器可改MAC.rar
- 24LC02中英文资料
- 7620板 2576L功放的路由器原厂eeprom.b
- FPGA通过IIC协议驱动24LC32EEPROM
- 基于IIC通信的EEPROM读/写Verilog/VHDL程序
- stm32 spi方式读写EEPROM
- K2编程器固件eeprom
- STC15W-408AS_EEPROM与串口通信
- 可编程乐曲演奏器的设计
- 24C01C/24C02C/24LC01B中文资料 I2C串行EEP
- 基于LTC6802的磷酸铁锂电池采集系统
- FRAM芯片扩展耐力在低功耗应用
- AT25xxxEEPROM的底层驱动
- 瑞萨EEL库使用详解,eeprom存储
- 28335读写I2CEEPROM的例程
- 佳能打印机墨水收集器满EEPROM清除软
- STM32F10x_模拟I2C读写EEPROM综合版切换
- I210 MAC EEPROM包含 Eeupdate.exe
- 斐讯K2P a1 a2 EEPROM。信号丢失恢复专用
- STM32F051K8flah模拟EEPROM程序
- MT7620 EEPROM Content
- stm32f4 标准库 flash模拟eeprom
- AT24C256EEPROM读写程序
评论
共有 条评论