本文博客链接:http://blog.csdn.net/jdh99
环境: 主机:WIN8 开发环境:MDK5.13 mcu: stm32f103RB
说明: 之前在java中应用观察者模式,现将此模式的思想应用在单片机程序设计中 Android编程:观察者模式设计: http://blog.csdn.net/jdh99/article/details/41821295 观察者模式本质: 有两个模块A,B。A是目标,B是观察者。则B能观察到A的变化。 在程序实现中过程是: 1.A产生数据 2.A通知B 3.B处理数据 单片机中实现的方法: Java中通过接口实现此思想,单片机是C语言编程,则可以通过函数指针来实现。 源代码中dw1000通信模块提供了两个被观察的目标:接收数据,发送数据完成。 源代码:
dw1000.h dw1000.c main.c中观察dw1000模块的接收数据:
//增加接收数据观察者
dw1000_register_observer_rx(deal_rx);
处理函数:
void deal_rx(struct _Dw1000_Rx rx)
{
//处理...
__nop();
__nop();
__nop();
}
|