0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

嵌入式Linux开发秘籍!工程师大佬亲历分享项目样例

电子发烧友论坛 来源:未知 2023-05-23 08:20 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

做电子发烧友技术探索官,分享你的原创电子行业文章!


本期小编继续为大家分享一些优秀专栏原创技术文章,供大家一起学习交流。




本期推荐

专栏作者:嵌入式技术

专栏介绍:精通STM32开发(寄存器、HAL库)、PCB电路设计Linux下进程、线程、网络编程等。


Linux下基于GTK人脸识别界面设计


GTK(GIMP Toolkit)是一套源码以LGPL许可协议分发、跨平台的图形工具包。最初是为GIMP写的,已成为一个功能强大、设计灵活的一个通用图形库,是GNU/Linux下开发图形界面的应用程序的主流开发工具之一。当然,GTK也是支持跨平台的,支持Unix类的系统、Windows,甚至手机平台。


GTK是使用C语言写的,所以其原生API都是面向C的,同时GTK的一大特点是,在C语言层面实现了面向对象的特性。GTK是完全免费的,而且基于LGPL协议,这可以保证私有软件通过链接使用GTK可以不把软件源代码开放,对商业应用较友好,这跟GPL协议是不一样的。也正是LGPL协议,使得早些年Gnome(基于GTK编写)风头胜过KDE(基于QT编写)。(开发流程如下图)



>>>点此查看全文




Linux下基于SDL库贪吃蛇游戏


SDL(Simple DirectMediaLayer)是一套开放源代码的跨平台多媒体开发库,使用C语言写成。SDL提供了数种控制图像、声音、输出入的函数,让开发者只要用相同或是相似的代码就可以开发出跨多个平台(Linux、Windows、MacOS X等)的应用软件。现SDL多用于开发游戏、模拟器、媒体播放器等多媒体应用领域。


实现原理

贪吃蛇游戏实现方式很多,可以通过链表方式实现,也可以通过结构体数组方式实现。结构体主要用来保村蛇身的坐标位置和长度。移动蛇身则通过不断遍历结构体数组,刷新屏幕窗口即可。



>>>点此查看全文




Linux下V4L2框架基于SDL库本地USB摄像头监控


1.摄像头框架编程步骤

(1)打开摄像头设备(/dev/video0 、/dev/video1 );


(2)设置图像格式:VIDIOC_S_FMT(视频捕获格式、图像颜色数据格式、图像宽和高);


(3)申请缓冲区:VIDIOC_REQBUFS(缓冲区数量、缓冲映射方式、视频捕获格式);


(4)将缓冲区映射到进程空间:VIDIOC_QUERYBUF(要映射的缓冲区下标、缓冲映射方式、视频捕获格式);


(5)将缓冲区添加到队列中:VIDIOC_QBUF(映射的缓冲区下标、缓冲映射方式、视频捕获格式);


(6)开启摄像头采集:VIDIOC_STREAMON (视频捕获格式) (7)从采集队列中取出图像数据,通过SDL图像渲染;



>>>点此查看全文




Linux下IIC子系统和触摸屏驱动


I2C( Inter-Integrated Circuit)总线是由 PHILIPS 公司开发的两线式串行总线,用于连接微控制器及其外围设备。是微电子通信控制领域广泛采用的一种总线标准。具有接口线少,控制方式简单,器件封装形式小,通信速率较高等优点。


I2C特性

(1)只要求两条总线线路一条串行数据线SDA,一条串行时钟线SCL;


(2)每个连接到总线的器件都可以通过唯一的地址和一直存在的简单的主机/从机关系软件设定地址,主机可以作为主机发送器或主机接收器


(3)它是一个真正的多主机总线,如果两个或更多主机同时初始化数据传输可以通过冲突检测和仲裁防止数据被破坏;


(4)串行的 8 位双向数据传输位速率在标准模式下可达100kbit/s,快速模式下可达400kbit/s,高速模式下可达 3.4Mbit/s;


(5)片上的滤波器可以滤去总线数据线上的毛刺波保证数据完整;


(6)连接到相同总线的IC数量只受到总线的最大电容400pF;


IIC是属串行通讯总线,同步传输、半双工。


I2C 总线上的每一个设备都可以作为主设备或者从设备,而且每一个设备都会对应一个唯一的地址(可以从I2C 器件的数据手册得知),主从设备之间就通过这个地址来确定与哪个器件进行通信,在通常的应用中,我们把 CPU 带 I2C 总线接口的模块作为主设备,把挂接在总线上的其他设备都作为从设备。



>>>点此查看全文




Linux下基于HTTP网页视频监控


超文本传输协议(Hyper Text Transfer Protocol,HTTP)是一个简单的请求-响应协议,它通常运行在TCP之上。它指定了客户端可能发送给服务器什么样的消息以及得到什么样的响应。请求和响应消息的头以ASCII形式给出;而消息内容则具有一个类似MIME的格式。这个简单模型是早期Web成功的有功之臣,因为它使开发和部署非常地直截了当。


HTTP的发展是由蒂姆·伯纳斯-李于1989年在欧洲核子研究组织(CERN)所发起。HTTP的标准制定由万维网协会(World Wide Web Consortium,W3C)和互联网工程任务组(Internet Engineering Task Force,IETF)进行协调,最终发布了一系列的RFC,其中最著名的是1999年6月公布的 RFC 2616,定义了HTTP协议中现今广泛使用的一个版本——HTTP 1.1。

HTTP 是一个基于 TCP/IP 通信协议来传递数据( HTML 文件, 图片文件, 查询结果等)。工作于客户端-服务端架构上,默认端口号为 80,但是你也可以改为 8080或其它端口号。HTTP协议永远都是客户端发起请求,服务器回送响应。



>>>点此查看全文






声明本文由电子发烧友社区发布,转载请注明以上来源。如需社区合作及入群交流,请添加微信EEFans0806,或者发邮箱liuyong@huaqiu.com。


更多热点文章阅读

  • 基于Cortex-M3内核的32位微控制器,STM32项目实战分享!

  • 基于32位RISC-V设计的互联型微控制器,沁恒微CH32V307开发样例

  • RK3568!四核64位ARMv8.2A架构,汇聚编译源码及实战样例

  • 尺寸仅有21mm*51mm,板边采用邮票孔设计,合宙 Air105 核心板开发总结

  • 电子工程师分享:常用电平转换电路、电源自动切换电路、太阳能充电电路总结


原文标题:嵌入式Linux开发秘籍!工程师大佬亲历分享项目样例

文章出处:【微信公众号:电子发烧友论坛】欢迎添加关注!文章转载请注明出处。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

原文标题:嵌入式Linux开发秘籍!工程师大佬亲历分享项目样例

文章出处:【微信号:gh_9b9470648b3c,微信公众号:电子发烧友论坛】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    开源 | 60余套STM32单片机、嵌入式Linux、物联网、人工智能项目(开发板+教程+源码)

    嵌入式实战项目推荐15个嵌入式Linux+Qt综合应用项目,涉及家居、医疗、农业等多种应用领域,案例中使用了
    的头像 发表于 12-04 11:42 67次阅读
    开源 | 60余套STM32单片机、<b class='flag-5'>嵌入式</b><b class='flag-5'>Linux</b>、物联网、人工智能<b class='flag-5'>项目</b>(<b class='flag-5'>开发</b>板+教程+源码)

    嵌入式工程师为什么要学QT?

    Qt对嵌入式工程师来说,真的很重要吗? Qt是一个跨平台的C++应用程序开发框架,非常适合嵌入式系统的开发,Qt在
    发表于 08-14 15:15

    嵌入式工程师的进阶之路

    嵌入式工程师的进阶之路 (一)初级工程师(0-3 年)核心技能: 单片机开发:STM32F103系列 GPIO/USART/SPI 外设驱动,能完成 LED 呼吸灯、按键检测、串口通
    发表于 08-13 11:08

    【「Yocto项目实战教程:高效定制嵌入式Linux系统」阅读体验】+基础概念学习理解

    。为了对珠峰更了解些,开始接触 Linux 系统开发,并逐渐认识到 Yocto 项目在定制嵌入式 Linux 系统方面的重要性。所以很想拜读
    发表于 08-04 22:29

    Linux嵌入式和单片机嵌入式的区别?

    Linux嵌入式 :拥有庞大的社区和丰富的资源,支持力度大。 总的来说,选择哪种嵌入式系统开发方式取决于项目的具体需求、预算、
    发表于 06-20 09:46

    物联网工程师为什么要学Linux

    物联网工程师需要掌握Linux的主要原因可以从技术生态、开发需求、行业应用及就业竞争力四个角度来分析: 一、技术生态与行业适配性 1)嵌入式开发的主流平台 物联网设备往往基于
    发表于 05-26 10:32

    【书籍评测活动NO.61】Yocto项目实战教程:高效定制嵌入式Linux系统

    芯片的实战案例,为处于不同学习阶段的开发者提供了一条清晰可操作的学习路径。无论是刚入门的嵌入式工程师,还是希望深入掌握 Yocto 项目的资深开发
    发表于 05-21 10:00

    嵌入式开发入门指南:从零开始学习嵌入式

    特定功能的计算机系统,广泛应用于智能家居、工业控制、医疗设备、车载系统等领域。 2. 学习嵌入式开发的前置知识熟悉C语言编程掌握基本的数据结构与算法了解数字电路与微控制器原理熟悉Linux操作系统
    发表于 05-15 09:29

    如何成为一名嵌入式软件工程师

    软件工程师保持持续学习的态度,紧跟技术发展趋势;同时,注重实践经验的积累,积极参与实际项目开发和调试工作。 此外,还应不断提升自己的沟通能力和团队协作能力,以适应日益复杂的工作环境。 嵌入
    发表于 04-15 14:37

    嵌入式系统开发圣经【干货】

    内容包括:嵌入式系统的介绍、嵌入式SoC硬件系统概论、嵌入式系统软件开发。适用于产品主管、系统设计分析人员及欲进入该领域的工程师。本资料详细
    发表于 03-12 13:58

    嵌入式软件工程师就业好不好?

    、智能医疗设备等,都离不开嵌入式软件的支持。预计2025年,物联网设备的数量将呈爆发式增长,这将为嵌入式软件开发工程师带来大量的就业机会。 薪资待遇具有竞争力 由于
    发表于 02-20 10:19

    如何成为嵌入式开发工程师

    ,参加相关的研讨会和培训课程,阅读专业书籍和论文。 9. 认证和网络:- 考虑获取相关认证,这可以增加你的市场竞争力。- 加入专业组织和在线社区,扩展你的人际网络。 通过上述步骤的学习和实践,你可以逐步成长为一名合格的嵌入式开发工程师。记住,实际动手做
    发表于 02-19 10:39

    年薪30万的嵌入式工程师,究竟需要掌握哪些技能?

    随着智能硬件、物联网、智能汽车、自动化控制等领域的迅速发展,嵌入式工程师的需求也水涨船高。尤其是在全球化和技术加速的时代,嵌入式开发不仅是一个热门行业,还是跨学科技术与创新的交汇点。对于那些具备扎实
    的头像 发表于 01-16 10:59 2029次阅读
    年薪30万的<b class='flag-5'>嵌入式</b><b class='flag-5'>工程师</b>,究竟需要掌握哪些技能?

    为什么嵌入式驱动开发工程师可以拿高薪?

    为什么嵌入式驱动开发工程师可以拿高薪? 嵌入式驱动开发,属于需求量大、薪资断崖升高的热门岗位
    发表于 01-07 16:56

    嵌入式工程师常用的开发工具有哪些?

    项目管理和调试。IAR Embedded Workbench 也是广受欢迎的 IDE,具有出色的优化能力和调试工具,能够帮助工程师快速开发出高质量的嵌入式软件。 二、编译器 编
    发表于 12-20 15:29