自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Poseidon's Maserati

Today is my lucky day.

  • 博客(275)
  • 资源 (4)
  • 收藏
  • 关注

原创 嵌入式设备EMC安规检测参考

测试产品在电源电压骤降/中断时的工作能力,验证供电稳定性。测试产品对电源线传入电磁干扰的抗扰能力,确保正常工作。测试产品对雷击浪涌电压/电流的抗扰能力,保护设备安全。测试产品对静电放电的抗扰能力,模拟人体/物体静电影响。测试产品对电快速瞬变脉冲群的抗扰能力,模拟瞬时干扰。测试产品对工频磁场的抗扰能力,模拟日常电网磁场影响。测试产品对空间电磁辐射的抗扰能力,验证环境稳定性。测试产品产生的谐波电流,避免污染电网影响其他设备。测试产品引起的电源电压波动,避免影响其他用电设备。EMC类瞬态抗扰项目,脉冲干扰防护。

2025-11-28 15:38:23 306

原创 Gemini和openAI分别怎么看待GPU和TPU

GPU与TPU在AI计算领域各有优劣:GPU凭借通用性强、生态成熟等优势,适用于多样化任务和边缘部署;TPU则专为深度学习优化,在大规模训练和云端推理中表现突出。两者在竞争中互补,未来可能形成异构计算格局。

2025-11-28 11:30:19 670

原创 TPU是什么,看看Gemini自己怎么说

GPU是法拉利,TPU是网约车

2025-11-28 00:38:31 826

原创 Qt Creator代码样式自动整理

摘要:本文介绍如何在QtCreator中配置clang-format插件实现代码自动格式化。首先需在Ubuntu上安装clang-format工具,然后在IDE中启用插件并设置保存时自动格式化。重点分享了常用格式化配置模板,包括4空格缩进、右对齐指针、保留2个空行等风格设置。通过简单配置,即可实现Ctrl+S保存时自动按指定格式整理代码,提高开发效率。

2025-11-24 18:38:05 569

原创 i.mx8 HDMI显示分辨率异常(软件排查)

摘要:本文分析了显示器分辨率异常问题,指出EDID(扩展显示标识数据)是影响分辨率的关键因素。EDID作为显示设备的"身份证+能力说明书",存储着设备的分辨率、刷新率等重要参数。当EDID缺失、损坏或不匹配时,会导致系统默认使用800×600等低分辨率。解决方案是强制设置分辨率而非读取EDID:创建EDID目录、放入通用EDID文件并修改U-boot启动参数,强制输出1920×1080分辨率,经测试可解决90%的显示异常问题。该方法避免了EDID读取带来的不确定性,确保多台显示器显示正常

2025-11-21 17:15:57 74

原创 Qt SQLite在I.mx8上使用问题

摘要:本文记录了在i.MX8嵌入式平台上解决Qt应用使用SQLite时遇到的驱动加载问题。通过最小测试程序定位到缺少SQLite驱动插件,采用交叉编译方式重新编译Qt 6.3.2源码中的SQLite驱动模块。详细说明了从源码下载、环境配置到交叉编译的完整过程,最终将生成的驱动库部署到目标板,成功解决了"QSQLITE driver not loaded"的问题。该方法适用于嵌入式环境下Qt数据库驱动缺失的排查与解决。

2025-11-21 16:21:35 598

原创 Qt 编译报错:-1: error: fatal error: Killed signal terminated program cc1plus

Qt项目编译时因添加大量高清图片资源导致内存不足报错,可通过以下步骤解决:1)删除原编译目录并重新qmake;2)减少并行编译数;3)增加交换内存:先关闭swap文件,创建6G新swap文件(可调整大小),设置权限后格式化启用,并配置开机自动加载。这些操作可缓解编译时内存不足问题,其中扩展swap空间是最有效的解决方案。

2025-10-23 11:25:01 344

原创 i.mx8上Qt应用星期显示异常

在Qt中显示中文星期格式的解决方案:当使用"yyyy年M月d日dddd"格式显示时间时,若出现英文星期(如Wednesday),可通过强制使用中文字符集转换解决。方法:1)获取当前时间QDateTime对象;2)初始化中文字符集QLocale(Chinese,China);3)使用toString()方法转换时间格式。关键代码:chineseLocale.toString(currentDateTime,"yyyy年M月d日dddd")。此方法需设备已安装中文字符集,

2025-10-11 18:04:56 275

原创 i.mx8 RTC问题

摘要:外置RTC模块在i2c总线上注册读写正常,但偶发重启后系统时间和RTC时间均恢复默认值(系统2022年,RTC 1970年)。经排查发现主板默认使用内部RTC0(NXP芯片集成),未正确调用外置RTC1。通过修改设备树禁用NXP的snvs_rtc节点(添加status="disabled"),使系统默认使用外置RTC。最终实现时间同步正常,并需设置时区为Asia/Shanghai。该方案通过简化设备树配置解决了RTC源冲突问题。

2025-07-16 17:14:15 586

原创 i.mx8 网络速率测试

摘要:测试网口千兆速率性能,在虚拟机安装iperf3工具并开启服务端,板载端通过iperf3连接192.168.0.155服务器进行10次100MB数据传输测试。结果显示板载端和服务器端测试数据均符合预期,验证了网口达到千兆传输速率的设计要求。

2025-07-10 09:43:41 450

原创 i.mx8 开机启动服务

摘要: 针对设备开机时间过长问题,通过systemctl命令分析了系统启用的服务。列出包括网络、安全、硬件支持等42项服务,并分类评估其必要性。其中19项核心服务(如systemd-networkd、syslogd)建议保留,23项非必要服务(如蓝牙、NFS)可关闭优化。特别指出ntpd等4项冗余服务应优先禁用。通过合理配置服务启停,可有效缩短系统启动时间。建议结合实际使用需求选择性禁用非必要服务,同时保留关键系统功能。

2025-07-07 18:12:11 1054

原创 i.mx8使用CAN模块

摘要:在嵌入式平台下使用CAN通信时,Qt程序在Linux和VirtualCAN调试正常,但在嵌入式环境中出现无法开启CAN或使用异常的问题。问题源于嵌入式环境缺少必要的库文件。

2025-07-07 10:54:27 316

原创 i.mx8HDMI调试记录

HDMI直连调试常见问题及解决方案:1.主副设置需正确配置,设备树中需禁用原LT8912B芯片;2.桌面显示异常需调整X11或Weston配置,指定正确输出端口;3.分辨率问题需重点检查i2c上拉电阻配置(推荐1.5kΩ-4.7kΩ),不当电阻值会导致EDID读取失败、HPD信号抖动等问题。不同场景推荐电阻值:高速上电用1.5kΩ,平衡功耗选2.2kΩ,低功耗设计用4.7kΩ。需结合屏幕参数、走线长度等因素综合考量,同时注意HDMI线缆屏蔽层接地。

2025-07-03 10:22:47 537

原创 Qt 线程常用通信方式

Qt中,线程通信无处不在,最核心的特性信号槽就是一种线程间通信,安全可靠易用。

2025-01-13 16:55:34 443

原创 状态机和RTOS

写单片机程序,有时用到状态机,有时候用RTOS,那他们到底有什么区别,要怎么选?首先说明,实时操作系统本质也是一个软件系统,也在执行while(1)操作,但是和状态机有众多区别。

2025-01-09 17:56:33 714

原创 Kconfig示例

移植时发现原厂驱动未提供Kconfig文件,自己添加一个。

2025-01-09 09:15:30 533

原创 Linux移植touchpad驱动

更换触摸屏,移植别的厂家触摸屏驱动。

2025-01-08 18:13:29 553

原创 Qt 断开信号槽的方式

需要断开的地方diconnect,需要连接的地方connect,最简单直接的办法,但是会很繁琐,如果频繁操作,多出了非常多的重复代码,逻辑混乱。使用官方QSignalBlocker,这个是这种场景下最推荐的,用于阻塞对象的所有信号,而且是作用域生效,超出作用域后自动解除。使用标志位,通过条件判断的方式控制功能的开关。但是这么做有点底层状态机的模子,看起来也复杂。

2024-10-24 14:15:44 760

原创 环形缓冲区

通过这种方式,环形缓冲区可以有效地循环利用固定大小的数组空间,避免数据溢出。

2024-10-17 09:44:09 704

原创 R155法规

R155法规是应对联网和自动驾驶汽车网络安全挑战的重要法规,旨在确保车辆在整个生命周期中具备健全的网络安全防护措施。通过建立和实施网络安全管理系统,制造商能够更好地识别、应对和管理网络安全威胁,提升车辆的安全性和可靠性。

2024-09-29 17:38:49 705

原创 Docker技术

Docker技术通过其独特的容器化方式,带来了环境一致性、高效资源利用、便捷的部署和管理、支持微服务架构以及丰富的生态系统,极大地提升了开发、部署和运维的效率。无论是对于开发人员、运维团队还是企业级用户,Docker都提供了一种高效、灵活的解决方案,使得应用程序的开发和运维变得更加快速和可靠。

2024-09-29 17:00:09 544

原创 SOA(面相服务架构)

SOA的核心思想是将业务功能模块化,作为独立的服务进行发布和管理,服务之间通过标准化的接口进行通信和交互。

2024-09-29 16:30:14 1368

原创 4.V2X技术

“自动驾驶和V2X技术的结合,将彻底改变我们的出行方式,使交通更加安全、高效和环保。”-埃隆·马斯克

2024-09-27 17:07:13 1975

原创 3.多传感器融合

“自动驾驶的未来在于传感器技术的不断突破与创新。”-埃隆·马斯克

2024-09-26 15:25:41 2309

原创 2.视觉感知原理

“自动驾驶汽车将比人类驾驶更安全,因为它们不会分心、不会疲劳、也不会受到情绪的影响。”-埃隆·马斯克

2024-09-26 11:00:55 1549

原创 1.智能驾驶方案概览

“自动驾驶技术的成功,离不开跨学科团队的紧密协作。”-埃隆·马斯克

2024-09-25 17:30:22 702

原创 STM32CubeIDE+touchGFX+LCD

CubeIDE+touchGFX+2inchLCD,显示特定界面。

2024-08-06 15:35:08 863

原创 Qt Qvariant

QVariant是 Qt 框架中的一个非常强大的类,它用于存储各种不同类型的数据,并提供了一种统一的方式来处理这些数据。QVariant可以存储大多数基本数据类型,如整数、浮点数、字符串、日期时间等,以及更复杂的数据类型,如QColorQImageQByteArrayQListQMap等。

2024-06-27 14:39:09 562

原创 Qt 使用QJsonModel的问题

需要表格记录json数据,使用Qtreeview显示并修改,使用开源的第三方类QJsonModel,即可快速完成。

2024-06-27 13:52:20 648

原创 经常使用的正则分割

工作中经常需要对一串数据进行分割,最简单的办法就是使用正则表达式。

2024-05-08 16:03:17 769

原创 Qt 简单使用串口

Qt程序接收i.mx串口数据并使用。

2024-05-08 15:10:34 455

原创 嵌入式笔试

遇到的题目汇总

2024-04-16 14:22:35 928

原创 Qt 使用qm文件

多个子项目,分别翻译生成的qm文件,如何一键加载?

2024-04-15 16:28:49 777

原创 imx.7交叉编译libX11

该文章已经很详细的讲到了移植全过程,实践下来并没有太多问题,并且他文中提到的问题一定会出现,没有提到的也会出现,大致是因为自己虚拟机环境,以及版本问题,只需要根据第一条报错逐条进行修复即可。原因是libxcb的版本太新,我使用最新的版本,正确配置和安装后,在编译libX11还是会报错,解决办法:替换为较为早期的版本,比如libxcb-1.16,只要低于libproto版本即可。libX11报错中断编译后,解决完问题,make clean,重新配置编译。以下是我个人的环境变量设置,仅供参考。

2024-04-15 14:20:20 703

原创 Linux-Arm GDB调试(本地和远程)

Linux本机调试使用GDB非常方便,但嵌入式Linux设备资源有限,通常并没有交叉编译工具,那嵌入式设备上的应用发生问题如何查找问题?通常IDE有远程DEBUG功能,这种能快速定位固定且容易复现的错误。随机性问题,问题一旦发生,保存现场十分重要,不知道何时才会复现,要基于当前的设备状态,尽可能的去追溯本次的问题,这样才能有效的解决问题。个别情况下,并没有发生crash,但是程序卡死或者无响应,这个时候并不会生成coredump文件,那么就需要进行远程在线调试。最终定位到问题所在。

2024-04-03 14:54:58 1061

原创 Qt QMetaObject::invokeMethod

QMetaObject::invokeMethod是一个静态函数,用于在Qt信号槽机制之外,异步调用QObject子类的公开槽函数或者调用任意可调用对象。主要处理不同线程异步调用或延时操作。

2024-03-13 11:32:37 3926

原创 Qt 根据背景颜色设置字体颜色

Qt绘制好背景后,文字颜色不对会看不清楚。所以需要根据当前的背景颜色选择合适的文字颜色。

2024-02-22 14:57:05 677

原创 2023回顾

踩了这些坑之后,再次做项目时,如果使用到触摸屏,我可能会在资源够用的情况下,单独给触摸屏一路i2c总线去使用,其余的i2c外设走另外的总线,这样能避免脏数据、或者某个从设备死锁不释放总线时造成的数据传输错乱,进而影响全局的触摸屏的使用。再次使用Qt时会特别注意焦点切换的问题,界面切换了焦点没有带过去的话,在多个模态窗口的焦点切换就会滞后,或者承载焦点的页面已销毁,那么就会导致焦点错乱,现象看起来也是界面卡死。一文中,正如文中提到的,上述的一些操作能极大可能得避免触摸屏卡死的发生,但也并非一劳永逸。

2024-01-09 12:04:39 616

原创 imx7开机自动执行任务(点灯)

设置已正确配置设备树,能在用户空间控制GPIO。

2024-01-09 10:33:24 567

原创 Qt QMetaObject::invokeMethod

invokeMethod 是Qt元对象系统中的一个函数,用于程序运行时动态的调用对象的槽函数或者静态函数。

2023-10-24 18:46:33 1160

i.mx8 HDMI 1920*1080通用EDID

i.mx8 HDMI 1920*1080通用EDID

2025-11-21

i.mx8使用CAN模块linux库文件

Can库文件

2025-07-07

i.mx8使用CAN模块

Can库文件

2025-07-07

UN.R155法规中文对照翻译

UN.R155法规中文对照翻译

2024-09-29

UN.R155法规英文原版

UN.R155法规英文原版

2024-09-29

Qt基本串口的完全实现

Qt应用层的串口基本程序,搭配blog中的简介方法,放入程序中即可使用。

2024-05-08

imx.7交叉编译libX11

包含libX11交叉编译所用到的所有库的源文件压缩包,直接交叉编译即可

2024-04-15

125khz读卡器.zip

包括电路设计及.c程序,只需要根据自己板子更改响应的IO口即可。

2021-10-08

cycleTest.zip

QWidget直接提示即可,可转动,设置当前选中编号,设置禁用为灰色,启用为对应彩色。不限平台。

2021-08-05

jsonTool.zip

json文件合并,可以将两个json文件比较后合并为一个,也可将已知json文件内的某一项单独替换。Zip包含可执行文件及源码,可执行文件可以在64位Ubuntu上直接运行,也可根据自己编译器编译出对应版本。

2021-07-21

QtNetLinkMonitor.zip

此代码用于Qt桌面应用监控Linux网口的连接状态,包括以太网、PAN网络等。拿来即用,用法参见README。

2021-07-21

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除