赛恩-解决方案 结构化软件环境
赛恩 创造了一种模块化软件方案,使得针对射频-解决方案 模块的out-of-the-box(壳外)操作成为可能, 用户可使用开发套件参考设计案例直接设计自己的系统. 它还向用户提供了Cy-Net的易适应性概念,使其在满足用户网络需求及与其他诸如USB和以太网等硬件和通讯协议连接方面表现出易操作性.
赛恩-解决方案 结构化软件环境将代码分为系统资源, 技术功能, 和用户终端应用几个层面.
在 资源层 提供了基于处理器硬件的所有应用程序界面(API)的功能, 例如 定时器,计数器, UARTS(异步串行接口), 和通用输入/输出接口(GPIO). 这使得在更高层次开发的应用代码可以很容易在eCOG1K 和 eCOG1X 处理器之间,以及不同的应用项目之间切换和共享.
在 技术层 支持基于特殊硬件技术要求的更高层的功能. 这包括 赛恩-Micrel 射频栈, 与摄像头和显示器接口, 模拟接口 (如加速度计,温度表, 和电流互感器), 对GPRS modem的AT指令接口, GPS 器件, 和以太网通道. 每个技术层模块都有针对宏和应用层的API. 这使得当技术层发生变化时,应用程序只需要做微小的调整,而不是整体的修改.
在 宏层 利用资源层和技术层产生的API可以构建许多通用嵌入式功能. 它们包括JPEG 压缩程序, Ethernet和 UART的桥接函数, 和射频信道. 这些函数可被用户的应用代码直接调用或扩展 (在应用层).
在资源层中的Cy-Net
GPIO 信号被用于实现eCOG1k/1X 与 MICRF6XX 射频收发器之间的控制和数据信道传输. 赛恩的应用手册 AN035 描述了硬件实现微控制器和射频模块之间的数据传输.
异步串行接口 UART 通道被用来传输射频栈的测试诊断信息. 这包括打印流和调试信息. 同一串口 UART 通道还可用于使用SMS/或AT 指令界面传输射频栈的数据.
系统模块为射频协议提供了基础时序功能, 和用于跳频的时隙发生器.
技术层中的Cy-Net
Cy-Net 栈由4个协议层构成, 尽可能符合标准ISO模型.
第一层提供了所有用于控制MICRF6XX射频收发器在物理空气界面下发射和接收数据的函数. 在这一层的函数包括 射频模块上/下电, 射频模块在发射和接收模式之间切换, 和设置发射/接收频率.
第二层实现在射频网络中两个节点之间进行数据包传输的协议 (例如:数据链层). 这包括实现对射频器件进行数据采样的中断驱动程序. 这由从接收数据中恢复的时钟信号驱动. 第二层协议还引入一个16位系统地址,以过滤同一空间内其它射频网络的数据包.
第三层实现MicrelNet 网络的数据包路由协议. 这项工作与实现网络中节点网络地址解析工作的射频管理器协同实现. 网络地址长32位, 支持主/从启动配置. 网络层检查接收到的数据包并判断是否向上面的传输层传输(例如 数据包目的地是否是本节点). 第三层协议还可以向其子节点中继传输数据包, 或是忽略不再有用的数据包.
第四层检查目的地为本节点的数据包, 并且在向宏/应用层传递信息之前,从多个数据包中重组信息. 第四层协议还可以从宏/应用层接受信息并重组 需要传递给第三层的数据包的顺序. 第四层协议支持两种传输模式 - 可靠数据格式(RDP)和非可靠数据格式(UDP).