完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
1、 介绍
EasyLogger 是一款超轻量级(ROM<1.6K, RAM<0.3K)、高性能的 C/C++ 日志库,非常适合对资源敏感的软件项目,例如: IoT 产品、可穿戴设备、智能家居等等。相比 log4c、zlog 这些知名的 C/C++ 日志库, EasyLogger 的功能更加简单,提供给用户的接口更少,但上手会很快,更多实用功能支持以插件形式进行动态扩展。 2、为什么要移植
名词解释: 总而言之就是好用,因为在以后的工作中,我们难免会遇到个各种各样的问题,这个时候有一个好用且让人醒目的Log日志就会让我们开发效率大大提高。 具体easylogger有哪些特点,大家可以去github找源码。 3、基于MDK移植EasyLogger 先将源码从github下载下来,然后先看一下它的README文件。这回对我们移植有帮助,然后再看一下docszhportKernel.md文件,这里具体讲了怎么移植,下面我就直接来移植。
这是由于elog_cfg文件里面有很多的配置,而我们是在Windows下的环境,所以我们直接先修改这个配置文件。打开文件之后可以很清楚的看到有分界线,说明是有模块分层的。先看一下第一个,很容易就看出这是log日志的基本配置,那么我们就直接先把下面两个分界线全部注释,再次编译一次。 编译结果顺利通过,只不过有几个warning: 中三个是说函数没有返回值,还有一个是最后一行需要一个空行,解决完了就没有warning了。 下面写个log初始化函数,然后测试一下: void log_init(void) { elog_init();//初始化 /* 设置log各个等级的格式 */ elog_set_fmt(ELOG_LVL_ASSERT, ELOG_FMT_ALL); elog_set_fmt(ELOG_LVL_ERROR, ELOG_FMT_LVL | ELOG_FMT_TAG | ELOG_FMT_TIME); elog_set_fmt(ELOG_LVL_WARN, ELOG_FMT_LVL | ELOG_FMT_TAG | ELOG_FMT_TIME); elog_set_fmt(ELOG_LVL_INFO, ELOG_FMT_LVL | ELOG_FMT_TAG | ELOG_FMT_TIME); elog_set_fmt(ELOG_LVL_DEBUG, ELOG_FMT_ALL & ~(ELOG_FMT_FUNC | ELOG_FMT_T_INFO | ELOG_FMT_P_INFO)); elog_set_fmt(ELOG_LVL_VERBOSE, ELOG_FMT_ALL & ~(ELOG_FMT_FUNC | ELOG_FMT_T_INFO | ELOG_FMT_P_INFO)); elog_start();//启动 } void test_elog(void) {//测试函数 /* test log output for all level */ log_a("Hello EasyLogger!"); log_e("Hello EasyLogger!"); log_w("Hello EasyLogger!"); log_i("Hello EasyLogger!"); log_d("Hello EasyLogger!"); log_v("Hello EasyLogger!"); } 下载程序到W601,没有输出,啊哈哈…… 找了很久,原因是下面这个函数是空的,竟然是空的,就是在上面那个报warning原因的文件中,添加一句打印就行了 void elog_port_output(const char *log, size_t size) { /* output to terminal */ printf("%.*s", size, log); //添加这一句就可以打印了!!! /* add your code here */ } 至此,EasyLogger就移植好了,至于其他功能比如设置log等级的颜色之类的可以在elog_cfg.h中配置,就是之前注释掉的代码,可以一点一点测试。 |
|
|
|
只有小组成员才能发言,加入小组>>
3314 浏览 9 评论
2995 浏览 16 评论
3494 浏览 1 评论
9059 浏览 16 评论
4088 浏览 18 评论
1178浏览 3评论
605浏览 2评论
const uint16_t Tab[10]={0}; const uint16_t *p; p = Tab;//报错是怎么回事?
599浏览 2评论
用NUC131单片机UART3作为打印口,但printf没有输出东西是什么原因?
2335浏览 2评论
NUC980DK61YC启动随机性出现Err-DDR是为什么?
1896浏览 2评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-23 04:44 , Processed in 1.052334 second(s), Total 46, Slave 37 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号