QQFeeder喂食器的代码分为设备端和服务器端两部分。设备端使用Arduino作为主控,代码使用C++编写;服务器端使用php编写,数据库使用mysql,web容器使用apache httpd。
1、设备端
获取到设备侧代码以后,找到configure.h打开并修改,根据自己的wifi信息进行配置
#ifndef _CONFIGURE_H_H_
#define _CONFIGURE_H_H_
/**********************************
*******1、WIFI热点信息设置********
**********************************/
/*WIFI的SSID*/
#define SSID "myssid"
/*WIFI的密码*/
#define WIFIPASSWORD "mypassword"
/**********************************
******2、EEPROM地址信息设置*******
**********************************/
/*
EEPROM内存规划表
+------+------+------+------+------+------+------+
地址:| A+0 | A+1 | A+2 | A+3 | A+4 | A+5 | A+6 |
+------+------+------+------+------+------+------+
用途:|定时器|定时器|定时器|定时器|定时器|定时器|电机旋|
|1小时 |1分钟 |1秒 |2小时 |2分钟 |2秒 |转次数|
+------+------+------+------+------+------+------+
*/
//EEPROM起始地址A
#define EEPROM_ADDR_BEGIN 10
/********************************
*******3、DS1302信息设置********
********************************/
//DS1302连接到Arduino的引脚
#define PIN_CE 5
#define PIN_DATA 6
#define PIN_SCLK 7
/********************************
******4、步进电机信息设置*******
********************************/
/*电机转一圈需要的脉冲数*/
#define MOTOR_STEPS 4096
/*对应电机的橙色线*/
#define MOTOR_PIN1 8
/*对应电机的黄色线*/
#define MOTOR_PIN2 9
/*对应电机的粉色线*/
#define MOTOR_PIN3 10
/*对应电机的蓝色线*/
#define MOTOR_PIN4 11
/*步进电机转动速度*
#define MOTOR_SPEED 10
/********************************
********5、闹钟信息设置*********
********************************/
/*闹钟时间设置{小时,分钟,秒}*/
#define ALARM_ONE {7,40,55}
#define ALARM_TWO {23,02,00}
/*闹钟响时电机旋转的圈数*/
#define ALARM_STEP 1
/********************************
*******6、云端服务器设置********
********************************/
/*云端服务器地址*/
#define CLOUND_SERVER "www.mydomin.com"
#define CLOUND_PORT 80
#endif
2、服务器
首先需要有一个自己的web服务器,如果没有也可以在本地使用Apache httpd和php搭建一个,服务器的搭建方法:Apache+php环境在weindows下配置
服务器搭建好以后,别忘了还需要本地安装一个mysql,用来保存喂食器的配置和日志信息。
获取到服务端代码以后,找到feeder.sql,使用mysql管理工具把sql脚本导入到mysql,初始化数据库和表。
在找到configuration.php文件打开并修改,根据自己mysql的ip地址、用户名、密码等信息进行修改
$dbcnf=array();
//mysql地址
$dbcnf['addr']='localhost';
//数据库名
$dbcnf['name']='feeder';
//用户名
$dbcnf['user']='usename';
//密码
$dbcnf['pwd']='password';
?>
最后在apache httpd的htdocs文件夹下建一个xxx的文件夹,并把所有代码都拷贝到xxx文件夹中。