基于Arm-Linux的嵌入式智能家居控制系统的设计
首先用Qt Desinger根据系统要求设计图形界面,建立槽函数开槽并且通过语句connect(PushButtonl,SIGNAL(clicked()),this,SLOT(set_userandphone()));建立信号与槽函数的连接。槽函数需要根据设计的功能需要编写。用UIC与MOC工具生成文件user.h、user.cpp及完成信号与插槽功能的moc_user.cpp程序,由PROGEN与TMAKE生成工程文件user.pro与Makefile。user.cpp中有SQLite数据库代码,要把库路径加到Makefile库文件的搜索路径中否则会因为找不到SQLite的库文件而编译失败。


要实现用户的用户名、密码等信息存到前面创建的user.db数据库中,要把创建表与插入数据的代码放到槽函数下。点击set按钮后就会产生一个信号来触发槽函数,实现数据库的创建与数据的存储。实现串口通信的功能把设置的信息传递给智能家居的各个控制模块,需通过设置struct termios结构体的各成员值实现波特率、校验位、停止位等设置,完成之后对串口的操作就可以像普通文件一样进行读写操作。串口通信程序代码也放到槽函数下边


完成X86环境下的编译之后需要修改Makefile文件把PC环境编译器gcc和g++修改为嵌入式环境下的arm-linux-gcc和arm-linux-g++,编译完成下载到文件系统的相应目录下并运行测试,系统的其他应用程序如系统工作模式设定、状态查询等也遵循同样的开发流程。
图5为第一个为系统的总体界面,里面包含12应用程序的图标。第二幅为示例应用程序的界面,在输入相应的信息后点击set按钮,用户名密码以及报警电话分别保存到了namekey与tel表中并发送给电话报警模块。达到了设定用户信息的设计目标。本文引用地址:https://www.eepw.com.cn/article/150896.htm
5 结束语
本文利用嵌入式数据库SQLite实现了对智能家居控制系统的数据管理,在管理效率上有了很大提高,节省了系统资源开销。应用Qtopia图形系统实现了操作界面的可视化界面更加友好,操作更加简单明了。系统运行稳定,很好的满足了设计要求。
评论