笔记
New农民工
这个作者很懒,什么都没留下…
展开
-
C语言常用的注册手段----个人笔记
【动作单元】*n = 【动作】 【动作】*n = 【动作组】接下来我们要将 gClear11111,gClear22222两个【动作】,或者更多【动作】组合成一个【动作组】。为了方便快速调整/新建【动作组】,可以新建一个结构体,结构体存放这些【动作】。为了方便快速新建【动作】,可以新建一个结构体,结构体里面存放这些【动作单元】为了快速组合【动作单元】为【动作】,我们再建立一个结构体。有一系列的【动作】需要排列,成为【动作组】。原创 2022-09-06 13:43:00 · 398 阅读 · 0 评论 -
STM32F103使用FSMC模拟8080时序驱动LCD屏幕(ILI9341)+ 配置使用STemWin
上篇文章移植StemWin的时候使用的是IIC的0.96寸屏幕。实验平台:野火指南者开发板。本次实验将0.96寸的小屏替换为3.2寸液晶屏。首先使用CubeMX驱动屏幕,然后再移植Stemwin。核心概念:FSMC通讯需要的引脚以及时序和8080引脚以及时序:拥有以上基础就知道应该如何实现功能了。================================分隔线==================================配置CubeMx:...原创 2021-08-24 12:35:17 · 4725 阅读 · 2 评论 -
打印LOG的方法【个人笔记】
此文章记录的代码是跟着B站上的课程敲下来的,个人很喜欢为了防止丢失,所以在这里记录下来。需要的小伙伴可前往BiliBili听讲:https://www.bilibili.com/video/BV1EB4y1N7iD=========================分隔符==================================在开发过程中一个好的Log很重要可以知道当前程序运行情况以及排除BUG。但是通常我们习惯用printf等函数直接打印,这样是可以找BUG观察程序运...原创 2021-08-22 10:28:47 · 3031 阅读 · 1 评论 -
STM32F103裸机使用StemWin
上篇文章:移植emWin到STM32F103https://blog.csdn.net/qq_44810226/article/details/119829023?spm=1001.2014.3001.5501这里记录一下简单使用需要注意的点:【推荐先看上一篇文章,要不然可能会一头雾水】首先是初始化程序:OLED屏幕本身的初始化; GUI的初始化: GUI_Init(); GUI_Clear(); 裸机中的大循环函数Loop:OLED屏幕的刷新函数:负责原创 2021-08-21 14:36:04 · 1025 阅读 · 0 评论 -
移植StemWin到STM32F103VET6开发板,使用0.96寸IIC屏幕
【参考资料】开发板:野火F103VET6指南者开发板,裸机不带操作系统。emWin5.12中文手册,野火家资料中有。大佬写的文章:https://blog.csdn.net/z961968549/article/details/105243723/【bilibili视频资料】:https://www.bilibili.com/video/BV16t4y117rN?p=7使用0.96寸IIC屏幕,就是某宝上最常见的那种。首先使用硬件IIc驱动屏幕显示。cubeMX配置如下:原创 2021-08-21 14:07:11 · 872 阅读 · 0 评论 -
在MicroPython源码中找到对应的API
在MicroPython脚本中使用import XXX,其实是引入了一个对象,这个对象有很多个方法使用。如果没有文档的话我们怎么才能找到对应的接口有哪些?怎么用。比如说我在脚本中import了math库用于数学计算。然后使用了degree这个方法。接下来我们去源码中找到对应的实现函数。观察一下MacroPython中添加一个库文件以及一个函数的方法:下面是math库的所有函数以及变量声明,所以通过搜索MP_ROM_QSTR(MP_QSTR_XXX函数名,就可以找...原创 2021-07-29 11:18:37 · 331 阅读 · 0 评论 -
CubeMX 配置PWM使用DMA,生成Dshot600的协议
看到电调支持Dshot125-600的协议,想自己做一个支持Dshot协议的驱动,所以研究了一下,如何利用精确的PWM产生Dshot协议。先看结果!图中为油门值为1500的时候的输出的Dshot600的一个协议帧长的代表1 短的代表0,一共18个数据,包括最后连个低电平表示的帧间隔。=============================分隔符================================【Dshot协议】主要用于飞控和电调之间的通讯,根据通讯速录不同可以分为..原创 2021-07-27 19:42:44 · 3364 阅读 · 0 评论 -
win10 搭建C编译环境,使用VScode
记不清第几次搭建环境了,但是感觉每次搭建的过程好像都有点不太一样。所以这里记录一下总体就两个环节:下载安装Vscode以及Vscode的各种插件(C、C++的)、mingw【mingw的网站】http://www.mingw-w64.org/doku.php【下载mingw-builds】http://www.mingw-w64.org/doku.php/download/mingw-builds然后无脑安装,记住安装的路径配置环境变量,路径如上图所示,到bin文件夹,.原创 2021-07-18 12:13:25 · 182 阅读 · 0 评论 -
关于IAP升级任务开发中遇到的一些问题汇总
【前言】最近正在开发一个具有升级功能的项目,使用的是GD32的E230芯片。这里只阐述个人认知水平的观点,本人很菜,所以酌情观看本文。 关于IAP升级我还是第一次做,无非就是将内存分两份,一份用于Bootloader,一份用于APP。芯片共64K Flash空间,在做升级前,已经使用了公司的V3协议,所以就顺便也套用了升级的框架,升级的协议是在V3协议的基础上,利用数据段进行了处理,相当于协议套协议,具体内容下面再说。 一、分配内存: 将工程只保留最...原创 2021-06-22 00:12:04 · 1044 阅读 · 1 评论 -
/bin/sh: 1: python: not found 【编译固件的时候显示这个错误】
在编microPython的时候发现会报错。但是在终端输入python可以打开Python3搜了一下找到了解决答案:参考【https://blog.csdn.net/qq_35067322/article/details/104917602】截屏大佬的解决过程 因为我懒得做笔记了。特此记录一下...原创 2021-05-14 16:46:54 · 2842 阅读 · 0 评论 -
记录一下在用的Vscode插件
一、修饰代码颜色、可以将大括号小括号的颜色做区分 代码更加清晰二、可以同步服务器上的代码、详情参考上一篇文章。原创 2021-04-22 11:11:59 · 53 阅读 · 0 评论 -
在本地开发服务器上的工程的方法
在本地开发服务器上的工程的方法Vscode中安装SFTP插件然后打开一个工程、按F1找到SFTP的配置文件第三个选项可以手动同步代码、配置文件如下图所示{ "name": "xxxxx服务名字", "host": "192.168.xx.xx", "protocol": "sftp", "port": xxxxx, "username": "用户名", "remotePath": "/home/name/要上传到远端的路径",...原创 2021-04-22 09:42:15 · 110 阅读 · 0 评论 -
【笔记】使用Keil生成Bin文件
使用Keil生成Bin文件D:\Keil_v5\ARM\ARMCC\bin\fromelf.exe --bin --output CarTemp.bin .\CarTemp\CarTemp.axf意思是使用D:\Keil_v5\ARM\ARMCC\bin\fromelf.exe文件 生成bin文件 输出为当前文件下的CarTemp.bin文件原创 2021-04-19 10:36:16 · 125 阅读 · 0 评论 -
【笔记】MOS导通条件
贴片封装的Mos见上图所示。G为控制极 S为源极 D为漏极控制极比较好判断,然后有两根线的是源极 一根线的是漏极如果箭头指向控制极 为N型 反之为P型N倒沟:然后看寄生二极管的方向,电流从D流向S。(记忆方法:如果电流从S流向D的话 G就没法控制了,自然导通,所以肯定是动D->S)P倒沟: 电流从S->D导通条件:无论是P沟道还是N沟道,看电路图的箭头是指向哪里:如果箭头指向栅极,那给栅极高电平,其他的两极按照沟道的不同来接(P沟道的源极S接输入,漏极D导通输.原创 2021-04-13 16:23:43 · 2303 阅读 · 0 评论 -
【笔记】使用CubeMX 配置SPI
个人笔记,可能有疏忽错误,参考前请悉知。1、主要是这四个配置,第一个数据大小可以从芯片手册中的图看出一个Command Word是16位,所以这里选择16 Bits,作为数据大小。2、可以从上图中看出MSB先行3、时钟极性(CPOL):从上图可知片 时钟信号在片选信号生效(CSQ)之前为 低电平。所以这里时钟极性选择Low4、时钟相位(CPHA):由上图可看出时钟信号上升沿的时候 DATA变化 在时钟信号的下降沿(即第二个跳变沿)采集数据,所以这里CPHA选择2Edge...原创 2021-04-02 17:34:23 · 4188 阅读 · 2 评论 -
windows/ubantu 安装pio环境
安装或升级PlatformIO Core的最新稳定版本,如下所示:pip install -U platformio卸载pio:pip uninstall platformio然后在windows命令或者ubantu终端输入 pio测试是否成功:原创 2021-03-26 10:09:14 · 314 阅读 · 0 评论 -
make: *** No rule to make target
编译过程中出现make: *** No rule to make target导致编译停止。一定要去看提示所说的那个文件是否存在,有可能是文件不存在!!!这里是因为路径有个大小写不统一原创 2021-03-22 17:58:42 · 598 阅读 · 0 评论 -
更改python默认版本
Ubuntu环境 更改python默认版本输入命令python时调用的版本是python2.7或者3 也有可能时找不到命令设置默认版本 输入python即可1.更改环境变量echo alias python=python3 >> ~/.bashrcsource ~/.bashrc原创 2021-03-22 17:00:16 · 270 阅读 · 0 评论 -
gcc-arm-none-eabi下载网站
记录一下gcc-arm-none-eabi不同版本的下载网站https://developer.arm.com/tools-and-software/open-source-software/developer-tools/gnu-toolchain/gnu-rm/downloads原创 2021-03-20 17:33:29 · 5145 阅读 · 0 评论 -
快速换源的办法
emm 给自己记录一下快速换源的办法pip install pqi && pqi use tuna安装pqi工具 然后换为清华源原创 2021-02-23 09:35:56 · 168 阅读 · 0 评论 -
**JLink Warning: T-bit of XPSR is 0 but should be 1. Changed to 1.使用jlink烧录失败总结
这里写自定义目录标题使用Jlink烧录会提示:使用Jlink烧录会提示:JLink Warning: T-bit of XPSR is 0 but should be 1. Changed to 1.网上很多说法,总结一下我的解决办法:降低烧录速度!改为100KHZ后烧录成功,但是无法使用SeggerRTT打印调试。在此之前我是用的是GND、CLK、SWD三根线,额外供电、我以为共地就没问题了。但是将3.3V VCC接上之后可以开全速,Segger RTT也可以进行打印调试。所以:以后不要偷懒原创 2021-01-26 21:28:24 · 1785 阅读 · 0 评论 -
GDE230Kxxx踩坑 iic从机
使用GD E230Kxxx系列芯片进行开发遇到的一些问题使用到的点,包括:ADC DMA NVIC IIC FMC(FLASH)ADC规则组采样 循环执行,利用DMA进行读取数据,并且通过iic以中断的方式发送踩到的坑:ADC配置时连续模式,是对单个通道进行连续。扫描模式可以对多个通道进行采样。它们使用同一个函数进行配置不同的寄存器。在配置的时候要调用同一个库函数,然后分别配置扫描模式以及连续模式,才能正常工作!用户手册有提到!DMA和ADC的顺序问题。先开启ADC会导致数据已经原创 2020-08-28 23:49:18 · 734 阅读 · 0 评论