很多想学嵌入式linux 的同学经常问我,我不会linux系统,怎么学习嵌入式linux开发,于是他们就花费了大量的精力和时间去研究学习桌面版本linux系统的使用,什么redhat 、federo,、ubuntu等等都用过,如何配置linux,linux的各种使用命令都背的滚瓜烂熟,linux各种服务器的配置,还原备份各种操作非常熟悉,以为这样就学会了嵌入式linux开发。其实这是一个学习嵌入式Linux开发的误区。
因业务需要,过去一年从熟悉的Android开发开始涉及嵌入式Linux开发,编程语言也从Java/Kotlin变成难上手的C++,这里面其实有很多差异点,特此整理本文来详细对比这两者开发的异同,便于对嵌入式Linux开发感兴趣的同学一些参考。
本篇重点是讲LVGL的开发辅助工具,以及利用这些工具将LVGL制作UI之后移植到嵌入式Linux开发板上显示。
Source Insight是一款专业的源代码阅读和分析工具,可以帮助程序员快速浏览、理解和修改代码。在嵌入式Linux开发中,Source Insight可以帮助开发人员浏览和分析Linux内核源代码和驱动程序代码,提高开发效率和代码质量。以下是一些Source Insight的功能和使用技巧:
在这篇文章中,将会通过树莓派4的Linux的启动过程,描述如何进行嵌入式Linux系统开发的思路。通过树莓派4B的启动流程,看到一个Linux启动过程,同时,通过一步一步搭建一个完整的树莓派嵌入式Linux开发环境,来指导分析各部分的开发过程。
在嵌入式linux上,想最简单方便的使用网络资源,如ftp,http,和socket,用c实现容易吗?
【系列专栏】:博主结合工作实践输出的,解决实际问题的专栏,朋友们看过来! 《QT开发实战》 《嵌入式通用开发实战》 《从0到1学习嵌入式Linux开发》
在第一次学习嵌入式的时候,最好奇的就是什么是嵌入式,对这个概念是比较模糊的,不知道究竟是做什么的,能够有什么作用。
嵌入式岗位,是介于硬件工程师和软件工程师之前的一个岗位。他的工作内容需要他既懂代码编写,也会硬件板子。
【总结】:手表虽小,确涵盖了智能手表所需的大部分功能,包含的技术也很多,这款产品是博主投入很大精力完全自主开发的,从硬件、嵌入式软件、结构、PCB加工、SMT、壳体加工、组装、整机测试等全流程把关,研发测试投入了巨大的精力,结果还是比较满意的。好的产品是打磨出来的,各位老板觉得呢?
【系列专栏】:博主结合工作实践输出的,解决实际问题的专栏,朋友们看过来! 《QT开发实战》 《嵌入式通用开发实战》 《嵌入式Linux开发实战》 长期持续带来更多案例与技术文章分享; 欢迎商业项目咨询,10年+软硬全栈内功,助力解决您的尊贵需求。 【需求】: 1)单/三相电可用,检测电压(80~450V)、电流(0~10A)有效值; 2)测量交流输入电压频率,测量范围:45~55Hz; 3)检测有功、无功、视在功率及功率因数; 4)检测电网谐波; 5)RS485通信接口; 6)以太网通信接口;
作为一名程序员,我们不仅要多动手编代码,而且还应多阅读一些优秀的代码,如C语言的一些第三方库文件、嵌入式中Linux内核源码以及一些项目的代码等。这些源码往往都比较庞大,源文件少则几十个,多则成千上万个源文件,很难把握每个源文件之间的调用关系以及代码的层次等。此时,我们可以使用一些代码阅读器来阅读这些庞大的源码。下面给大家推荐一款很棒的代码阅读器:source insight
以汽车行业为例,物联网技术的出现带来了颠覆性的影响。无人驾驶、车联网,借助于传感器、低延迟网络、人工智能算法,解放了人力,提升了安全性。类似地,在智慧家居、工业互联网、安防监控等领域,物联网技术都在渗透并改造行业。
【总结】:这款APP可以适应大多数的蓝牙数采应用、远程数据传输应用、数据统计分析应用、大数据存储等相关应用场景,经过长期的测试,稳定性极佳,遍历测试过华为、VIVO、OPPO、荣耀、小米等主流手机,在用户现场更是使用了近1年时间,0故障反馈。坐在屏幕前的老板们觉得怎么样?
【系列专栏】:博主结合工作实践输出的,解决实际问题的专栏,朋友们看过来! 《QT开发实战》 《嵌入式通用开发实战》 《从0到1学习嵌入式Linux开发》 《Android开发实战》 《实用硬件方案设计》 长期持续带来更多案例与技术文章分享; 欢迎商业项目咨询,10年+软硬全栈内功,助力解决您的尊贵需求。 —————————————————————————————————— 【需求】: 1)单/三相电可用,检测电压(80~450V)、电流(0~10A)有效值; 2)测量交流输入电压频率,
裸机开发通常指在没有操作系统支持的环境中直接在硬件上运行程序的开发。这种开发方式要求开发者直接与硬件交互,编写控制硬件的低级代码。这包括对处理器、存储器、输入输出接口等硬件的直接控制和管理。与基于操作系统的开发相比,裸机开发更加接近硬件层面,对硬件的了解和控制能力要求更高,但也允许开发者更精细地管理硬件资源和性能。
整个嵌入式系统的加载启动任务完全交给Bootloader完成,它的主要任务是将内核映象从硬盘读到RAM中,然后跳转到内核入口启动内核(操作系统)!通俗来讲,Bootloader的作用就是初始化硬件,启动操作系统。
【总结】:手表虽小,确涵盖了智能手表所需的大部分功能,包含的技术也很多,这款产品是博主投入很大精力完全自主开发的,从硬件、嵌入式软件、结构、PCB加工、SMT、壳体加工、组装、整机测试等全流程把关,研发测试投入了巨大的精力,结果还是比较满意的。好的产品是打磨出来的,各位老板觉得呢?项目合作,欢迎随时联系博主。
电脑用久了,文件越来越多,磁盘空间就变得紧张起来,原来的新建的Linux虚拟机磁盘文件是放在D盘下,最近加了块固态硬盘,想把Linux虚拟机磁盘文件改动新的磁盘下,节省下原来D盘的空间,这里总结下虚拟机更换磁盘文件路径的方法。
Win10的Linux子系统是完全可以直接用来进行嵌入式Linux开发操作的,目前已经非常顺畅地编译通过了U-Boot和内核。但是编译Builtroot的最后阶段,需要使用fakeroot来fake文件权限的时候,报了个错误,如图所示:
已建立的项目换了电脑环境,在本地点电脑上我们使用IDEA软件时,点击build没有反应或者rebuild没有编译新的class,或者是代码导入包那里提示红色error等,这时是因为你的工程是在其他电脑环境下创建的,换到了你的电脑上,环境发生变化,这时就需要重新设置下。
上一篇分享的:从单片机工程师的角度看嵌入式Linux中有简单提到Linux的三大类驱动:
在嵌入式linux开发的过程中,可能会需要需要在现有ramfs中加入文件的需求,此时可以使用cpio命令。 cpio本质上是一种压缩,内核能自动解压它并放到ram中。 前提:
我在100ASK_IMX6ULL售后群里,发现很多初学者只有单片机基础,甚至没有单片机基础。在学习Linux时,对很多概念比较陌生,导致不知道学什么,也不知道学了之后有什么用。所以我趁着五一假期,编写此文。
这个项目是给一家用在养老院的客户定制的,当时因为客户比较紧急,连续熬了2个多月不停歇搞定的。其实不仅可以用在养老院,用在个人家庭、智慧社区、医院、生产加工企业、监狱等场景也是OK的,对儿童、病人、定点岗位或宠物等进行便捷的日常跟踪看护都是可行的。
这套在线监控平台可扩展应用的场景很多,随着工业物联网的兴起,各种传感器采集需求、现地图形化显示需求、数据远传需求、边缘计算等需求在各种应用场景涌现,随着技术的发展,未来的世界是让人生活的更舒适、更好的,这也是我们技术人的愿景,技术就是服务于人类社会的。
在线课堂:https://www.100ask.net/index(课程观看) 论 坛:http://bbs.100ask.net/(学术答疑) 开 发 板:https://100ask.taobao.com/ (淘宝) https://weidongshan.tmall.com/(天猫)
参考 嵌入式linux开发板使用pulseaudio连接蓝牙耳机播放音频文件 其中的Failed to find user ‘pulse’. 定位到是系统的/etc/group 中没有增加group,增加后正常启动
服务器中的数据库密码定期修改是一个好习惯,这里记录下MySQL和Redis数据库的密码修改步骤。
先说说为什么开了这个专栏,我一个做嵌入式的,怎么又搞上了结构设计了??哈哈,一般有人看到博主的博客都觉得很蒙,有Linux的、硬件设计的、嵌入式软件的、QT的、Java基础的、Web开发的等。其实也没什么意外的,博客这么五花八门,跟博主的工作内容、工作性质、工作环境、工作职责都有关系,但是都没有离开物联网这个大的领域。
最近想做一个设备面板,参照原有壳体的面板尺寸,使用Solidworks软件画了一个零件模型,画完草图、打孔、拉伸切除等一顿操作后,还需要将模型沿着某一条边线折弯,本来以为直接画一条构造线,可以沿着构造线折弯,结果发现这样是没法折弯的。在此,博主把模型折弯的简单应用总结下。
在嵌入式系统设计中,选择合适的处理器架构是至关重要的决策。微控制器(Microcontroller)和微处理器(Microprocessor)是两种常见的解决方案,它们各自具有优势和特点。本文将介绍微控制器和微处理器的区别,并提供一些代码实例,帮助你更好地选择适合你项目的解决方案。
之前的几篇文章(从i.MX6ULL嵌入式Linux开发1-uboot移植初探起),介绍了嵌入式了Linux的系统移植(uboot、内核与根文件系统)以及使用MfgTool工具将系统烧写到板子的EMMC中。
嵌入式操作系统(EmbeddedSystem)是指以应用为中心、以计算机技术为基础,软件硬件可裁剪、适应应用系统对功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。举例来说,大到油田的集散控制系统和工厂流水线,小到家用VCD机或手机,甚至组成普通PC终端设备的键盘、鼠标、硬盘、Modem等均是由嵌入式处理器控制的。
学习步骤如下: 1、Linux 基础 安装Linux操作系统 Linux文件系统 Linux常用命令 Linux启动过程详解 熟悉Linux服务能够独立安装Linux操作系统 能够熟练使用Linux系统的基本命令 认识Linux系统的常用服务安装Linux操作系统 Linu
嵌入式Linux开发需要在Linux系统下进行,这就要求我们的PC主机安装Linux系统,本专栏我们选择Ubuntu这个Linux发行版系统。
本文主要介绍beaglebone的开发过程与启动方式。同时将一套嵌入式Linux开发环境搭建起来。以便于更好的掌握和理解beaglebone AI的使用。工欲善其事,必先利其器,搭建好完整的开发环境,后续的工作才能更好的开展起来。要想用好一款芯片,也需要很好的理解其启动方式。下面来实际的展示操作流程。
很多做单片机开发的工程师因为各种原因可能要学习Linux,但是很多人刚开始却无从下手或者多次中途放弃,网上相关的资料虽然很多但是也比较零散、不系统。Linux嵌入式开发和普通裸机单片机开发有非常大的差异。本系列文章结合我个人的使用经验,站在一个完全初学者的角度为大家做一个整理,希望有助于大家快速入门嵌入式Linux开发。本篇是系列第一篇,为大家介绍开发环境的搭建。
原文链接:https://winter.blog.csdn.net/article/details/129527522
本系列教程以「i.MX6ULL」处理器的ARM开发板为实验基础,学习记录嵌入式Linux开发的各种知识与经验,主要内容包括嵌入式Linux移植,嵌入式Linux驱动开发,嵌入式Linux应用开发等。
原文链接:https://blog.csdn.net/w464960660/article/details/129357160
在进行嵌入式Linux开发的时候,为了方便,通常在Windows上使用代码编辑器编辑代码,交叉编译工具在Linux虚拟机或者服务器上,在开发期间需要不停的进行如下的循环操作:
建立交叉开发环境 配置开发主机 移植bootloader linux内核移植 建立并烧写根文件系统到目标板 开发嵌入式应用程序 部署与配置系统 (1)建立交叉开发环境 开发主机的操作系统一般选用某一个发行版本号的linux系统,如RedHatlinux等。linux内核版本号能够依据项目的详细需求而定,如2.4内核或者2.6内核。选择定制安装或所有安装,通过网络下载对应的gcc交叉编译器进行安装(比方arm-linux-gcc,arm-uclibc-gcc等),或者安装产品厂家提供的交叉编译器。 (2)配置开发主机 配置开发主机包含在开发主机上安装linux系统,配置交叉连接工具,如串口和网络接口。 (3)建立引导装载程序bootloader 从网络上下载一些公开源码的bootloader,依据自己详细芯片进行移植改动。
软链接是Linux下常用的一种共享文件方式、目录的方式,这种方式类似于Windows下的快捷方式。一般一个文件或者目录在不同的路径都需要的时候,可以通过创建软链接的方式来共享,这样系统下面只有一份源文件、目录。另外,巧用软链接,可以大大增加应用程序的可移植性。
本次博文继续学习特征成型中的旋转切除,以及圆角和倒角功能,利用旋转切除功能画一个沉头螺丝孔,并实际演示下圆角和倒角是如何使用的,同样配合实战练习,从零学习。
这篇文章简单我们来一起梳理嵌入式Linux的一些知识,方便于一些想跟我一样想要由单片机进阶到嵌入式Linux的朋友做一些参考学习。
领取专属 10元无门槛券
手把手带您无忧上云