- 博客(10)
- 收藏
- 关注
原创 在星闪liteos中创建一个helloworld工程,以在wsl-ubuntu-fbbws63环境下创建为例
例如以下代码,告诉CMake系统在什么条件(定义CONFIG_ENABLE_MY_DEMO)下编译hello_world目录,CONFIG_ENABLE_MY_DEMO 是Kconfig生成的宏,add_subdirectory_if_exist 确保demo目录存在时才添加。在demo.c、demo.h中添加自己的业务代码,这里以在demo.c中添加一个创建任务,并在任务中打印消息为例,app_run函数为应用程序的入口函数。在SOURCES_LIST中添加.c文件,多个.c文件直接换行加在后面即可。
2025-11-16 15:33:59
518
1
原创 C语言编译过程中产生的各种文件
多文件编译链(main、math 系列):main.c 和 math.c 各自经历预处理、编译、汇编过程,生成 main.o 和 math.o,再将这些目标文件与 hello.o 一起链接,最终生成可执行文件 program。单文件编译链(hello 系列):hello.c 经预处理生成 hello.i,再经编译生成汇编文件 hello.s,接着经汇编生成目标文件 hello.o,最后经链接生成可执行文件 hello。生成命令:gcc -c hello.c -o hello.o。
2025-11-15 21:05:19
898
1
原创 C语言程序编译过程
这两种情况所使用的硬件相同,所以目标代码相同,但是Windows和Linux所需的启动代码不同,因为这些系统处理程序的方式不同。然而,目标文件中只包含编译器为你编写的代码翻译的机器语言代码,可执行文件中还包含你编写的程序中使用的库函数和启动代码的机器代码。我们在这里描述的是最普遍的一种形式,即把源代码转换为机器语言代码,并把结果放在目标代码文件 (或简称目标文件 )中(这里假设源代码只有一个文件)。链接器的作用是,把你编写的目标代码、系统的标准启动代码和库代码这3部分合并成一个文件,即可执行文件。
2025-11-15 17:43:36
662
1
原创 佳能相机.cr2文件浅度解析
前者不仅仅是一种图像格式,而是存储了大量的原始数据,是佳能专有的RAW图像格式,基于TIFF 6.0架构设计,采用拜耳阵列原始数据存储机制,保留了CMOS传感器捕获的12位或14位未经处理的像素信息。这意味着在后期处理时,有很大的调整空间,可以对照片的色彩、对比度、曝光等参数进行大幅度且较为精准的调整,能最大程度还原拍摄场景的细节和色彩。这也保证了图像的高质量和高分辨率。图像存档:因其包含丰富原始信息,适合长期存档,以便未来有新的后期处理技术或需求时,仍能从原始数据中挖掘出更多可能性。
2025-11-10 20:21:10
247
原创 硬件工程师常看
弗吉尼亚理工的CPES中心。W2aew(射频电路)芯查查X星球(app)苏老师出品,必属精品。老吴,一个有趣的男人。台湾同胞做的,很给力。
2025-11-10 20:05:22
243
原创 wsl--import导入命令解析
使用 wsl --import 命令不是简单的 “直接解压”,而是将 WSL 分发版的镜像文件(通常是 .tar 格式)导入为可运行的 WSL 系统实例—— 过程中会包含 “解压镜像内容 + 初始化 WSL 运行环境” 两步,最终生成一个完整的、可启动的 WSL 子系统(而非单纯的解压文件)。导入后的结果:生成一个独立的 WSL 实例(可通过 wsl --list -v 查看),而非单纯的文件夹(虽然导入时会指定 “安装目录”,但该目录下是 WSL 运行所需的系统文件,不能直接修改或打开)。
2025-11-08 17:36:00
811
原创 Ubuntu Vim 保存退出方法
a:在光标 后面 插入(比如光标在 “abc” 的 “b” 上,按 a 后输入 “x” 变成 “abxc”)(放弃修改)或 wq(保存退出)。:%s/旧内容/新内容/g # 替换整个文件的所有“旧内容”(最常用,比如批量改变量名):s/旧内容/新内容/g # 替换当前行的所有“旧内容”(g=global):%s/旧内容/新内容/ # 替换整个文件的第一个“旧内容”(%=整个文件)基础移动:h(左)、j(下)、k(上)、l(右)(替代方向键,习惯后效率翻倍)
2025-11-08 16:43:40
682
原创 嵌入式的状态机
(Embedded State Machine)是一种基于有限状态机(Finite State Machine, FSM)理论的建模方法,用于描述和控制嵌入式设备在不同状态下的行为及其状态转换逻辑。它通过定义系统的状态、触发状态转换的事件以及状态切换时的动作,使复杂的嵌入式逻辑变得清晰、可控,尤其适合处理实时性强、事件驱动的场景。从一个状态到另一个状态的迁移,由特定事件触发,并可能伴随相应的动作(如输出控制信号、更新变量、记录日志)。在状态切换前后执行对应操作,或在主循环中根据当前状态调用不同函数。
2025-04-26 11:49:01
1683
原创 ST 32烧录时no target connected及解决方法
3.keil软件Debug->use ST-Link Debugger->settings-Debug- Target Com中Port->SW。4.stlink upgrade更新一下驱动。1.检查接线,仔细检查,极有可能是线连错了。2.检查接线,仔细检查,极有可能是线连错了。3.检查接线,仔细检查,极有可能是线连错了。
2025-02-03 02:13:07
996
原创 keil5报错*** Error: CreateProcess failed, Command: ‘fromelf.exe --bin -o ./erPro.bin ./build/er.a及解决方法
编译文件时出现*** Error: CreateProcess failed, Command: 'fromelf.exe --bin -o ./erPro.bin ./build/er.axf'解决方法:退出keil5,清除中间生成程序重新编译。
2025-02-03 00:35:56
548
嵌入式系统开发中基于LiteOS的ws63芯片配置菜单详解:涵盖驱动、通信协议与安全功能的参数设置指导
2025-11-09
【嵌入式系统】基于IO复用表的多模式引脚功能配置:实现PWM、UART、SPI等外设资源动态分配的设计方案
2025-11-05
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅