资源简介
这个智能家居控制系统,是本人亲身体会的第一个嵌入式项目,在开发过程中遇到了许多的技术难题,均已一一解决。本智能家居系统主要监控视频,温度,红外,自动发短消息,自动报警等功能。
代码片段和文件信息
#include
#include
#include
#include
#include
#include “linux/input.h“
#include “log.h“
#include “device.h“
#include “msg.h“
/* 功能:打开设备
* 返回值:-1:失败; 0:成功
* 参数:无
* */
int init_device(void)
{
int arg = 12;
regeditorfd = open(REGEDITOR_DEV O_RDWR);
if(regeditorfd < 0) {
ERROR(“open regeditor device error\n“);
return -1;
}
ledfd = open(LED_DEV O_RDWR);
if(ledfd < 0) {
ERROR(“open led device error\n“);
return -1;
}
beepfd = open(BEEP_DEV O_RDWR);
if (beepfd < 0) {
ERROR(“open beep device error\n“);
return -1;
}
tempfd = open(TEMP_DEV O_RDWR);
if (tempfd < 0) {
ERROR(“open temperature device error\n“);
return -1;
}
adcfd = open(ADC_DEV O_RDWR);
if (adcfd < 0) {
ERROR(“open adc device error\n“);
return -1;
}
buttonfd = open(BUTTON_DEV O_RDWR);
if (buttonfd < 0) {
ERROR(“open button device error\n“);
return -1;
}
eepromfd = open(EEPROM_DEV O_RDWR);
if (eepromfd < 0) {
ERROR(“open eeprom device error\n“);
return -1;
}
#if 0
lcdfd = open(LCD_DEV O_RDWR);
if (lcdfd < 0) {
ERROR(“open lcd device error\n“);
return -1;
}
gprsfd = open(GPRS_DEV O_RDWR);
if (gprsfd < 0) {
ERROR(“open gprs device error\n“);
return -1;
}
zigbeefd = open(ZIGBEE_DEV O_RDWR);
if (zigbeefd < 0) {
ERROR(“open zigbee device error\n“);
return -1;
}
if (init_uart(gprsfd B115200) == -1) {
ERROR(“init uart for gprs error\n“);
return -1;
}
if (init_uart(zigbeefd B115200) == -1) {
ERROR(“init uart for zigbee error\n“);
return -1;
}
if (gprs_config() == -1) {
ERROR(“config gprs center error\n“);
return -1;
}
#endif
/* 配置温度传感器*/
ioctl(tempfd IOCTL_DS18B20_S_BIT &arg);
/* 配置ADC*/
adc_config(10 1);
return 0;
}
/* 功能:初始化串口
* 返回值:0:成功;1:失败
* 参数fd:串口文件描述符,即那个串口
* 参数speed:波特率
* */
int init_uart(int fd int speed)
{
struct termios options;
bzero(&options sizeof(options));
cfsetispeed(&options speed);
cfsetospeed(&options speed);
options.c_cflag |= (CS8 | CREAD);
options.c_iflag |= IGNPAR;
tcflush(fd TCIFLUSH);
tcsetattr(fd TCSANOW &options);
return 0;
}
/* 功能:配置GPRS短信服务中心
* 返回值:1:失败;0:成功
* 参数:无
* */
int gprs_config(void)
{
char *cmd[] = {“AT+CMFG=1\r“
“AT+CSCA=\“+8613800100500\“\r“};
int i;
for (i = 0; i < sizeof(cmd) / sizeof
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2013-03-08 20:14 gprs_security\
目录 0 2013-03-08 20:14 gprs_security\.git\
目录 0 2013-03-08 20:14 gprs_security\.git\branches\
文件 265 2012-10-29 09:42 gprs_security\.git\config
文件 73 2012-10-29 09:42 gprs_security\.git\desc
文件 23 2012-10-29 09:42 gprs_security\.git\HEAD
目录 0 2013-03-08 20:14 gprs_security\.git\hooks\
文件 452 2012-10-29 09:42 gprs_security\.git\hooks\applypatch-msg.sample
文件 896 2012-10-29 09:42 gprs_security\.git\hooks\commit-msg.sample
文件 189 2012-10-29 09:42 gprs_security\.git\hooks\post-update.sample
文件 398 2012-10-29 09:42 gprs_security\.git\hooks\pre-applypatch.sample
文件 1704 2012-10-29 09:42 gprs_security\.git\hooks\pre-commit.sample
文件 4898 2012-10-29 09:42 gprs_security\.git\hooks\pre-reba
文件 1239 2012-10-29 09:42 gprs_security\.git\hooks\prepare-commit-msg.sample
文件 3611 2012-10-29 09:42 gprs_security\.git\hooks\update.sample
文件 1896 2012-10-29 09:42 gprs_security\.git\index
目录 0 2013-03-08 20:14 gprs_security\.git\info\
文件 240 2012-10-29 09:42 gprs_security\.git\info\exclude
目录 0 2013-03-08 20:14 gprs_security\.git\logs\
文件 196 2012-10-29 09:42 gprs_security\.git\logs\HEAD
目录 0 2013-03-08 20:14 gprs_security\.git\logs\refs\
目录 0 2013-03-08 20:14 gprs_security\.git\logs\refs\heads\
文件 196 2012-10-29 09:42 gprs_security\.git\logs\refs\heads\master
目录 0 2013-03-08 20:14 gprs_security\.git\ob
目录 0 2013-03-08 20:14 gprs_security\.git\ob
目录 0 2013-03-08 20:14 gprs_security\.git\ob
文件 4852 2012-10-29 09:42 gprs_security\.git\ob
文件 128988 2012-10-29 09:42 gprs_security\.git\ob
文件 94 2012-10-29 09:42 gprs_security\.git\packed-refs
目录 0 2013-03-08 20:14 gprs_security\.git\refs\
目录 0 2013-03-08 20:14 gprs_security\.git\refs\heads\
............此处省略110个文件信息
- 上一篇:D3 地图可视化数据美国地图
- 下一篇:数学形态学方法及应用-崔屹
相关资源
- 计算机控制课程设计报告
- 湘潭大学人工智能实验采用遗传算法
- 基于ARM处理器的烟雾报警控制系统实
- 全智能小车的需求分析,分高低中
- 人工智能10年试卷
- 基于51单片机的智能充电器
- 华工人工智能试卷
- 面向水产养殖的智能化补氧与报警系
- 基于单片机的交通灯控制系统设计
- 用一个CI算法解决实际的问题 计算智
- 基于51单片机的全自动洗衣机控制系统
- 基于ZigBee 技术的路灯无线网络控制系
- 人工智能实验报告 五子棋游戏
- 一类大滞后时间系统的智能PID控制
- 天津大学人工智能往年卷
- 基于51单片机的智能火灾报警系统-完
- 智能水滴改进算法
- 温室大棚控制系统设计
- 基于模糊PID控制的多电机同步控制系
- 基于AT89S51单片机的PID温度控制系统设
- 基于OpenCV的云台控制系统
- QT 串口温湿度控制系统
- 433遥控.rar
- 基于labview教室照明控制系统的设计
- 51单片机多功能电梯模拟控制系统-接
- 坡道识别方案比较及改进
- 单片机恒温箱温度控制系统的设计
- 智能温度传感器Proteus+Keil含功能思路
- 基于LabVIEW的液罐监测与控制系统
- 毕业设计\\智能家用燃气泄漏报警器
评论
共有 条评论