标签:inf work img 目的 分享图片 应用程序开发 技术 控制 nvic
嵌入式框架Zorb Framework搭建一:嵌入式环境搭建、调试输出和建立时间系统
嵌入式框架Zorb Framework搭建二:环形缓冲区的实现
嵌入式框架Zorb Framework搭建三:列表的实现
嵌入式框架Zorb Framework搭建四:状态机的实现
嵌入式框架Zorb Framework搭建五:事件的实现
嵌入式框架Zorb Framework搭建六:定时器的实现
嵌入式框架Zorb Framework搭建七:任务的实现
之前,我一直以为C语言只是面向过程的语言,直到我发现它也可以用来创造对象。现在,我就要用面向对象的思想来搭建一个轻量级的嵌入式框架Zorb Framework。搭建Zorb Framework的目的是为在不能运行Linux的芯片上快速开发应用,不用反复造轮子。
Zorb Framework的初步设计功能有
1、时间系统功能zf_time
2、环形缓冲区功能zf_buffer
3、列表功能zf_list
4、状态机功能zf_fsm
5、事件功能zf_event
6、定时器功能zf_timer
7、任务功能zf_task
前6个功能,就可以实现纯事件驱动的程序,基本可以满足中小型嵌入式应用程序开发的需求。加上任务功能,是为了满足部分程序对实时性要求较高的需求。当然,也可以将前6个功能裁剪出来,然后运行在现有的嵌入式系统上面,这样子也可以满足实时性的需求。
采用STM32F429开发板作为硬件运行环境,硬件资源用到串口1和systick,其中串口1提供调试打印功能,systick提供系统时间计数功能。
关于硬件环境的搭建不多说,可以参照开发板提供的例程来搭建,板级初始化完成了调试串口和systick的初始化。
/****************************************************************************** * 描述 :硬件环境初始化 * 参数 :无 * 返回 :无 ******************************************************************************/ void BSP_init(void) { /* 嵌套向量中断控制器组选择 */ NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2); /* 初始化调试串口 */ Debug_USART_init(); /* Systick初始化 */ SystemTick_init(); } /****************************************************************************** * 描述 :硬件底层程序 * 参数 :无 * 返回 :无 ******************************************************************************/ void BSP_process(void) { }
开发一个程序,最开始也最重要的是搭建调试的环境,我们采用串口1作为调试输出,然后调试信息分为三个等级,后续上位机可以根据不同等级进行高亮提示:
嵌入式框架Zorb Framework搭建一:嵌入式环境搭建、调试输出和建立时间系统
标签:inf work img 目的 分享图片 应用程序开发 技术 控制 nvic
原文地址:https://www.cnblogs.com/54zorb/p/9277802.html