使用slint建立rust GUI程序
1、参考资料文档:https://slint-ui.com/releases/0.2.1/docs/rust/slint/ 仓库:https://github.com/slint-ui/slint 模板:https://github.com/slint-ui/slint-rust-template 示例:https://github.com/slint-ui/slint/tree/master/examples VSCode插件:slint语法高亮并可以进行界面预览 https://marketplace.visualstudio.com/items?itemName=Slint.slint
2、建立项目
新建项目
1cargo new test
添加库
123[dependencies]slint = "0.2.1"
main中添加代码:
12345678910111213fn main() { MainWindow::new().run();}slint::slint!{ MainWindow ...
vscode+DAPLink/CMSIS-DAP+pyocd单片机开发和SEGGER RTT打印
使用VSCode插件EIDE开发单片机项目非常方便,再配合PyOCD可以进行烧写、调试和RTT打印功能。当前的RTT输出功能要么使用JLink+Segger RTT Viewer的方式,要么使用其他第三方替代方案比如H7-Tool,这两种方案效果都很好,但是价格比较贵;另一个解决方式是使用开源的DAPLink仿真器+RTT打印功能,比如这里的 RTTView ,但是效果不是很好用。但是新发布的PyOCD-0.33.0 支持了RTT命令,因此可以使用DAPLink+PyOCD方式实现RTT输出打印功能。 下面介绍STM32配合DAPLink仿真器进行RTT打印输出功能,这样可以替代JLink+Segger RTT Viewer的功能,EIDE简单使用可以查看文章: 使用VSCode插件EIDE(Embedded IDE)开发ARM单片机项目-GD32单片机 下面以STM32F103C8单片机为例进行介绍。
1、示例代码
首先使用EIDE新建一个LED灯项目;
然后将 segger rtt print 功能添加到工程下;
添加后项目目录包含如下:
在main中添加rtt打印测试代 ...
VSCode使用-一些小技巧
1、快捷键1.1、基本快捷键
Ctrl+R 切换工作区
Ctrl+P 快速打开文件
Ctrl+Shift+P 命令面板
Shift+Alt+F 格式化代码
Ctrl+K Ctrl+F 格式化选中的代码
Ctrl+\ 拆分编辑器
Ctrl + - 放大缩小窗口
Ctrl+Shift+U 输出面板
1.2、编辑
Shift+Alt+I 选定每行末尾多行编辑,配合Alt+鼠标左键插入光标
Ctrl+L选中一行
Ctrl+Shift+L选中多个相同目标
F2 重命名变量
Ctrl+X 不选中时候剪切一行
Ctrl+C 不选中时候复制一行
Shift+Alt + ↓ / ↑ 向上向下复制行
Ctrl+ [ / ] 缩进
Ctrl+↓ / ↑ 滚动
Ctrl+Shift+[ / ] 折叠
Ctrl+Del 删除右侧单词
Ctrl+Back 删除左侧单词
1.3、移动和选择
Ctrl + ←/→ 单词移动
Ctrl+Shift+←/→ 单词选择
Ctrl+Shift+\ 跳转到匹配的括号
Alt + ...
ESP32开发-ESP-IDF+VSCode自定义组件RGB-LED
使用ESP-IDF开发方式控制RGB LED灯,并将其封装为更加简单的ESP-IDF组件方便调用。
1、准备工作1.1、硬件模块
ESP32-WROVER-E
LED
1.2、软件
VSCode ESP开发插件
ESP-IDF SDK
1.3、连线RGB LED的三个控制引脚分别连接ESP32开发板的12、14、27号引脚,简图如下:
2、代码2.1、目标实现一个自定义组件:rgbLEDC,该组件功能包括LED引脚配置(可以通过menuconfig配置)、基本开关控制、颜色调节、呼吸灯效果。
2.2、具体步骤(1)新建项目rgbLEDAPP; (2)在项目文件夹下新建component文件夹,执行命令 ESP-IDF -> 创建新的ESP-IDF组件: 在出现的输入框中填写组件名称:rgbLEDC,完成添加; (3)在rgbLEDC组件文件夹下新建Kconfig文件,用于menuconfig配置,内容如下:
Kconfig
12345678910111213141516menu "rgbled components config" ...
使用VSCode插件EIDE(Embedded IDE)开发ARM单片机项目-GD32单片机
介绍使用VSCode插件开发Keil ARM单片机项目,这里以GD32芯片开发为例。
1、准备1.1、简介EIDE(Embedded IDE)是一款适用于开发 8051/STM8/Cortex-M/RISC-V 等单片机的VSCode插件,提供导入Keil项目、新建项目、编译、烧写等功能;更多先关资源可以查看官方提供的文档:https://docs.em-ide.com/#/
1.2、安装打开VSCode,然后搜索插件:eide,进行安装:
1.3、设置该插件实际调用的是安装好的编译器进行编译的,因此需要设置编译器路径才可以使用。
打开EIDE插件,并选择 “设置工具链路径“ 选项,进行设置:
上面KeilC51设置为Keil51安装目录下的TOOLS.INI路径,ARMCC是Keil5的ARM开发安装文件夹下TOOLS.INI文件路径;
也可以直接从 “打开插件设置” 选项填写路径:
2、使用2.1、导入项目
点击“导入项目”,然后选择MDK项目导入,如这里是一个GD32E230C8的测试项目:
2.2、编写代码
2.3、编译构建
编译设置
在“构建配置”和“ ...
使用VSCode插件EIDE(Embedded IDE)开发51单片机项目-CH559
介绍使用VSCode插件开发Keil C51单片机项目,这里以开发CH559芯片为例。
1、准备1.1、简介EIDE(Embedded IDE)是一款适用于开发 8051/STM8/Cortex-M/RISC-V 等单片机的VSCode插件,提供导入Keil项目、新建项目、编译、烧写等功能;更多先关资源可以查看官方提供的文档:https://docs.em-ide.com/#/
1.2、安装打开VSCode,然后搜索插件:eide,进行安装:
1.3、设置该插件实际调用的是安装好的编译器进行编译的,因此需要设置编译器路径才可以使用。
打开EIDE插件,并选择 “设置工具链路径“ 选项,进行设置:
上面KeilC51设置为Keil51安装目录下的TOOLS.INI路径,ARMCC是Keil5的ARM开发安装文件夹下TOOLS.INI文件路径;
也可以直接从 “打开插件设置” 选项填写路径:
2、使用2.1、导入项目
点击“导入项目”,然后选择Keil C51项目导入,如这里是一个WCH559的测试项目:
导入时候,弹出如下提示,选择存放eide项目文件到当前项目文件夹: ...
ESP32开发-ESP-IDF+VSCode-RGB-LED
使用ESP-IDF开发方式控制RGB LED灯。
1、准备工作1.1、硬件模块
ESP32-WROVER-E
LED
1.2、软件
VSCode ESP开发插件
ESP-IDF SDK
1.3、连线RGB LED的三个控制引脚分别连接ESP32开发板的12、14、27号引脚,简图如下:
2、代码2.1、目标本次要实现如下LED灯光效果:红绿蓝分别闪烁三次->红色呼吸灯->绿色呼吸灯->蓝色呼吸灯->黄色显示最亮、一半亮、最弱亮度。
2.2、步骤(1)在VSCode中,使用ESP32插件新建项目rgbLED; (2)在主程序文件中添加如下代码:
1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031 ...
常用资源搜索获取
1、音视频类
ICON图标:阿里巴巴ICON库- https://www.iconfont.cn/
2、开发者论坛
芯片设计:EETOP- http://bbs.eetop.cn/
3、开发类资源
PCB库:snapeda - https://www.snapeda.com/
4、开发者搜索
百度开发者搜索:https://kaifa.baidu.com/home
常用软件工具
1、windows
截图 FastStone capture: https://www.faststonecapture.cn/
安卓手机控制工具:scrcpy- (https://github.com/Genymobile/scrcpy)\[https://github.com/Genymobile/scrcpy\]
PDF转word-pdf2doxc: https://dothinking.github.io/pdf2docx/quickstart.gui.html
单片机开发-教程笔记资源
1、电子硬件
电子硬件基础知识:spark fun学习资源
2、单片机软件
状态机编程方法:状态机C语言实现