📄 eepromctrlex.bak
字号:
//A.2 Sample Program (EEPROMCtrlEx.c)
/*+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
System : EEPROM emulation
Module name : EEPROM emulation control processing
File name : EEPROMCtrlEx.c
Version name : 1.00
Target CPU : uPD78F0547(78K0/KF2)
Last updated : 2005/08/31
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*/
#pragma section @@CODE SLF_CTRL
#include "EEPROMCtrlEx.h"
#include "Serial.h"
/*-------------------------------------------------------------
Function name : ucEEPROMInitEx(user access function)
Arguments : None
Return value : Normal (TRUE:00H) /
Noemal end (Block error) (NMLBLK: 01H) /
Prohibition of all block use (ERRALL: FBH) /
Device error (ERRDEV: FDH) /
Initialization error (ERRINIT: FEH)
Summary : initialize EEPROM emulation
-------------------------------------------------------------*/
/*--- EEPROM emulation Initialize processing ----------------*/
uchar ucEEPROMInitEx(void)
{
ushort usFlagAdr; /* Effective/invalid flag address */
uchar ucFindBlock; /* Discovery block num ber */
uchar ucCount; /* Elimination counter */
uchar ucFlags; /* Various flags */
/* D7: Block error */
/* D6: Block elimination */
/* D5: not use */
/* D4: not use */
/* D3: not use */
/* D2: not use */
/* D1: not use */
/* D0: not use */
uchar ucResult; /* Processing result */
uchar i;
/* Variable initialization */
ucFindBlock = 0xFF; /* Discovery block number initialization */
ucFlags = 0x0; /* Various flag initialization */
/* Block elimination and effective block setting processing */
/* loop for use block several minutes */
for(i = 0; i < EEPROM_BLOCK_NO; i++)
{
ucFlags &= ~FL_DOERS; /* Elimination flag Off ,FL_DOERS=0x8*/
SET_BANK(ucEEPROM_BANK[i]); /* Bank setting */
/* The bank top address (a flag storage address) acquisition */
usFlagAdr = BLOCK_TO_ADDRESS(ucEEPROM_BLOCK[i]); //悏擃晭簨w泿
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -