⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 history.c

📁 一体化锁主程序
💻 C
字号:

#include "KKZQ.H"

//=====================================================================================
//                  RAM资源
//   占用 6 个字节
//idata uint  loadp;
//idata uint  his_count;
//idata uint  savep;
//idata uint  new_card_addr;
//
//=====================================================================================





uchar idata his_cover;
uint idata loadp=0;         //下一次读取记录位置序号(指针)
uint idata savep=0;         //下一次新纪录存放位置序号(指针)


void read_his_data();       //读历史数据函数
void write_his_data();      //写历史数据函数
void save_hisnum();         //保存历史记录条目数
void load_hisnum();         //读出历史记录条目数
//=================================================================================
//文 件 名 : save_hisnum()
//功    能 : 保存历史记录条目数
//=================================================================================
//
void save_hisnum()
{
    eeprom_buf[0]=savep/256;
    eeprom_buf[1]=savep%256;
    eeprom_buf[2]=loadp/256;
    eeprom_buf[3]=loadp%256;
    eeprom_buf[4]=his_cover;
    write128(5,his_count_addr,&eeprom_buf[0]); //保存历史事件的写入点指针
}
//=================================================================================
//文 件 名 : save_hisnum()
//功    能 : 保存历史记录条目数
//=================================================================================
//
void load_hisnum()
{
    read128buf(5,his_count_addr);   //保存历史事件计数器+1
    savep=(uint)eeprom_buf[0]*256+eeprom_buf[1];
    loadp=(uint)eeprom_buf[2]*256+eeprom_buf[3];
    his_cover=eeprom_buf[4];
}
//=================================================================================
//文 件 名 : write_his_data()
//功    能 : 保存一条历史数据
//输    入 : 将需要保存的历史数据写入历史数据缓冲区,并标注时间
//寄 存 器 : savep  当前记录号
//           history_num    当前保存的记录数
//输    出 :
//文件调用 :
//
//=================================================================================
//
void write_his_data()
{   uint hh;
    hh  = savep*16+his_addr;

    write128(14,hh,&eeprom_buf[0]);                             //写入1个历史事件
    if(++savep>500){savep=0;his_cover=0x80;}
    else if(his_cover&0x80){if(loadp<savep){loadp=savep;his_cover|=0x01;}}
    save_hisnum();
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -