基于ARM Contex-A8 Tiny210的简单室内人员数目监测系统实现(3)
来源:互联网 发布:付费语音问答源码 编辑:程序博客网 时间:2024/05/21 09:01
这一篇就把人员数目这个小系统结束了。接着上一篇,获取总数count后,需要通过串口传送到PC端。
首先说下Tiny210的串口发送:
arm qt下好像还没有跟windows平台下一样的写的比较完整的串口程序,所以分享个自用的。
定义一下,串口打开标志和函数声明
public: int fd; int openSerialPort(); void send_to_port();
接着是打开串口、串口定义的程序(就是自用的),这里devicename要根据自己的来,简单的方法是查看Tiny210上自带的comping或者串口助手。另外,要包含个
#include <termio.h>
的头文件。
int pnc::openSerialPort(){ fd = -1; const char *devName = "/dev/ttySAC3"; fd = ::open(devName, O_RDWR|O_NONBLOCK); if (fd < 0) { return -1; } termios serialAttr; memset(&serialAttr, 0, sizeof serialAttr); serialAttr.c_iflag = IGNPAR; serialAttr.c_cflag = B115200 | HUPCL | CS8 | CREAD | CLOCAL; serialAttr.c_cc[VMIN] = 1; if (tcsetattr(fd, TCSANOW, &serialAttr) != 0) { return -1; } return fd;}
接下来,就是在主程序中打开串口了
fd = openSerialPort(); if (fd < 0) { QMessageBox::warning(this, tr("Error"), tr("Fail to open serial port!")); return ; }
串口打开完成后,需要做的就是在人员数目发生变化时将count发送出去,这个很简单
send_to_port();
这句写在上一篇的switch语句后面就可以了,在主程序中。
void pnc::send_to_port(){ char buf[10]; sprintf(buf, "%d", count);// ::write(fd,buf,strlen(buf));}
到这里,Tiny210板子上的串口发送工作就完成了。剩下的是PC端的串口接收,由于windows下qt的串口程序很成熟,有很多分享,我也会分享一个。
直接介绍接收程序,也比较简单
struct PortSettings myComSetting = {BAUD115200,DATA_8,PAR_NONE,STOP_1,FLOW_OFF,500}; myCom = new Win_QextSerialPort("com1",myComSetting,QextSerialBase::EventDriven); myCom ->open(QIODevice::ReadWrite); //int count; //count=0; //a->setText(QString::number(count)); connect(myCom,SIGNAL(readyRead()),this,SLOT(readMyCom())); QObject::connect(quit,SIGNAL(clicked()),this,SLOT(close()));}void pnc::readMyCom() { QString temp = myCom->readAll(); //Alln->setText(""); //QString count; //count=temp; Alln->append(temp);
同样串口号自己看设备管理器,串口的头文件自己include一下。
#include "win_qextserialport.h"
PC端的界面,简单一画就ok。
这样这个室内人员数目的小系统就算完成了,最后的通信方式,可以自选WiFi什么的,随便了。
最后想要完整的程序的,可以评论留邮箱。虽说还是希望多交流的
0 0
- 基于ARM Contex-A8 Tiny210的简单室内人员数目监测系统实现(3)
- 基于ARM Contex-A8 Tiny210的简单室内人员数目监测系统实现(1)
- 基于ARM Contex-A8 Tiny210的简单室内人员数目监测系统实现(2)
- contex-A8 uboot移植(一)
- 基于WiFi的室内定位系统设计与实现
- 基于蓝牙与ARM的远程智能家居监测系统设计
- 三星S5PV210(ARM Cortex-A8)的时钟分频系统
- linux下基于Qt的udp协议 pc机与Tiny210(arm板子)互相发送文字信息的实现 记录(1)
- 基于ARM Cortex -A8 的S5PV210处理器的学习笔记(1)
- 基于SNMP协议的电信网络监测系统的实现
- 基于SNMP协议的电信网络监测系统的实现
- 基于ARM v7 Cortex A8的开发平台
- 最新ARM内核-contex的MCBSTM32
- 一、基于Cortex-A8和ZigBee技术的智能家居监控系统的设计与实现
- 二、基于Cortex-A8和ZigBee技术的智能家居监控系统的设计与实现
- 三、基于Cortex-A8和ZigBee技术的智能家居监控系统的设计与实现
- 四、基于Cortex-A8和ZigBee技术的智能家居监控系统的设计与实现
- 一种基于WiFi的室内定位系统设计与实现 _RFID世界网
- unity3d动画插件iTween-路径动画的制作
- TOOLTIPS 的相关用法
- 移动GIS开发之一 基于arcgis mobile10的开发环境的搭建
- 简单数据结构之栈模拟
- poj1324 Holedox Moving
- 基于ARM Contex-A8 Tiny210的简单室内人员数目监测系统实现(3)
- Laravel教程:laravel 4安装及入门
- conn.setAutoCommit()用法及作用
- GCD-semaphore(资源)-apply
- 美华裔男生入选美军预备军官 获25万美元奖学金
- .NET 程序集与命名空间
- 黑马程序员-高新注解学习日记
- EvtCleanupCallback
- git常用命令