摘要: 和前面类似,使用宏,就可以将变量输出至FinshFINSH_VAR_EXPORT(count, finsh_type_int, count variable for finsh);程序#include #include static rt_thread_t tid = RT_NULL;static ... 阅读全文
posted @ 2013-04-07 14:20 lyyyuna 阅读(315) 评论(0) 推荐(0) 编辑
摘要: 可以直接在Finsh中运行自己定义的函数。官方有三种方式,我觉得第二种比较方便,其他就不介绍了。首先需要在application.c 中包含 finsh.h 头文件,然后在函数下方添加宏FINSH_FUNCTION_EXPORT(fun_with_arg, function with a argum... 阅读全文
posted @ 2013-04-07 14:09 lyyyuna 阅读(372) 评论(0) 推荐(0) 编辑
摘要: Finsh是调试的利器,它可以获取系统运行时信息,对任意寄存器和内存地址进行读写操作,还能直接调用系统函数访问系统变量。要使用这个功能,需要开启/* SECTION: Finsh, a C-Express shell */#define RT_USING_FINSH/* Using symbol t... 阅读全文
posted @ 2013-04-07 14:00 lyyyuna 阅读(535) 评论(0) 推荐(0) 编辑
摘要: 定时器可以通过rt_timer_control(),来改变定时器的某些特性,比如定时时间。这里,一开始定时周期是100,并且在程序中使用 rt_tick_get()-tick来确认定时周期是否如预设那样。当8次之后,使用rt_timer_control(),将定时周期改为3000。实际效果通过打印的... 阅读全文
posted @ 2013-04-07 13:44 lyyyuna 阅读(377) 评论(0) 推荐(0) 编辑
摘要: 动态和静态的意思和前面完全一样,这里不再重复。这里创建两个动态定时器,一个是周期的另一个是单次的。其中timeout() 函数都是回调函数,即定时时间到之后,操作系统会自动调用的函数。 程序:#include static rt_timer_t timer1;static rt_timer_t ti... 阅读全文
posted @ 2013-04-07 13:35 lyyyuna 阅读(238) 评论(0) 推荐(0) 编辑
摘要: 定时器分为软件定时器和硬件定时器。硬件定时器,是指单片机本身提供的一种外设,能够产生定时事件,而且不占用CPU时间。优点是定时精度高,独立于CPU,还可灵活配置其他许多功能,例如PWM。而软件定时器是操作系统提供的一种定时接口,其精度取决于操作系统的tick时间,而RTOS的tick建立在硬件定时器... 阅读全文
posted @ 2013-04-07 13:30 lyyyuna 阅读(669) 评论(0) 推荐(0) 编辑
摘要: 内存池是一种静态的内存管理方法。它预先将一块固定连续的内存区域划分成几个大小不同的块。使用者申请时就将对应大小的内存块给他。这种方法的优点是不会有内存碎片,但不够灵活,适用于需要频繁存取的场合,例如buffer。这个例子有两个线程。thread1不停分配内存块,但其中并没有使用delay() 来使自... 阅读全文
posted @ 2013-04-07 13:16 lyyyuna 阅读(269) 评论(0) 推荐(0) 编辑