码迷,mamicode.com
首页 > 其他好文 > 详细

嵌入式框架Zorb Framework搭建一:嵌入式环境搭建、调试输出和建立时间系统

时间:2018-07-07 20:43:38      阅读:197      评论:0      收藏:0      [点我收藏+]

标签:inf   work   img   目的   分享图片   应用程序开发   技术   控制   nvic   

我是卓波,我是一名嵌入式工程师,我万万没想到我会在这里跟大家吹牛皮。

嵌入式框架Zorb Framework搭建过程

嵌入式框架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

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!