- 博客(100)
- 收藏
- 关注
原创 Buildroot构建Qt根文件系统-思维导图-学习笔记-基于正点原子阿尔法开发板
介绍了如何使用Buildroot构建支持Qt的根文件系统。首先,下载并解压Buildroot源码,接着安装必要的库以支持图形配置菜单。通过"make menuconfig"命令打开配置菜单,或者编辑IMX6ULL Qt配置文件,设置ARM架构、工具链、Qt5模块、系统属性、文件系统和网络配置。使用更新后的镜像源提高下载速度,之后运行"make -j 16"命令构建根文件系统。完成后,将生成的rootfs.tar文件烧写到TF卡的rootfs分区,并在开发板上测试启动。启动成功后,登录系统并验证触摸功能...
2024-08-26 20:05:14 1711
原创 嵌入式Qt移植之编译Qt项目-思维导图-学习笔记-基于正点原子阿尔法开发板
介绍了嵌入式Qt移植中编译Qt项目的过程。首先,需要安装交叉编译器,可以参考给出的链接。接着,使用交叉编译好的qmake编译Qt项目,需要将交叉编译工具链的路径添加到环境变量PATH中。然后,通过查找qmake位置,进入Qt项目,使用qmake生成Makefile,再通过make命令编译生成可执行文件。最后,将生成的可执行文件拷贝到开发板文件系统下即可使用。如果使用Busybox根文件系统,需要手动打开网络,包括启动网络服务、获取IP、设置用户密码等步骤。
2024-08-26 14:16:05 389
原创 嵌入式Qt移植之Qt部署到Busybox根文件系统-思维导图-学习笔记-基于正点原子阿尔法开发板
将编译好的Qt部署到Busybox根文件系统中的具体步骤。首先,将配置好的TF卡插入Ubuntu系统,并将qt-everywhere-src-5.12.9目录下的arm-qt-imx6ull拷贝至/usr/lib目录。然后,将TF卡插入开发板启动,编辑/etc/profile文件以配置Qt的环境变量,确保更改生效。为了支持Qt程序显示中文,需将Windows系统下的中文字库复制到Linux系统中的/usr/share/fonts目录,注意仅限于个人学习用途。最后,通过重启设备并运行编译好的Qt示例程序...
2024-08-25 19:11:47 734
原创 嵌入式Qt移植之tslib部署到Busybox根文件-思维导图-学习笔记-基于正点原子阿尔法开发板
介绍了如何在嵌入式Qt移植过程中,将tslib部署到Busybox根文件系统。首先,通过Ubuntu虚拟机将TF卡挂载,删除出厂文件系统,并将Busybox根文件系统解压到TF卡的rootfs分区,确保开发板能从SD卡启动。接着,将编译好的tslib拷贝到Busybox根文件系统的/usr/lib目录。为了避免与已存在的tslib冲突,需要重新配置tslib的环境变量。配置过程中,需要注意电阻屏和电容屏的不同需求,尤其是对于电容屏的校准文件要慎重处理。最后,通过重启开发板并运行ts_test,确......
2024-08-25 15:56:13 586
原创 编译 ARM 平台 Qt5.12.9 源码-思维导图-学习笔记-基于正点原子阿尔法开发板
编译ARM平台的Qt5.12.9源码分为几个主要步骤。首先,下载合适的平台源码,其中Windows平台生成.dll库文件,Linux平台生成.so库文件,这些动态库在运行时被加载到应用程序中。下载源码可通过Qt官方网站或使用wget指令完成。在下载和解压过程中,用户需要特别注意路径和文件名的准确性。接下来,编辑qmake.conf文件以配置相关编译器及路径。为避免手动输入错误,正确配置文件已上传至gitee,用户可直接下载并编辑,确保配置路径准确。配置编译选项时,使用./configure -help...
2024-08-24 13:45:00 978
原创 嵌入式Qt移植之tslib编译-思维导图-学习笔记-基于正点原子阿尔法开发板
Tslib是一个用于处理触摸屏事件的开源库,作为驱动层与应用层之间的适配层,能够将触摸屏的坐标信息传递给Qt进行处理。下载Tslib源码可以通过git地址(https://github.com/kergoth/tslib)或者从开发板光盘路径中获取。在Ubuntu中,将下载的压缩包解压并进入相应目录。编译Tslib源码需要先安装autoconf、automake、libtool和pkg-config等软件,然后执行autogen.sh生成Makefile。接下来,使用特定的配置命令`./configure
2024-08-24 09:00:00 478
原创 嵌入式Qt移植前期准备-思维导图-学习笔记-基于正点原子阿尔法开发板
Qt移植是为了在自制系统或资源受限的嵌入式系统上运行Qt应用,或者使用特定Qt版本。可以通过编译Qt源码或使用开源构建框架如Buildroot和Yocto来移植。编译Qt源码需要从官网获取源码并编译,生成.so库文件;Buildroot方便构建,Yocto则相对复杂且庞大。准备嵌入式Qt移植需要安装通用型交叉编译器,特别是针对ARM架构的交叉编译器,如Linaro GCC编译工具链。下载并解压Linaro GCC编译器到Ubuntu系统的指定目录,修改环境变量并重启系统即可完成交叉编译器的安装和验证..
2024-08-23 17:10:30 717
原创 Qt串口编程Serial Port-思维导图-学习笔记-基于正点原子阿尔法开发板
正点原子的 I.MX6U 开发板出厂系统已预配置两路串口,其中UART1用于调试,UART3可编程。在Qt串口编程中,需在项目文件中添加串口模块支持,并在mainwindow.h中声明相关变量和方法。mainwindow.cpp中实现了界面布局初始化、串口扫描、波特率和数据位等参数的初始化,以及串口打开、关闭和数据发送接收的功能。通过垂直和网格布局,用户界面支持全屏显示,并可根据系统可用串口动态更新选项。编程时,由于UART1已被占用,开发者需使用UART3进行串口通信。
2024-08-22 09:45:00 1161
原创 Qt使用开发板上的按键-思维导图-学习笔记-基于正点原子阿尔法开发板
如何使用 Qt 在 I.MX6U 开发板上监测按键并显示按键状态。首先,出厂内核设备树在路径 arch/arm/boot/dts/imx6ull-14x14-evk.dts 中已将 KEY0 按键注册为 gpio-keys 类型设备,键值为 114,对应 Qt 的 Key_VolumeDown 键值。该按键在普通键盘上找不到,但某些笔记本电脑可以通过 FN + F6 等组合键模拟。在 Windows/Ubuntu 上使用 Key_Down 进行测试,而在开发板上则使用 KEY0 按键。为了监测 KEY0..
2024-08-21 14:45:00 819
原创 Qt点亮开发板的一个LED-思维导图-学习笔记-基于正点原子阿尔法开发板
使用 Qt 在开发板上控制一个 LED。首先,界面初始化设置在嵌入式系统中根据屏幕大小进行全屏显示,按钮居中显示。由于出厂系统中 LED 的触发方式为心跳方式,为方便控制,需要通过 system() 函数将其触发方式改为 none。接着,描述了设置 LED 的方法,包括写入“0”或“1”来分别关闭和开启 LED,在写入之前先读取其当前状态以防止其他设置冲突。获取 LED 状态的代码负责读取 LED 的当前状态,并显示在按钮上。最后,设置 LED 状态的方法是一个槽函数,由按钮点击触发,负责切换 LED 状态
2024-08-21 09:15:00 589
原创 I.MX6U交叉编译Qt项目-思维导图-学习笔记-基于正点原子阿尔法开发板
在I.MX6U平台上交叉编译Qt项目需要几个步骤。首先,将交叉编译工具fsl-imx-x11-glibc-x86_64-meta-toolchain-qt5-cortexa7hf-neon-toolchain-4.1.15-2.1.0.sh拷贝至Ubuntu系统并修改其权限,然后运行脚本安装工具,默认目录为/opt/fsl-imx-x11/4.1.15-2.1.0。使用前需启用环境变量source /opt/fsl-imx-x11/4.1.15-2.1.0/environment-setup-cortexa
2024-08-20 15:00:00 487
原创 UDP 通信-Qt-思维导图-学习笔记
UDP(用户数据报协议)是一种轻量级、无连接且不可靠的协议,适用于需要快速响应的场景,如文字聊天和音视频通信。其优点是资源消耗小、处理速度快,但缺点是数据传输不可靠,可能会丢包。QUdpSocket类提供了通过UDP进行数据报发送和接收的功能,常用方法包括bind()、writeDatagram()和readDatagram()。UDP通信有三种模式:单播、广播和组播。单播是端对端通信,广播将消息发送到同一局域网内的所有主机,而组播则是将消息发送到特定的主机组。组播使用D类IP地址范围......
2024-08-20 09:30:00 2532
原创 TCP 通信-Qt-思维导图-学习笔记
TCP通信的基本概念和实现方法,包括服务端和客户端的操作步骤。TCP是一种面向连接、可靠且基于字节流的传输层通信协议。建立TCP连接需要服务端监听特定的端口并等待客户端连接,客户端通过指定的IP地址和端口号连接服务端,成功连接后即可进行数据的发送和接收。本文还详细讲述了在Qt框架中如何实现TCP通信,服务端通过QTcpServer监听连接请求,并通过QTcpSocket进行数据的读写;客户端使用QTcpSocket连接服务端并进行通信。实际应用中,需要选择正确的IP地址和未被占用的高端口号进行监听和连接..
2024-08-19 14:15:00 1374
原创 Qt网络编程基础-思维导图-学习笔记
Qt网络编程的基础知识,涵盖了TCP/IP客户端和服务器的实现,以及如何获取本机网络信息。Qt网络模块提供了编写TCP/IP客户端和服务器的类,如QTcpSocket用于实现TCP客户端功能,QTcpServer用于实现TCP服务器功能,以及QUdpSocket用于实现UDP通信。高级类如QNetworkRequest、QNetworkReply和QNetworkAccessManager用于执行通用协议的网络操作。网络配置管理类包括QNetworkConfiguration......
2024-08-19 08:45:00 540
原创 绘图与图表-Qt-思维导图-学习笔记
在绘图与图表程序中,QPainter类是绘图系统的核心,用于直接操作绘图。QWidget类作为绘图“画布”,提供绘图区域。通过重写paintEvent()方法,可以实现自定义的绘图操作及刷新。当界面初始化或需要刷新时,该事件会自动触发。应用实例展示了如何使用QPainter在窗口中心绘制并旋转CD图片,每100ms旋转1度角。QChart模块提供了绘制常见图表的接口,如曲线图、折线图等,且不需要学习第三方组件。在程序中,创建QSplineSeries对象表示曲线,QChart对象表......
2024-08-18 08:30:00 2161
原创 多线程-Qt-思维导图-学习笔记
继承 QThread 的线程继承 QThread 是创建线程的常见方法。在这种方式中,只有 run() 方法在创建的线程里执行,其他方法即使属于子线程类也在主线程内执行。用户需要重写 run() 方法,将耗时操作写在其中。应用实例中,通过 QThread 类继承线程,并在 MainWindow 类中使用,通过按钮开启线程。当线程执行完成时,发送 resultReady 信号到主线程。继承 QObject 的线程继承 QObject 类创建线程更加灵活,可以通过 moveToThread() 方...
2024-08-18 06:00:00 983
原创 文本读写-Qt-思维导图-学习笔记
QFile类提供了读取和写入文件的接口,是嵌入式系统中最简单的方法之一。QFile可用于读写文本和二进制文件,并能与QTextStream或QDataStream一起使用。文件路径必须使用‘/’分隔符,基本操作包括检查文件存在、删除文件、打开和关闭文件等。QFile::open()函数需要传递QIODevice::OpenModeFlag枚举类型参数,以决定文件的打开方式。QTextStream类提供了一个方便的接口来读写文本,常与QFile结合使用。通过流操作符“”,可以方便地读写...
2024-08-17 14:45:00 557
原创 项目控件组(基于项)Item-Based-Qt-思维导图-学习笔记
QListWidget是一种继承自QListView的控件,提供基于项的列表管理,允许用户方便地添加和删除项目。相比QListView,QListWidget更易用,用户无需自行建模。一个典型的用法示例是创建一个QListWidget来显示音乐文件列表,并添加一个按钮触发文件选择操作。当用户点击按钮时,调用系统文件打开窗口并过滤只显示.mp3后缀的文件。用户选择后,这些文件路径将作为项添加到QListWidget中。QTreeWidget继承自QTreeView,提供预定义树模型的树视图,适合管理和显示..
2024-08-17 08:15:00 889
原创 项目视图组(基于模型)Model-Based-Qt-思维导图-学习笔记
Qt 提供了一系列基于模型的视图组件,用于展示和管理数据。这些视图组件包括 QListView、QTreeView、QTableView、QColumnView 和 QUndoView。QListView 继承自 QAbstractItemView,提供非分层的列表或图标视图,主要区别于基于项的 QListWidget,它需要使用模型来减少数据冗余并提高效率。QTreeView 用于展示树形结构的数据,通过 QStandardItemModel 构建树状模型。QTableView 提供表格视图,通过设置..
2024-08-16 14:00:00 541
原创 容器(Containers)-Qt-思维导图-学习笔记
容器(Containers)在Qt中用于组织和管理界面元素。QGroupBox 提供分组框功能,通常用于包含和组织一组相关的控件。QScrollArea 允许在其子部件超出可见范围时使用滚动条查看内容。QToolBox 和 QTabWidget 分别通过选项卡显示多个小部件和页面,以节省界面空间。QStackedWidget 则提供一个小部件堆栈,通过信号槽机制在不同页面间切换。QDockWidget 允许小部件在 QMainWindow 内停靠或浮动,可配置其初始停靠区域和移动限制。每种容器都有.....
2024-08-16 09:15:00 734
原创 空间间隔组(Spacers)-Qt-思维导图-学习笔记
QSpacerItem 是一个继承自 QLayoutItem 的类,主要用于在布局中提供空白或空间间隔。它可以创建水平间隔(Horizontal Spacer)和垂直间隔(Vertical Spacer),帮助调整子部件之间的距离。使用 QSpacerItem,开发者可以灵活地控制布局的结构和外观。在实际应用中,QSpacerItem 经常与按钮等控件结合使用。例如,在一个垂直布局中,可以添加一个垂直间隔和一个按钮,而在一个水平布局中,则可以添加多个按钮和一个水平间隔。通过这种方式,可以实现良好的...
2024-08-15 14:00:00 703
原创 布局管理(Layouts)-Qt-思维导图-学习笔记
Qt 提供了丰富的布局管理类,包括 QBoxLayout、QGridLayout、QFormLayout 和 QStackedLayout,它们都继承自 QLayout。QBoxLayout 提供水平或垂直排列子部件的功能,通过将父布局的空间分成多个框来管理子部件。QGridLayout 则将空间划分为行和列,适合需要精确对齐的布局,并可以通过设置行列比例来控制布局的伸缩性。QFormLayout 专注于表单布局,将标签和输入部件按行排列,适用于简单的表单界面。QStackedLayout 允许在多个子..
2024-08-15 08:15:00 565
原创 显示窗口部件(Display Widgets)-Qt-思维导图-学习笔记
在Qt Designer的显示窗口部件中,提供了10种用于显示内容的小部件,包括QLabel、QTextBrowser、QGraphicsView、QCalendarWidget、QLCDNumber和QProgressBar等。QLabel用于显示文本或图像,适合单一图像展示;QTextBrowser则是带有超文本导航功能的文本浏览器;QGraphicsView用于可视化QGraphicsScene的内容。QFrame是所有有框架窗口部件的基类,能够绘制各种框架形状,如Box......
2024-08-14 14:15:00 1014
原创 输入窗口部件(Input Widgets)-Qt-思维导图-学习笔记
Qt Designer 提供了16种输入部件,用于开发不同类型的用户界面控件。这些部件包括组合框(ComboBox)、字体组合框(FontComboBox)、单行编辑框(LineEdit)、文本编辑框(TextEdit)、纯文本编辑框(PlainTextEdit)、数字旋转框(SpinBox)及其变种双精度数字旋转框(DoubleSpinBox)、时间编辑框(TimeEdit)、日期编辑框(DateEdit)、日期时间编辑框(DateTimeEdit)、数字拨盘框(Dial)、水平和垂直滚动条
2024-08-14 10:15:00 817
原创 按钮(Buttons)-Qt-思维导图-学习笔记
按钮是 Qt 中常用的控件,广泛应用于嵌入式系统和 PC 端的界面交互中。Qt 提供了六种内置按钮部件,包括 QPushButton、QToolButton、QRadioButton、QCheckBox、QCommandLinkButton 和 QDialogButtonBox。QPushButton 是最常用的下压按钮,常用于触发命令或事件。QToolButton 则多用于工具栏中的快速访问按钮,通常显示图标。QRadioButton 提供互斥选择功能,适合“多选一”场景。QCheckBox 支持多选多,
2024-08-13 14:45:00 978
原创 Qt信号与槽-思维导图-学习笔记
Qt的信号与槽机制是其编程的基础,使得界面组件的交互操作更加直观和简单。信号(Signal)是特定情况下被发射的事件,如按钮点击等;槽(Slot)是对信号响应的函数,可以在类的任意部分定义。使用QObject::connect()函数可以将信号和槽关联起来。连接信号与槽的规则要求信号与槽的参数个数和类型需一致,并且需要在类的定义中加入Q_OBJECT宏。在实际项目中,可以通过在头文件声明信号和槽,并在源文件中实现槽函数,然后使用connect()函数连接信号与槽。Qt提供了大量预定义好的信号与槽......
2024-08-13 10:15:00 766
原创 Qt环境搭建-思维导图-学习笔记
在Windows系统中,用户可以从Qt官网下载Qt 5.12.9安装包,建议使用迅雷加速下载。安装时需断网,选择安装目录和组件,同意许可协议后完成安装,并启动Qt Creator。在Ubuntu系统中,首先准备Ubuntu 18.04镜像文件并创建虚拟机。下载Qt安装包后,通过FTP发送到Ubuntu,安装vsftpd服务并配置,使用FileZilla传输文件。通过wget命令下载Qt安装包并赋予执行权限,使用sudo权限安装Qt,断网后配置目录和组件,完成安装并启动Qt Creator......
2024-08-10 10:15:00 606
原创 CAN 应用编程基础-I.MX6U嵌入式Linux C应用编程学习笔记基于正点原子阿尔法开发板
CAN(控制器局域网络)是一种ISO国际标准化的串行通信协议,最初由德国博世公司开发,旨在解决汽车电子控制系统之间的通讯问题,减少信号线数量。CAN已成为欧洲汽车网络的标准协议,并应用于工业自动化、医疗设备等领域。CAN采用多主控制方式,允许所有单元在总线空闲时开始发送消息。其具有高位速率、高抗电磁干扰性和强错误检测能力。CAN总线通过两根线(CAN_H和CAN_L)连接,节点通过差分电压传输信号。CAN协议参考了OSI七层模型,但只定义了传输层、数据链路层和物理层......
2024-08-08 15:15:00 1037
原创 socket 编程基础(网络编程)-I.MX6U嵌入式Linux C应用编程学习笔记基于正点原子阿尔法开发板
socket编程是一种在Linux下的进程间通信机制,用于不同主机上或同一主机上应用程序之间的通信。它通常采用客户端与服务器的模式进行通信,多个客户端可以同时连接到服务器。开发人员通过调用内核提供的socket接口来开发应用程序,socket作为应用层与TCP/IP协议的中间软件抽象层,简化了开发过程。socket编程广泛应用于网络程序设计,并且基于BSD socket标准的应用程序可以方便地移植到不同平台。编程接口包括创建套接字的socket()函数、绑定IP地址和端口的bind()函数......
2024-08-08 10:15:00 572
原创 网络基础知识-I.MX6U嵌入式Linux C应用编程学习笔记基于正点原子阿尔法开发板
网络通信是不同主机上的进程间通信,使用套接字(Socket)实现数据传输。网络通信分为硬件层、驱动层和应用层,数据通过网络连接(有线或无线)传输,涉及TCP/IP等协议。TCP/IP模型简化了OSI七层模型,分为应用层、传输层、网络层和网络接口层。数据在传输中需经历封装和拆封过程。IP地址是标识互联网主机的唯一标识,分为A、B、C、D、E类,每类地址有特定用途和范围。TCP协议通过三次握手建立连接、四次挥手关闭连接,提供可靠传输。UDP协议无连接、不可靠,传输速度快,适用于实时视频传输等。端口号用于....
2024-08-07 15:15:00 1144
原创 音频应用编程-I.MX6U嵌入式Linux C应用编程学习笔记基于正点原子阿尔法开发板
ALSA(高级Linux声音体系)是Linux系统下的主流音频架构,替代了旧版的OSS,提供音频和MIDI支持。ALSA框架设计复杂,采用分离和分层思想,在应用层提供alsa-lib库(标准API)以简化音频硬件控制。alsao-lib库为开发者提供统一接口,隐藏驱动层实现。混音器配置通过alsamixer和amixer工具实现,核心在alsa-lib库的Mixer Interface模块。PCM插件扩展PCM设备功能,如hw插件直接与ALSA内核通信,提供无转换的原始通信。plughw插件提供....
2024-08-07 10:00:00 1933
原创 看门狗应用编程-I.MX6U嵌入式Linux C应用编程学习笔记基于正点原子阿尔法开发板
看门狗定时器是一种计数器设备,若在指定时间内未复位,会触发系统重启或中断信号。在I.MX6UL/I.MX6ULL SoC中,集成了两个看门狗定时器:WDOG1 和 WDOG2,其中WDOG1可产生中断信号和复位CPU。Linux系统下,看门狗设备节点通常在/dev/目录下,系统默认节点为/dev/watchdog。应用程序通过ioctl()函数控制看门狗,包括打开设备、获取设备信息、设置超时时间、开启/关闭看门狗计时和喂狗操作。常用的ioctl指令宏包括WDIOC_GETSUPPORT获取设备支持功能...
2024-08-03 16:05:11 882
原创 串口应用编程-I.MX6U嵌入式Linux C应用编程学习笔记基于正点原子阿尔法开发板
介绍了串口应用编程,强调了串口在Linux系统中的重要性和应用。串口是一种数据按顺序传输的接口,通常用于工业领域,并在Linux中被视为标准输入输出设备,通过设备节点进行操作。文中介绍了终端的定义与分类,包括本地终端和基于网络的远程终端,以及如何在Linux中查看终端和串口设备节点。接着,内容分析了串口应用编程的基本操作,包括使用ioctl()、read()和write()等函数,以及封装在termios API中的串口配置。termios结构体是控制终端行为的核心,涉及输入输出模式、波特率、数据位..
2024-08-03 12:56:40 816
原创 V4L2 摄像头应用编程-I.MX6U嵌入式Linux C应用编程学习笔记基于正点原子阿尔法开发板
V4L2(Video for Linux Two)是Linux内核中的视频设备驱动框架,为视频类设备(如摄像头)提供统一接口规范。V4L2注册的设备在系统的/dev/目录下生成设备节点文件,通常命名为videoX。应用程序通过对这些设备节点进行I/O操作来配置和使用设备。摄像头应用编程的步骤包括:打开设备:使用open函数打开摄像头设备文件。查询设备属性:使用ioctl()函数查询设备功能,确保其支持视频采集功能。......
2024-07-29 17:13:36 349
原创 PWM 应用编程-I.MX6U嵌入式Linux C应用编程学习笔记基于正点原子阿尔法开发板
在u-boot环境中,通过/sysfs目录操作I.MX6U的8个PWM控制器。每个控制器的属性文件包含npwm(只读,显示PWM输出路数),export(导出PWM控制器),和unexport(删除导出的PWM控制器)。导出后会生成pwm0目录,包含enable(使能状态),polarity(极性设置),period(周期设置),和duty_cycle(占空比设置)等属性文件。在编写应用程序时,需校验传入参数数量并打印PWM配置信息,生成PWM设备路径并检查路径是否存在,不存在则导出PWM.......
2024-07-29 10:00:00 993
原创 FT_New_Face error: 2
在 FreeType 库中,FT_New_Face 函数通过返回一个错误代码来指示是否成功加载了字体文件。函数返回的错误代码为 2,这通常意味着 FreeType 无法打开指定的字体文件。
2024-07-28 15:49:31 270
原创 在 LCD 上显示字符-I.MX6U嵌入式Linux C应用编程学习笔记基于正点原子阿尔法开发板
在LCD屏幕上显示字符的传统方法是通过字符取模,生成字符点阵并在LCD上显示。这种方法涉及使用二维数组表示字符点阵,每个小方块对应一个bit位。例如,一个64x86的字符点阵可以用一个86行8列的unsigned char数组表示。虽然这种方法简单,但不适用于复杂应用。现代方法使用操作系统字体文件和开源字体引擎如FreeType来解析字体文件,读取字符位图数据。FreeType是一个开源、高效、可定制且可移植的字体引擎库,提供统一的接口来访问多种不同格式的字体文件。通过FreeType......
2024-07-28 15:38:16 454
原创 LCD 横屏切换为竖屏-I.MX6U嵌入式Linux C应用编程学习笔记基于正点原子阿尔法开发板
将默认横屏显示的 LCD 屏切换为竖屏显示。LCD 屏在默认横屏模式下具有固定坐标体系,例如在 800x480 分辨率下,左上角坐标为(0, 0),右下角为(799, 479)。显存地址的计算公式为 base + (y * width + x) * pix_bytes。在竖屏模式下,应用程序认为的起点为左下角(0, 0),需要将坐标转换为实际的物理坐标。显存地址计算公式调整为 base + ((height - 1 - x) * width + y) * pix_bytes。
2024-07-25 15:12:16 634
原创 在 LCD 上显示 png 图片-I.MX6U嵌入式Linux C应用编程学习笔记基于正点原子阿尔法开发板
在LCD上显示PNG图片需要了解PNG的无损压缩、体积小、索引彩色模式、优化网络传输显示及透明效果等特点。libpng是一款免费、开源的C语言库,支持PNG图像的解码和编码,并依赖于zlib库。移植过程包括下载及编译zlib源码,再下载并编译libpng源码,确保在开发板上正确配置和安装。libpng使用指南介绍了如何创建和初始化png_struct和png_info对象,设置错误返回点,指定数据源,并通过high-level或low-level接口读取和解码PNG图像数据......
2024-07-25 14:08:48 1237
原创 在 LCD 上显示 jpeg 图像-I.MX6U嵌入式Linux C应用编程学习笔记基于正点原子阿尔法开发板
JPEG(Joint Photographic Experts Group)是一种广泛使用的图像压缩标准,提供有损压缩,能够在保持图像质量的同时显著减小文件大小。libjpeg是一个用C语言编写的开源库,支持JPEG图像的解码和编码,以及其他相关功能。用户可以通过下载libjpeg的源码并进行编译,将其移植到不同的系统中使用。libjpeg库包含多个API,用户可以通过查看头文件jpeglib.h来了解这些API的功能。在使用libjpeg进行图像处理时,需要注意错误处理。
2024-07-24 14:30:00 1916
Buildroot构建Qt根文件系统-思维导图-学习笔记-基于正点原子阿尔法开发板
2024-08-26
嵌入式Qt移植之编译Qt项目-思维导图-学习笔记-基于正点原子阿尔法开发板
2024-08-26
嵌入式Qt移植之Qt部署到Busybox根文件系统-思维导图-学习笔记-基于正点原子阿尔法开发板
2024-08-25
嵌入式Qt移植之tslib部署到Busybox根文件-思维导图-学习笔记-基于正点原子阿尔法开发板
2024-08-25
嵌入式Qt移植之tslib编译-思维导图-学习笔记-基于正点原子阿尔法开发板
2024-08-23
编译 ARM 平台 Qt5.12.9 源码-思维导图-学习笔记-基于正点原子阿尔法开发板
2024-08-23
嵌入式Qt移植前期准备-思维导图-学习笔记-基于正点原子阿尔法开发板
2024-08-23
Qt串口编程Serial Port-思维导图-学习笔记-基于正点原子阿尔法开发板
2024-08-21
Qt使用开发板上的按键-思维导图-学习笔记-基于正点原子阿尔法开发板
2024-08-19
Qt点亮开发板的一个LED-思维导图-学习笔记-基于正点原子阿尔法开发板
2024-08-19
I.MX6U交叉编译Qt项目-思维导图-学习笔记-基于正点原子阿尔法开发板
2024-08-19
UDP 通信-Qt-思维导图-学习笔记
2024-08-18
TCP 通信-Qt-思维导图-学习笔记
2024-08-18
Qt网络编程基础-思维导图-学习笔记
2024-08-18
多线程-Qt-思维导图-学习笔记
2024-08-16
绘图与图表-Qt-思维导图-学习笔记
2024-08-15
文本读写-Qt-思维导图-学习笔记
2024-08-15
项目控件组(基于项)Item-Based-Qt-思维导图-学习笔记
2024-08-15
项目视图组(基于模型)Model-Based-Qt-思维导图-学习笔记
2024-08-15
容器(Containers)-Qt-思维导图-学习笔记
2024-08-15
空间间隔组(Spacers)-Qt-思维导图-学习笔记
2024-08-14
布局管理(Layouts)-Qt-思维导图-学习笔记
2024-08-14
显示窗口部件(Display Widgets)-Qt-思维导图-学习笔记
2024-08-14
输入窗口部件(Input Widgets)-Qt-思维导图-学习笔记
2024-08-13
按钮(Buttons)-Qt-思维导图-学习笔记
2024-08-12
Qt信号与槽-思维导图-学习笔记
2024-08-11
Qt环境搭建-思维导图-学习笔记
2024-08-08
CAN 应用编程基础思维导图-I.MX6U嵌入式Linux C应用编程学习笔记基于正点原子阿尔法开发板
2024-08-07
socket 编程基础(网络编程)思维导图-I.MX6U嵌入式Linux C应用编程学习笔记基于正点原子阿尔法开发板
2024-08-07
网络基础知识-I.MX6U嵌入式Linux C应用编程学习笔记基于正点原子阿尔法开发板
2024-08-06
音频应用编程-I.MX6U嵌入式Linux C应用编程学习笔记基于正点原子阿尔法开发板
2024-08-06
看门狗应用编程-I.MX6U嵌入式Linux C应用编程学习笔记基于正点原子阿尔法开发板
2024-08-03
串口应用编程-嵌入式LinuxC应用编程
2024-08-02
V4L2 摄像头应用编程-I.MX6U嵌入式Linux C应用编程学习笔记基于正点原子阿尔法开发板
2024-07-29
PWM 应用编程-I.MX6U嵌入式Linux C应用编程学习笔记基于正点原子阿尔法开发板
2024-07-28
在LCD显示字符-LinuxC应用开发
2024-07-28
LCD 横屏切换为竖屏-I.MX6U嵌入式Linux C应用编程学习笔记基于正点原子阿尔法开发板
2024-07-25
在 LCD 上显示 png 图片
2024-07-25
在 LCD 上显示 jpeg 图像
2024-07-23
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人