1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495 |
- #include "TinyLog.h"
- #include "log_app.h"
- #include "variable.h"
- #include <string.h>
- //记录对象
- static tiny_log_t mylog;
- /**
- * 记录数据初始化
- *
- * @author LXZ (121219)
- *
- * @param void
- */
- void log_app_init(void) {
- tiny_log_init(&mylog, &user_datas[1024], 128);
- }
- /**
- * 执行记录处理功能,报错条件触发记录,读取显示
- *
- * @author LXZ (121219)
- *
- * @param void
- */
- void log_app_run(void) {
- int i = 0;
- int size = 0;
- char ntype = 0;
- int index = 0;
- unsigned char log_data[13];
- //条件触发存储,条件与存储内容用户自己决定,借口预留了一个字节宽度识别码
- //后面读取时可以根据该识别码来识别数据类型,进行数据格式还原。
- if (M0010) {
- M0010 = 0;
- unsigned char data[13];
- //unsigned char ntype;
- ntype = 1;
- memset(data, ntype, 13);
- tiny_log_insert(&mylog, 0xff - (ntype & 0xff), &data[0], sizeof(data));
- }
- if (M0011) {
- M0011 = 0;
- unsigned char data[10];
- //unsigned char ntype;
- ntype = 2;
- memset(data, ntype, sizeof(data));
- tiny_log_insert(&mylog, 0xff - (ntype & 0xff), &data[0], sizeof(data));
- }
- if (M0012) {
- M0012 = 0;
- unsigned char data[5];
- //unsigned char ntype;
- ntype = 3;
- memset(data, ntype, sizeof(data));
- tiny_log_insert(&mylog, 0xff - (ntype & 0xff), &data[0], sizeof(data));
- }
- //重置开始指针
- tiny_log_beign_read(&mylog);
- memset(&log_data[0], 0, sizeof(log_data));
- memset(&user_datas[512],0,256);
- do {
- //条目从最旧读取,每次读取都会向后查找下一条记录
- size = tiny_log_foreace_read(&mylog, &ntype, (void *)&log_data[0]);
- //这里显示数据需要放到哪里的显示的地方只是示例
- if (size >= 0) {
- user_datas[512 + 14 * i] = ntype;
- for (index = 0; index < size; index++) {
- user_datas[512 + 14 * i + index] = log_data[index];
- }
- }
- i++;
- } while (size >= 0);
- }
- /**
- * 保存记录数据,,这里只是对内存进行处理,数据应该自己存到对应介质
- *
- * @author LXZ (121219)
- *
- * @param void
- */
- void log_app_save(void) {
- tiny_log_save(&mylog);
- }
|