这里需注意的是:SPCE06lA主控板和以太网模块必须共地,最好采用同一电源供电,该以太网模块供电电压必须为5 V,控制I/O端口电压为3.3 V;SPCE061A主控板和以太网模块之间用于数据传输的控制线的长度应不超过20 cm;供电电流大于200 mA。
1.3 控制电路
外接电器控制电路是实现单片机到电器控制的主体,单片机通过处理网页得到用户的操作指令,将指令转化为电信号通过单片机的I/O接口送给外接电器控制电路,经三极管的两级放大,再通过继电器完成外接电器与交流220 V电源的接通和断开以及指示灯的点亮和熄灭等操作。图3为控制电路原理图。
在设计该控制电路时,应注意的是:控制电路的继电器工作电压为6 V,但实际供电电压应大于6 V,以保证继电器更好的工作;指令控制端口的电压应为5 V,如果达不到,应加放大电路放大,以免影响指令执行。
1.4 电源及供电转换电路
该电源电路设计是将交流220 V通过变压器转换成直流9 V,为外接电器控制电路供电,同时在通过三端集成稳压器7805将直流12 V转换成5 V,分别给SPCE061A主控板和以太网模块供电。这样可使用户采用最常用的电源,即可为对该设备供电。其电路如图4所示。
图4中,变压器的选择要合适,三端集成稳压器要做好散热设备,以免烧坏,导致整个设备无法正常工作。
2 系统软件设计
2.1 服务器程序
根据需求分析,软件设计需要实现在藏文基础上的TCP服务器,同时,考虑到人性化,在家电动作方面也给出藏文语音提示,其核心是unIP的移植和TCP服务器的实现。其中,unIP协议栈是运行在凌阳公司unSP系列单片机上的一个精简TCP/IP协议栈。协议栈的初始版本由LwIP移植而来,它不仅仅只是LwIP说明的arch目录下的改动, core部分也做了不少的修改以适应unSP的16 bit的特性到协议栈中,unSP并不具有8 bit的数据类型,地址也是以16 bit为单位,因此unIP与LwIP并不兼容,此外还增加DNS Client域名解析客户端以及分应用实例,例如WEB SERVER等。保持协议栈的完整性。该设计方案需利用unIP协议栈中提供的运输层TCP协议,建立应用层HTTP协议,以便完成Web服务器,使得网页和服务器的数据能够相互通信。
单片机端TCP服务器的实现:HTTP协议是一个常见应用层协议,它是基于TCP协议的。在本方案中通过unIP提供的TCP/IP协议的一些接口函数API实现该应用层协议。实现整个服务器的具体思路为:
1)初始化unIP协议栈,然后使用DM9000创建一个网络接口,添加至unIP协议栈内,并将其设置为unlP协议栈的默认网络接口。