打印
[STM32F1]

(转)单片机中应用观察者模式

[复制链接]
592|2
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
paotangsan|  楼主 | 2018-8-15 12:41 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本文博客链接: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.h.rar (934 Bytes)
dw1000.c
dw1000.c.rar (1.62 KB)
main.c中观察dw1000模块的接收数据:



  • //增加接收数据观察者



  •         dw1000_register_observer_rx(deal_rx);






处理函数:


  • void deal_rx(struct _Dw1000_Rx rx)



  • {



  •          //处理...



  •          __nop();



  •          __nop();



  •          __nop();



  • }


沙发
wakayi| | 2018-8-15 12:48 | 只看该作者
如何设置进入这种模式呢

使用特权

评论回复
板凳
paotangsan|  楼主 | 2018-8-16 09:23 | 只看该作者
并不是说单片机有这种模式 只是用另外一篇单片机来做观察者

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

51

主题

4069

帖子

0

粉丝