基于MB90F462的智能家居数据采集卡设计
,支持PPP、IP、UDP、TCP、DNS、SMTP、POP3、HTTP、FTP、Telnet等几乎所有的网络协议。通过AT+i指令设置并控制Iconnector,以实现数据的打包。Iconnector有两个标准的RS-232串行接口,在标有Modem字样的一端与MC35相连接,在另外标有Device字样的一端与数据采集卡相连接。用于GPRS数据传输的AT+i指令如表2所示。
2.4实时时钟模块
为了合理有效地管理各个用户的数据,特别是一些报警数据,应该记录其出现的实时时间。该数据采集卡采用了美国DALLAS公司推出的一种高性能、低功耗、带RAM的实时时钟芯片DS1302,它可以对年、月、日、周日、时、分、秒进行计时,具有闰年补偿功能;DS1302与CPU同步串行通讯,接口只需三根线:/RST、I/O、SCLK;一次可以读写1个字节数据或31个字节的字符串;共有七个数据寄存器,即秒、分钟、小时 、日期、月份、周和年份寄存器;命令字的地址从80H~8DH,奇数为读,偶数为写;一个时钟周期由下降沿开始,上升沿结束;写入数据时,在时钟的上升沿期间数据必须保持有效,读出数据时,在时钟的下降沿期间数据有效;如果,RST输入低电平,中止所有的数据传输并且I/O呈高阻态;数据输入/输出的时序是首先写入一个字节的命令字节(读或写),后面紧跟8个时钟周期读出/写入一个字节的数据。
虽然DS1302的功耗很小,但是如果要长时间保证时钟正常,最好选用小型充电电池或0.1F以上的超级电容作为备用电源。如果断电时间较短,可以用漏电较小的普通电解电容器代替。DS1302在第一次加电后必须进行初始化操作,之后即可按正常方法调整时间。
此外,系统还配置了RS-232、RS-485接口和EEPROM数据存储器,方便与其他设备的连接,并实现掉电数据保护功能。
3 Accemic MDE调试
Accemic MDE是目前市场上能够调试Fujitsu 16LX系列不带仿真器的单片机的首选工具,其监控内核与应用程序是并行运行的,所以了解其监控内核的工作方式非常重要。使用Accemic MDE进行调试应严格按照如下步骤进行:
(1)在启动Accemic之前按以下步骤连接硬件(勿接电源)
(a)将MB90F462置为编程状态,即MD0、MD1、MD2、P00、P01分别设为ON(=0)、OFF(=1)、OFF、ON、ON。
(b)用串行电缆连接目标板的Bootloader-UART和PC机的COM端口,(对于MB90460系列,UART0为Bootloader-UART)。
(c)给目标板加电。
(2)启动Accemic调试环境
(a)打开preference│systerm菜单,设置CPU类型、封装形式、工作时钟、倍频数、通讯波特率、复位线路和COM端口号等。
(b)按下"Download Monitor"按钮导入监控内核;
(c)使目标系统处于复位状态,将单片机切换到工作状态,即MD0、MD1、MD2、P00、P01分别设为OFF、OFF、ON、X、X。
(d)退出复位状态,此时可以通过监控内核访问目标系统。
(e)按下"Connect"按钮开始连接调试。
(3)Aecemic MDE调试注意事项
(a)调试前将位于Accemic MDE的安装目录C:\programs\AccemicMDEinclude下的文件"monitor.asm"添加到用户工程中;如果要使用目标信息功能,要在应用程序中包含"monitor.h"文件(与monitor.asm在同一目录下)。
(b)如果Bootloader-UART未使用外部时钟,不要使用改变PLL时钟寄存器的功能。PLL时钟可以通过"start.asm"中的设置来修正,确保其中CLOCKSPEED的设置为NOCLOCK。
(c)调试时不能改变Bootloader-UART中断级别及Bootloader-UART的寄存器设置,注意在文件"vectors.c"中不要覆盖Bootloader-UART的中断级别。
(d)如果要使用看门狗定时器,需要开启Accemic MDE的看门狗定时器自动更新功能,即在程序中调用acc_WatchdogEnable()函数。
(e)调试中为了让Monitor能够进入中断服务程序中的断点,必须满足两个条件:一是在程序中允许中断,即调用_EI()函数;二是中断服务程序的中断级别高于7(因为Bootloader-UART的中断级别是7)。
(f)MB90F462带有两个UART,其中UART0是BootloaderUart,用于在线调试和烧录程序,也可以和用户程序复用。复用时需要调用Accemic MDE中定义的函数acc_KernelUART(1),参数默认值为1,表示UART0用作正常的用户程序通信;参数默认值为0,表示UART0用作调试接口,用户程序中没有用到UART0时不需要调用此函数。
综上所述,该数据采集卡提供8路模拟量输入及8路开关量输入接口,具备两路RS-232接口,支持RS-485、RS-232、3.3V、5V等多种输入电平,可以实现现场数据采集和远程传输,远程通讯及传输方式有GPRS和SMS;而且可以对现场设备实行远程开关量控制。该数据采集卡传输与协议转换透明化,使用方便、可靠,而且配备系统配置和维护接口,方便现场维护,可普遍应用
- 看国外如何节电(01-03)
- 智能家居系统分类(01-07)
- IP智能家居控制系统(01-04)
- 家居智能化营造方便舒适居家环境(01-07)
- 解读智能家居 (01-04)
- 家居智能化营造方便舒适居家环境(2)(01-07)