garfield

【原创】基于飞思卡尔MK3处理器的智能电表设计-软件部分

0
阅读(1475)

前一篇博文说了硬件,今天来说说软件,软件部分包括测量、计算、矫正、用户接口以及通信任务。在最后带大家看一下基于freemaster的调试方法。

软件是在iar开发环境下使用c语言写成,软件使用了飞思卡尔kinets-m系列处理器驱动库以及滤波算法库,下面这个图揭示了软件结构。

image

从该框图上看,软件共有如下几个部分:

1.应用程序内核:矫正、操作模式控制、数据处理、计算、人机接口控制、通信任务、参数管理

2.通信和freemaster:uart0驱动(接红外接口),freemaster协议库,uart1驱动(接隔离232接口),i2c驱动,uart3驱动,spi驱动(分别接umi rf和mc1323x)

3.时钟管理程序:锁相环驱动程序、独立实时时钟驱动

4.功率管理:系统模式控制驱动、功率管理控制驱动、复位控制驱动、低功耗定时器驱动

5.外部存储器:NVM驱动,spi驱动

6.辅助测量:ad转换器驱动

7.模拟测量和能量计算:模拟前端驱动和基于滤波的测量算法库

8.相电压频率测量:高速比较器驱动、四象限定时器驱动、外设开关矩阵驱动

9.脉冲输出生成:四象限定时器驱动、外设开关矩阵驱动

10.人机接口:段式lcd驱动和gpio驱动。

freemaster调试界面:飞思卡尔提供了一个非常有用也非常方便的可视化调试界面freemaster。

image

只需要在这个软件中做稍许设置就可以实时看到处理器采集到的数据,而且是以曲线形式显示的,非常的方便。

image

Baidu
map