在CLion上搭建LVGL模拟器
注:本文默认已经安装好了CLion,目标LVGL的版本为8.3,当然新版本也是可以的,都差不多。
需要准备的文件
lv_port_pc_eclipse
使用下列命令克隆仓库到本地(本文以8.3版本为例)
1git clone -b release/v8.3 --recursive http://10.1.1.11/service/tmall-service.git
mingw-builds-binaries
注意下载13.2.0-rt_v11-rev1或之前的版本,新版本CLion暂时不支持
SDL
配置环境
解压下载的mingw64,得到如下文件
解压下载的SDL2,得到如下文件
将SDL2/x86_64_w64-mingw32/include/SDL2复制到mingw64/x86_64_w64-mingw32/include文件夹中
将SDL2/x86_64_w64-mingw32/lib所有的文件复制到mingw64/x86_64_w64-mingw32/lib中
CLion配置工具链
在设置 - 构建、执行、部署 - 工具链新建如上工具链 ...
IDM脚本和谐破解注册
步骤一、在官网下载安装IDM
Internet Download Manager
二、在PowerShell里粘贴以下脚本
方法1(Recommended)
1irm https://massgrave.dev/ias | iex
方法2(Traditional)
1234567891011121314151617181920212223242526272829# Check the instructions here on how to use it https://massgrave.dev/idm-activation-script $ErrorActionPreference = "Stop"# Enable TLSv1.2 for compatibility with older clients[Net.ServicePointManager]::SecurityProtocol = [Net.ServicePointManager]::SecurityProtocol -bor [Net.SecurityProtocolType]::Tls12 ...
Git使用小技巧Tricks
经历了一次错误的commit,想要撤回123456789101112131415161718192021222324git log # 查看上次commit的完整hash字串git reset <arg1> <hash字串> # 撤回commit,<arg1>有参数--soft、--hard、--mixed可选,区别为# --soft 文件还保存在git里,可以再reset回来# 修改前 --> 修改后# (F) (F)# A-B-C A-B-C# ↑ ↑# master master## --hard 文件直接被删去,慎用!!!# 修改前 --> 修改后# (F) (F)# A-B-C A-B# ↑ ↑# master master## --mixed 文件未被删去,就在本地workspace里,处于未被add的状态(推荐)# 修改前 --> 修改后# (F) ...
嵌入式驱动接口在C语言里的实现
为什么要实现接口接口,可以是硬件与硬件之间连接的桥梁,可以是软件与软件之间沟通的窗户,也可以是硬件与软件之间通信的枢纽。其中硬件与硬件之间的桥梁,比如I2C、UART、CANFD、等等,软件与软件之间沟通的窗户,比如操作系统提供的各种API、等等。我实现的这套“接口”,连接了硬件与软件,它可以实现软硬件的完全解耦合,引入了平台无关性,提供了尽可能简化的逻辑,这有点类似于开汽车,一个人一旦学会了开汽车,那开什么牌子的汽车都基本是一个道理,实现了一套驱动,一套接口,对于不同系统、硬件平台的支持,这无疑会大大提高代码的易用性、复用性,大大减少重复的造轮子。
我所实现的接口
首先,需要一个结构体来存放系统接口,不妨叫system_interface_t,它用来存放系统的函数实现,是我们将驱动对接到不同平台的关键
123456789typedef struct { generic_err_t (*send)(uint8_t *data, size_t len); generic_err_t (*receive)(uint8_t *data, size_t len); ...
Jetbrains系IDE使用小技巧
主题
One Dark
插件
Chinese (Simplified) Language Pack / 中文语言包
CodeGlance Pro / 侧栏代码缩略
用CLion优雅地调试和开发STM32(CubeMX)
Why CLion?Keil操作简单,容易上手,而且可以很方便地进行调试,不过其古老的界面,不符合人类直觉的操作,不符合现代的编程习惯,必然会被逐渐淘汰。
Jetbrains系IDE具有强大的代码补全、界面风格、各种插件、流畅性等众多优点,毫无疑问能够极大提高开发效率,其中CLion就是专门面向C/C++开发的IDE。
工具链Toolchains
代码编辑器:CLion
编译器:MinGW、arm-none-eabi-gcc
调试器:OpenOCD
HAL代码生成器:STM32CubeMX
Debugger
cmsis-dap
stlink
jlink
etc.
工具安装
STM32CubeMX
OpenOCD 或者用xpack-openocd
MinGW(这是MinGW的在线安装器)
CLion
arm-none-eabi-gcc
几点注意:
建议OpenOCD、MinGW、arm-none-eabi-gcc解压 / 安装到一个特定的目录(eg. /program-tools/)
MinGW可能安装过程中会由于网络原因 ...
KiCad导出Gerber图形文件
KiCad导出Gerber图形文件
【前端学习笔记】 HTML+JavaScript+CSS
为什么要学最近在学长的建议下准备开始接触前端开发,学习路线预计是先HTML,再JavaScript,再CSS。因为我之前自己在树莓派上建过服务器,搭建过WordPress和NAS等服务,可能算有一丁点基础,所以日后可能会负责维护基地的Git和Docs等服务。也产生过些一套自己的博客主题或者浏览器主页之类的想法,一个比较好的例子是青柠起始页,之后可能会仿照着做一个。
HTMLHTML的全称为超文本标记语言,是一种标记语言。它包括一系列标签,通过这些标签可以将网络上的文档格式统一,使分散的Internet资源连接为一个逻辑整体。HTML文本是由HTML命令组成的描述性文本,HTML命令可以说明文字,图形、动画、声音、表格、链接等。值得注意的是,HTML不是一种编程语言,因其不具有逻辑处理的能力。
JavaScriptJavaScript(简称“JS”)是一种具有函数优先的轻量级,解释型或即时编译型的编程语言。虽然它是作为开发Web页面的脚本语言而出名,但是它也被用到了很多非浏览器环境中,JavaScript基于原型编程、多范式的动态脚本语言,并且支持面向对象、命令式、声明式、函数式编程范式 ...
基于ESP-IDF在ESP32S3上移植LVGL和显示触摸驱动
ESP32很久没搞了,这篇文章是基于VSCode写的,写的自认为很一般,不过对于初学者应该是有点帮助的,近期可能会用CLion再试试配置ESP-IDF环境 - 20241028更新
前言:之前基本一直在搞STM32的开发,想换到别的平台(比如ESP32)试试,也算对自己的一种锻炼和提升,注意到网上关于LVGL移植的教程非常多,但是大部分是基于Arduino平台的,基本没有基于ESP-IDF框架的(即使有也已经过时)。最近入手了几块ESP32的开发板和一块带CTP(电容触摸)的3.5寸IPS屏幕,可视角度和分辨率都不错,作为一个对GUI界面有执着追求的人,我想把当下很火的嵌入式GUI项目LVGL - Light and Versatile Embedded Graphics Library移植到我的项目里,并实现一部分优化,让它即使在资源极端有限的情况下也能较为流畅地运行~
进度:
(已完成)实现正确显示 - 20240412
(已完成)跑demo、优化帧率 - 20240414
(已完成)基于SquareLine平台设计UI - 很简单,可以看一下CLion实现的LVGL模拟器 20 ...
常用工具性网站&工具
工具网站🎁此处列出的网站均来源于互联网,请注意不要在这些网站上输入任何个人敏感信息(如有可能)
🌎某些网站可能需要国际网络
🌈欢迎贡献
添加站点
反馈站点失效
更多(todo)
序号
网站
添加时间
备注
1
https://www.runoob.com/
2024/7/9
菜鸟教程
2
https://serial.keysking.com/
2024/7/9
网页版串口助手
3
https://www.iconfont.cn/
2024/7/9
阿里巴巴矢量图标库
4
https://book.openmv.cc/
2024/7/9
OpenMV中文入门教程
5
https://www.3dcontentcentral.com/
2024/7/9
3D模型下载站
6
https://www2.futureware.at/KiCad/
2024/7/9
Altium Designe转KiCad
7
https://www ...