随笔-148  评论-1050  文章-1  trackbacks-4

ZigBee On Windows Mobile--2.硬件和软件设计

 

                                                  

    继续上一篇ZigBee On Windows Mobile--1.背景和结构,今天来讲讲硬件和软件设计。硬件设计主要是做ZigBee模块,输出文件一般包括原理图和PCB图。PCB图是最终给制板厂商的文件,制板厂商将PCB文件转化为Gerb文件进行PCB板加工。软件设计包括两部分,即ZigBee模块中的嵌入式程序和Windows Mobile端的应用程序,这两个软件模块运行在不同的平台之上,硬件上通过UART口进行通信。

    硬件设计使用了比较传统的Protel99se,采用了MC13192+GB60的设计和单芯片MC13213的设计原理图下载链接如下:

      http://files.cnblogs.com/dearsj001/GB60+13192.pdf

      http://files.cnblogs.com/dearsj001/MC13213.pdf

    硬件设计也没有太多可以讲述的,只要按照Freescale给的参考设计,自己根据需求,做相应的小小修改就可以。比较关键的是天线的设计。我们自己没有测试设备(频谱仪一个就10W),一般而言,就使用给出的参考设计天线,有倒F天线(非平衡式)、双鞭天线(平衡式)等。另外就是板材的选择和板厚也和通信距离有相当大的关系。

    嵌入式软件的设计采用CodeWarrior for HCS08 V3.1 开发环境,运用“前后台系统”的模式,前后台系统的基本思想是:硬件中断函数中只做非常少量而且是绝对必须的操作:如设置中断寄存器、保存数据寄存器等,然后置后台标志位,随即退出中断。这些操作称为“前台操作”。而后台操作是一个开放中断的无限循环。在循环中检查各后台标志位,如果某一标志位被置位,则说明有中断发生,立即调用相应的中断服务任务,这些任务被称为“后台操作”。

主程序流程如下图1所示:

 

                                                       

                                                              图1主程序流程图

        TargetInit()执行系统初始化操作,主要包括HCS08IOUARTTimer等模块的初始化。ConfigInit()执行配置初始化操作,主要包括SMAC协议和串口通信协议配置。ScheduleLoop()为主调度循环,根据状态来执行不同的任务,如下图2所示。其中的SYS_FEED_DOG()是指喂看门狗操作。

                                   

                                                               图2 主调度循环流程图

    在Windows Mobile设备上运行的用户应用程序,主要执行信息交互和显示功能。进一步说,用户要通过UI将命令发送给ZigBee模块,同时,Windows Mobile设备将ZigBee模块的情况通过UI呈现给用户。在Microsoft Visual Studio 2005IDE下,安装一个最新的Windows Mobile 6 professional SDK,配合自带的Emulator就可以进行开发和调试。软件可以分为几个模块:串口通信部分、界面UI部分和数据处理部分。由于本人比较熟悉C++,所以我选用了native code进行开发,建立一个基于对话框的MFC工程,将需要的控件加入对话框。具体流程如下图3所示。

 

                                                                                                                      

                                                                                                                      3  Windows Mobile设备应用程序流程图

其中的对话框初始化包括了界面的初始化,要强调的是串口的初始化。我们这里采用的串口参数如下:速率9600bps1个停止位,无奇偶校验。

工程的运行环境:VS2005 with SP1+.NET CF SP2+windows mobile professional SDK

工程源代码下载:http://files.cnblogs.com/dearsj001/WirelessFutureWM5_Emulator.rar

 

好了,今天就啰嗦到这里,明天继续讲调试,包括设备调试和模拟器调试。Enjoy!

本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
posted on 2008-10-15 22:54 施炯 阅读(1550) 评论(11) 编辑 收藏

评论:
#1楼 2008-10-15 23:12 | 工业酒精      
好奢侈。。。ZigBee模块好贵大~~~~
 回复 引用 查看   
#2楼[楼主] 2008-10-15 23:16 | 施炯      
@工业酒精
呵呵,自己做ZigBee模块成本不高,如果不算上可充电锂电池,用干电池的话,每个节点成本可以做到100RMB以内(包括芯片+做板+焊接)

 回复 引用 查看   
#3楼 2008-10-16 00:21 | 工业酒精      
--引用--------------------------------------------------
施炯: @工业酒精
呵呵,自己做ZigBee模块成本不高,如果不算上可充电锂电池,用干电池的话,每个节点成本可以做到100RMB以内(包括芯片+做板+焊接)
--------------------------------------------------------
还没到那水平能做ZigBee模块。。。。。

我自己在玩Arduino

 回复 引用 查看   
#4楼[楼主] 2008-10-16 09:56 | 施炯      
@工业酒精:

Arduino 是啥东东,google了一下,说是一块开放源码的板子。好玩么?

 回复 引用 查看   
#5楼 2008-10-16 11:24 | 工业酒精      
--引用--------------------------------------------------
施炯: @工业酒精:

Arduino 是啥东东,google了一下,说是一块开放源码的板子。好玩么?

--------------------------------------------------------

蛮好玩大。。。。呵呵。。。。。。

可以去国外网站看看,有很多好玩的应用。。。。

 回复 引用 查看   
#6楼[楼主] 2008-10-16 12:55 | 施炯      
@工业酒精
不错呀,sensors,lights,motors都有,可以做个小机器人了,呵呵。

 回复 引用 查看   
#7楼 2009-08-14 09:43 | yongshi123      
最近在研究串口通信方面,想通过串口来扩展手机的外设终端。

施炯兄,可以把你的联系方式发给我吗?大家交流交流。。。。。

 回复 引用 查看   
#8楼 2009-08-14 09:45 | yongshi123      
我的邮箱:583372061@qq.com
 回复 引用 查看   
#9楼 2011-03-21 09:15 | tseiyh      
很强大啊,但是这个链接是空的啊http://files.cnblogs.com/dearsj001/GB60+13192.pdf,能不能补上?
 回复 引用 查看   
#10楼 2011-04-03 13:36 | tseiyh      
楼主啊,你最上面那个模拟器的图和你另一篇《移动设备中ZigBee接口的实现》里面的图不一样啊,那个的界面四个按钮分别是CH Scan、CH Set、Power Set和Data Send,这篇的四个按钮分别是HIS,CON,MON,UMA,能不能解释下异同?另外这个的界面没有RX BOX和TX BOX。能不能把那个的源码贴一下?谢谢啊!
 回复 引用 查看   
#11楼 2011-04-03 13:38 | tseiyh      
如果能增加GPRS转发zigbee信息的功能就更好了,更实用,楼主能不能再写个代码实现啊,小弟是菜鸟一个,搞不定,谢谢啦!email:tseiyh@126.com
qq:54300965

 回复 引用 查看   
Locations of visitors to this page
欢迎访问施炯的技术博客,这是一个专注于移动开发的平台,致力于Windows Phone、Windows Mobile和Windows Embedded CE应用开发。

MVP
我的MVP配置


Get Microsoft Silverlight
昵称:施炯
园龄:3年4个月
粉丝:97
关注:13
<2008年10月>
2829301234
567891011
12131415161718
19202122232425
2627282930311
2345678

搜索

 
 

常用链接

最新随笔

我的标签

随笔档案(148)

文章档案(1)

Microsoft Most Professional

Mobile Blogs

Mobile Portal

MSDN Blogs

MVPs' Blogs

My Blog

My Portal

Windows Phone

积分与排名

  • 积分 - 262794
  • 排名 - 283

最新评论

阅读排行榜

评论排行榜

推荐排行榜