【物联网智能网关-02】获取摄像头数据+显示

简介: 开发了一套扩展库,用户只要几行代码,就可以完成和传感器的通信,从而获取数据。YFSoft.Hardware.Camera.PTC01.dll就是一种这样的库。

在上一篇文章《通过AD采集获取温湿度》我们介绍了物联网智能网关的AD端口的使用情况,AD接口是.NET Micro Framework标准库函数之一,只要底层BSP支持就可以直接使用。但是对一些比较复杂的传感器,比如串口摄像头就没有什么库可以直接使用了,需要用户根据摄像头的通信协议,进行串口编程,由于相对复杂,对一些初入门用户是有一些开发难度的。鉴于此,故开发了一套扩展库,用户只要几行代码,就可以完成和传感器的通信,从而获取数据。YFSoft.Hardware.Camera.PTC01.dll就是一种这样的库。

在我以前写过的一篇文章《摄像头蓝牙图像远程获取》中曾介绍过YFSoft.Hardware.Camera.PTC01.dll库的使用,不过当时由于.NET Micro Framework开发板并不支持WPF,所以没有在LCD上显示。今天的程序示例和以前的有所不同,是通过用户按按钮进行拍照的,并且把照片显示在LCD上。

物联网智能网关共引出5个串口,其中串口1为调试口,串口5为485口,其他三个串口都可以使用(注意:紫藤207系统的COM2其实是COM6),我们使用COM3。

摄像头除了一个串口外,还引出两根线,白线或红线接5V电源正,黑线或灰线接电源负。开发板本身有5V接口,串口地和电源地是互通的,所以我们只需要把白线或红线接入5V端子即可,黑线或灰线就不用管了。当然你也可以不用开发板上输出的电源(输出功率相对较小),直接外接5V电源也可以。

首先在代码中要打开串口,设置必要的参数:

PCT01 pct01 = new PCT01("COM3", PCT01.Baudrate.Baudrate_38400);                        

    if (!pct01.Open()) 

    {

        Debug.Print("Open failed");

        pct01.Close();

        return;

}

摄像头有两种图像大小可以获取,一个是320240,一个是640480,由于我们的LCD的分辨率是320240,所以我们设置获取的图片的大小就为320240。

if (!pct01.SetPhotoSize(PCT01.PhotoSize.Photo_320_240))

    {

        Debug.Print("SetPhotoSize failed");

        pct01.Close();

        return;

    }

另外摄像头还可以设置jpg的压缩率,压缩率越高,jpg的图片越小,但是越不清晰。

if (!pct01.SetCompressRatio(0x36))  //0xFF

    {

        Debug.Print("SetCompressRatio failed");

        pct01.Close();

        return;

    }

按键相关的代码,由于比较简单,这里就略去不说了,有兴趣的朋友,可以参见我以前写的文章《GPIO测试》。

按钮按下后,发出图像获取指令,图像获取后,就在LCD上显示:

byte[] picData = null;

pct01.GetPhoho(out picData);

Bitmap bmp = new Bitmap(picData, Bitmap.BitmapImageType.Jpeg);

bmp.Flush();

非常简洁的几句代码,就完成了图像获取和图像显示。实际的拍摄效果图如下:
image.png

本文源码:http://www.sky-walker.com.cn/MFRelease/Sample/YFCamera_Test.rar

MF简介:http://blog.csdn.net/yefanqiu/article/details/5711770

MF资料:http://www.sky-walker.com.cn/News.asp?Id=25

相关实践学习
钉钉群中如何接收IoT温控器数据告警通知
本实验主要介绍如何将温控器设备以MQTT协议接入IoT物联网平台,通过云产品流转到函数计算FC,调用钉钉群机器人API,实时推送温湿度消息到钉钉群。
阿里云AIoT物联网开发实战
本课程将由物联网专家带你熟悉阿里云AIoT物联网领域全套云产品,7天轻松搭建基于Arduino的端到端物联网场景应用。 开始学习前,请先开通下方两个云产品,让学习更流畅: IoT物联网平台:https://iot.console.aliyun.com/ LinkWAN物联网络管理平台:https://linkwan.console.aliyun.com/service-open
相关文章
|
1月前
|
人工智能 监控 物联网
深度探索人工智能与物联网的融合:构建未来智能生态系统###
在当今这个数据驱动的时代,人工智能(AI)与物联网(IoT)的深度融合正引领着一场前所未有的技术革命。本文旨在深入剖析这一融合背后的技术原理、探讨其在不同领域的应用实例及面临的挑战与机遇,为读者描绘一幅关于未来智能生态系统的宏伟蓝图。通过技术创新的视角,我们不仅揭示了AI与IoT结合的强大潜力,也展望了它们如何共同塑造一个更加高效、可持续且互联的世界。 ###
|
1月前
|
传感器 安全 算法
物联网发布者在数据传输过程中如何防止数据被篡改
在物联网数据传输中,为防止数据被篡改,可采用加密技术、数字签名、数据完整性校验等方法,确保数据的完整性和安全性。
|
1月前
|
存储 安全 算法
物联网发布者在发送数据时如何保证数据的安全性和完整性
数据加密、密钥管理和数据完整性验证是物联网安全的重要组成部分。对称加密(如AES)和非对称加密(如RSA)分别适用于大量数据和高安全需求的场景。密钥需安全存储并定期更新。数据完整性通过MAC(如HMAC-SHA256)和数字签名(如RSA签名)验证。通信协议如MQTT over TLS/SSL和CoAP over DTLS增强传输安全,确保数据在传输过程中的机密性和完整性。
|
1月前
|
安全 物联网 物联网安全
智能物联网安全:物联网设备的防护策略与最佳实践
【10月更文挑战第26天】随着物联网(IoT)技术的快速发展,智能设备已广泛应用于智能家居、工业控制和智慧城市等领域。然而,设备数量的激增也带来了严重的安全问题,如黑客攻击、数据泄露和恶意控制,对个人隐私、企业运营和国家安全构成威胁。因此,加强物联网设备的安全防护至关重要。
98 7
|
1月前
|
传感器 存储 运维
智能物联网:LoRaWAN技术在低功耗广域网中的应用
【10月更文挑战第26天】本文详细介绍了LoRaWAN技术的基本原理、应用场景及实际应用示例。LoRaWAN是一种低功耗、长距离的网络层协议,适用于智能城市、农业、工业监控等领域。文章通过示例代码展示了如何使用LoRaWAN传输温湿度数据,并强调了其在物联网中的重要性和广阔前景。
101 6
|
1月前
|
传感器 数据采集 监控
数据采集器和物联网网关的区别
数据采集器主要用于从各种数据源收集数据。这些数据源可以是传感器(如温度传感器、压力传感器等)、仪表(如电表、水表等)或者其他具有数据输出功能的设备。物联网网关是连接感知层(包含各种传感器和数据采集设备)和网络层(如互联网、局域网等)的关键设备。
64 4
|
1月前
|
传感器 监控 物联网
智能物联网:LoRaWAN技术在低功耗广域网中的应用
【10月更文挑战第27天】LoRaWAN技术是低功耗广域网(LPWAN)的重要代表,以其远距离通信、低功耗和低成本部署等优势,广泛应用于智能城市、农业监测和环境监测等领域。本文介绍LoRaWAN的工作原理及其实际应用,并提供示例代码展示如何使用LoRaWAN进行数据传输。
63 2
|
29天前
|
存储 边缘计算 物联网
揭秘边缘计算:物联网时代的分布式智能
揭秘边缘计算:物联网时代的分布式智能
46 0
|
1月前
|
物联网 智能硬件
物联网技术:连接智能生活的桥梁
物联网技术:连接智能生活的桥梁
|
1月前
|
安全 物联网 物联网安全
智能物联网安全:物联网设备的防护策略与最佳实践
【10月更文挑战第27天】随着物联网技术的快速发展,智能设备已广泛应用于生活和工业领域。然而,物联网设备的安全问题日益凸显,主要威胁包括中间人攻击、DDoS攻击和恶意软件植入。本文探讨了物联网设备的安全防护策略和最佳实践,包括设备认证和加密、定期更新、网络隔离以及安全标准的制定与实施,旨在确保设备安全和数据保护。
70 0

相关产品

  • 物联网平台