目录:

  一)摄像头

  二)照明

  三)所想

  四)总结

一)摄像头

  摄像头这块学了跟没学一样我觉得,摄像头给的api,yuyv转rgb24也是给的api,总而言之就是,直接给了两个源文件,这两个源文件已经实现了屏幕显示摄像头数据的这个功能,我们所做的就只是把这两个文件和main文件整合,摄像头是怎么获得数据怎么传输数据,数据如何通过什么方式显示在屏幕上这些重点的都没详细讲,只是粗略讲了一下这个过程,不过这也正常,看了一下老师的源码,涉及到的东西确实很多,不觉得这是几天可以搞定的东西,而这可以说是本次培训的最后一天了。

  那么这篇笔记该怎么写呢,如何实现的肯定是没法写的了,我也不懂,就只记录目前知道的东西吧

  1)老师的笔记图

  2)V4L2

  V4L2是linux系统中的一个关于处理视频这一块的一个开发框架,一个处理视频数据的机制,目前我还没有开始学习这个框架

  点击此链接学习V4L2

  3)过程遇到的问题

  ① 问题:显示摄像头界面与菜单栏的点击无法同时实现,就是希望进入摄像界面以后点击返回可以返回主界面,再进入摄像界面依然可以显示摄像头内容

  ② 解决方法:有了之前解决视频菜单栏无法显示的经验,容易想到这个问题也可以使用线程来解决

  ③ 实现:我希望我的main.c文件尽量简洁,其中代码尽量少尽量清晰,我整合了很久代码,希望最终可以只是在main里添加一个显示摄像头的子线程,而把其他什么打开设备、缓存帧、yuyv转rgb24等显示摄像头内容之前需要进行的操作独立成一个文件,但是无论我怎么尝试,都无法实现预期,几个小时后,我妥协了,直接把摄像这一块的代码全部移植到main里,yuyv转rgb24为单独一个文件,这就解决问题了,但是我的main.c也变得繁琐起来了。以下是摄像界面图,图一是摄像头打开前显示的画面:

二)照明

  其实就是点灯,这个就不详写了,直接给代码吧

 1 #include <stdio.h>
 2 #include <stdlib.h>
 3 #include <fcntl.h>
 4 #include <linux/ioctl.h>
 5
 6 #define GEC210_LED_ON    _IOW('A', 0x03, unsigned long)
 7 #define GEC210_LED_OFF    _IOW('A', 0x04, unsigned long)
 8 int light(void)
 9 {
10     int fd_light;
11     fd_light = open("/dev/led_drv", O_RDONLY);//以只读的方式LED的驱动,这个驱动文件要先安装,用老师给的驱动文件led_drv.ko
12     if(fd_light < 0)
13     {
14         perror("open");
15         return -1;
16     }
17     //在此基础上实现流水灯的效果
18     while(1)
19     {
20         ioctl(fd_light, GEC210_LED_ON, 4); //点亮第4个灯
21         sleep(1);
22         ioctl(fd_light, GEC210_LED_OFF, 4); //关闭第4个灯
23         sleep(1);
24     }
25     close(fd_light);
26     return 0;
27 }

led.c

三)所想

  1)没什么想的今天,就感觉没学到什么东西,希望自己可以抽空学习一下V4L2这个东西,如果学了的话到时候再补充这篇笔记

四)总结

   1)实现了摄像头的功能,解决的菜单栏的问题

  2)菜单栏的拍照拍摄功能没有实现

  3)学习了点灯

  4)第七天就不单独写笔记了,因为第七天没学新东西,项目验收而已,我在第七天尝试了实现拍照功能,但是失败了,的确可以生成一张jpg图片,但是这张图片没有数据,问了一下老师,说是在数据写入的时候出现了问题,测试了一下发现不是数据写入的问题,而是使用read函数读取屏幕信息的时候就失败了,尝试了半天,read依然返回-1,也就是依然失败,最后放弃了。

转载于:https://www.cnblogs.com/lzemian-n/p/10259485.html

《智能家居》培训第六天------2019-01-10相关推荐

  1. MIR DATABANK自动化和智能制造每周要闻 —2019年10月15日

    下述新闻摘要由MIR DATABANK数据平台收集.整理.撰写.其中原创新闻属于MIR DATABANK数据平台所有.(MIR DATABANK数据平台属德佳咨询旗下品牌) 注册成为MIR DATAB ...

  2. 《惢客创业日记》2019.01.10(周四)游击战与阵地战的博弈

    今天上午,跟同事一起讨论惢客职场,这已经是第三版设计原型图了.现在看来,不但制定的两个星期拿下惢客职场的计划泡了汤,而且,再过两个星期能出来都有点儿悬.除了人员变动的原因外,还有一个最大的问题就是产品 ...

  3. 科技前沿智能创新 2019北京智能家居 全屋智能博览会

    2019北京智能家居大型展览会 2019北京全屋智能家居博览会 报道布展:2019年6月26日-27日 展会开幕:2019年6月28日上午9:00时 展会交易:2019年6月28日-30日 展会撤展: ...

  4. 专业高科技展-2019智能锁智能家居博览会

    2019亚洲智能家居博览会简称"C-SMART2019",作为智能家居行业的经贸盛会,集结了一大批国内外的智能家居主机.智能安防.智能门锁.智能晾衣机.家庭影院.智慧社区.智能家电 ...

  5. 2019智能家居博览会-今日优选展会

    智能家居是在互联网影响之下物联化的体现,综合利用物联网.云计算.移动互联网和大数据技术,结合自动控制技术,将家庭设备智能控制.家庭环境感知.家人健康感知.家居安全感知以及信息交流.消费服务等家居生活有 ...

  6. 智能家居终于起风了,三派玩家谁能收割市场?

    1997年,比尔·盖茨耗资4000万美元建造的大型豪宅"未来之屋"成了华盛顿湖的一大景观,当时"智能家居"概念尚未出现,国内出现了"住宅电脑化&quo ...

  7. 松江主机点位怎么预留_智能家居设计篇:智能化布线怎么做到有备无患

    [摘要]大家对自己新房的装修总是充满着期待,也有对智能家居向往却又不愿投入太多. | 智 | 装 | 小| 站 | 中国智能家居行业第一自媒体 本文来源:科学讲 特别是对于有所了解的朋友,总觉得智能家 ...

  8. 智能家居市场年增速近30%!苹果看齐亚马逊、谷歌,欲开辟三足鼎立

    来源:物联网智库整理 摘要:作为世界领先的科技巨头,亚马逊.谷歌和苹果相爱相杀许多年.在智能家居领域,三家的"战争"也会随着市场的成熟而更加激烈.尽管苹果目前稍显落后,但未来市场广 ...

  9. Android@Home与智能家居

    何为智能家居? 智能家居是一个居住环境,又称智能住宅.通俗地说,它是融合了自动化控制系统.计算机网络系统.无限传感网络系统.和网络通讯技术于一体的网络化智能化的家居控制系统.智能家居将让用户有更方便的 ...

  10. Arm公布2019年物联网领域五大预测:智能家居、智慧城市、医疗保健上榜

    Arm公布2019年物联网领域五大预测:智能家居.智慧城市.医疗保健上榜 近日,Arm公司对2019年的物联网行业进行了预测,具体为以下五个趋势: 一.智能家居成为主流 消费者将会看到主流消费品牌推出 ...

最新文章

  1. 演示:通过实验取证IP报文的各个字段
  2. Oracle 双机热备 镜像 纯软 实战 配置教程 配置手册
  3. C#访问Access和Win7 64位下可能遇到的 未在本地计算机上注册“Microsoft.Jet.OLEDB.4.0” 提供程序 问题
  4. 连接php的作用是什么意思,链接是什么?
  5. 更换checkbox的原有样式
  6. 二等水准数据平差_二等水准复测平差成果表
  7. 计蒜客挑战难题:整数转换成罗马数字
  8. UI自定义UITableView的右侧索引
  9. MediaElement 4.1.3 发布,HTML5 音视频解决方案
  10. Appium+Python之PO模型(Page object Model)
  11. 年底购物狂欢,移动支付安全不容忽视
  12. Rust: HashMap的用法及其它
  13. nas共享服务器怎么同步文件,如何轻松在两个NAS之间文件同步?
  14. linux中安装程序的命令是,Linux安装软件命令是什么
  15. 厦门大学计算机软件学院,厦门大学软件学院研究生招生信息_厦门大学软件学院2019-研究生招生报名查询系统...
  16. 使用layui实现表格制作
  17. 智能柜怎么与Android通信,快递智能柜Android系统该何去何从
  18. 游戏原画教程:角色设计中的几个基本图形的用法
  19. linux挂载ntfs硬盘6,CentOS 6.2 挂载 NTFS格式的硬盘
  20. 口红机 抖音口红机 女神赢口红系统源码 全开源可二次开发 微信游戏,公众号游戏,口红机源码安装部署、调试...

热门文章

  1. linux内存管理简介,Linux操作系统的内存管理特性简介 (3)
  2. 威斯康星大学计算机专业找工作,威斯康星麦迪逊大学计算机申请条件有哪些?...
  3. toolbar java_Java ToolBar.layout方法代码示例
  4. docker 主进程 日志_运维笔记--docker高效查看后台日志
  5. 基于上下文的rpn_构建事物-产品评论视频中基于上下文的情感分析
  6. 老姚浅谈:怎么学JavaScript?
  7. FP error code老是忘记的看这里:只给出最常用的几个。
  8. 1067: 有问题的里程表
  9. go语言载入json的一个坑
  10. left join 和 inner join