- 博客(99)
- 收藏
- 关注
原创 LVGL系列2--linux + lvglv8 + vscode 移植
文章目录一、新建文件夹并克隆源码二、新建下列文件1.obj 文件夹,用于存放编译生成的中间文件,并在obj中添加实际的顶层Makefile2.为了可以直接在根目录编译,所以在根目录创建一个Makefile加入如下脚本这样就可以直接在根目录进行make了3.自己新建文件夹下内容一、新建文件夹并克隆源码mkdir lvgl_projcd lvgl_projgit clone -b v8.X.0 --depth=1 https://github.com/lvgl/lvgl.gitgit clone -b
2024-08-16 16:12:33
544
原创 基本元器件--运放
输入信号从同相输入引脚 V+ 进入,使用一个电阻分压网络将输出电压的一小部分反馈到反向输入引脚;输出信号和输入信号是同相的。同向放大使用虚短分析,运放总是会竭尽所能维持两个输入引脚电压相等,即 V+=V-在运放负反馈电路中,运放总是竭尽所能以让两个输入引脚的电压相等。同向放大跟反向放大都是相对输入信号来说的,两者都是负反馈。输入信号从反相引脚输入,输出信号和输入信号是反相的。流入或流出运放输入引脚的电流为零(虚断)流入或流出两个输入引脚的电流为零。两个输入引脚的电压相等 (虚短)反向放大通过虚地分析。
2024-08-12 15:07:46
205
原创 Keil MDK下如何设置非零初始化变量 及变量指定位置- Arm CompilerV5 和 V6区别
在分散加载文件中,定义名为NO_INIT的段。注意该段所在的可执行域要具有UNINIT属性。load region size_region 从0扇区开始.ANY (+RO)RW dataload region size_region 从0扇区开始.ANY (+RO)RW data。
2024-04-18 16:28:27
1404
原创 extern “C“使用方法__演变过程
上面的例子,如果取消extern “C”,编译不会报错,因为C++支持函数重载,加上extern "C"后按照C语言的方式编译会提示重定义。一般将extern “C” {},放到头文件声明中,但在C环境中又不识别extern “C”;如果其他cpp文件调用c库时,又需要extern “C” {};Cpp文件,默认带有 #define __cplusplus。最终通过条件编译来解决同时在c,c++中使用的问题。c++无法按下面方法直接调用,会提示找不到函数。可以按照以下方式来调用。
2023-12-01 16:05:32
374
原创 AT32固件库外设使用,ArduinoAPI接口移植,模块化
对于外部脉冲(方波)计数,通用的方法为捕获比较方式,由于项目对于脉冲的精度要求比较高,在快速搭建代码测试过后,发现该方法并不能满足需求,进而寻求计数更为精确的方法----ETR计数。通过arduinoapi实现封装,实现底层分离,支持arduino生态,两种方式 :1 DMA完成中断中再次软件触发,实现循环采样,中断频率较高。2 ADC_DMA_GetValue中软件触发,需要获取数据时才开启采集。ADC_DMA_Init函数必须放到所有ADC_DMA引脚注册完之后。定时器时钟为240M。
2023-10-26 13:36:19
855
原创 重庆助理工程师申请步骤及注意事项
网上关于职称申请的步骤很少,很多都是那些职称待办机构的链接。1. 毕业一年自动转助理工程师大学时说的毕业工作一年后就是助理工程师,并不是一年后你自动就变成助理工程师,而是需要在系统上填申请表。毕业工作一年只是最基本条件,不同学历年限不同。2.随便填填基本资料就可以申请各地有不同的职称系统,上面填的资料不同,但是一定是按照要求来填, 不要自己想当然填,有许多要盖章的地方你根本想不到。3.这玩意有什么用我也不知道这个有什么鸟用,我又不是搞工程的。但是不弄他又感觉哪里不对劲。
2023-10-25 16:34:52
644
原创 lvgl模拟器使用教程
错误原因是img_cogwheel_argb.c 文件中的变量img_cogwheel_argb定义按C编译。属性页,将编译为,改成编译为C代码(/TC)编译一下,报以下错误。
2023-10-18 18:30:09
290
2
原创 linux(全志F1C100S/F1C200S)系列10:参考
https://blog.csdn.net/qq_41709234/category_12158774.html
2023-10-10 17:37:45
208
原创 linux(全志F1C100S/F1C200S)系列05:USB驱动移植,hub支持
目录四.问题1. FE8.1晶振不起振 两端电压为3.3V和3.4V2.二、1.2.四.问题1. FE8.1晶振不起振 两端电压为3.3V和3.4V2.二、1.2.
2023-10-10 10:23:05
565
原创 linux(全志F1C100S/F1C200S)系列02:移植LCD st7789驱动,LVGL8.3移植
保存退出,然后执行make命令编译内核,然后将镜像拷贝到tf卡第一分区中,此时可以看到屏幕已经可以驱动起来了,并且/dev目录下有fb0设备。fb 挂载成功后,控制台驱动检测到 fb 设备后会自动将 fb0 映射到 tty0 上,这样 tty0 实际上就是 fb0 ttys0则是串口。此时可以看到屏幕刷新了,然后编程了黑色背景,同时出现了光标,从终端的 log 可以看到,当。现在所有的修改都完成了,剩下的就是编译内核了,在内核根目录下执行。将设备树和zimage复制到tf卡中 重启可以看到光标闪烁。
2023-10-10 10:13:30
3079
11
原创 基础元器件-三极管,MOS管开关应用总结
MOS管为了保证衬底与源极之间的PN结不会意外偏置,故通常将二者连接使用。此时源极与漏极之间自然形成了一只PN结 结构,称为体二极管。体二极管的方向与MOS管导通的电流方向相反。只需要看PN结二极管符号正反偏导通就可以。P模式,二极管朝外,但需要反偏,Vg为0。屁是往外放的,二极管朝外的就为P型,NPN,二极管朝外, Vb为正。可以通过有两点连接的为S极。三级管类型判断方式一样。记住P型即可知道N型。
2023-08-31 16:52:38
147
原创 SPI总线NSS和CS区别,及应用场景
软件模式:硬件模式其实这个NSS是控制片选脚CS的控制方式,SPI_NSS_Hard硬件模式即为:SPI自动控制CS片选信号,发送数据自动拉低电平,不发送维持高电平,弊端只能连接一个从机。SPI_NSS_Soft软件模式即为:通过控制IO口来把CS置低置高,发送数据时候,通过IO口把CS拉低,发送完成后拉高,优点可以连接多个从机。配置为SPI_NSS_Hard时,片选脚只能选择固定的外设脚配置为SPI_NSS_Soft时,cs脚可以通过软件任意分配引脚。
2023-06-25 17:33:04
3755
原创 KEIL 优化等级更改后无法打断点问题
https://blog.csdn.net/sq2013317/article/details/128566000
2023-05-08 15:26:05
578
1
原创 AT32使用遇到的问题
目录一、SystemInit 进hardfault1.2.二、1.2.一、SystemInit 进hardfaultvoid SystemInit (void){#if defined (AT32F415xx) /* Enable low power mode, 0x40007050[bit2] */ RCC_APB1PeriphClockCmd(RCC_APB1PERIPH_PWR, ENABLE); *(volatile uint8_t *)(0x40007050) |= (uint
2023-02-17 09:12:38
316
原创 linux下运行lvgl 模拟器
mkdir -p ~/lvglcd ~/lvglgit clone -b 7.11.0 --recursive https://github.com/lvgl/lv_sim_vscode_sdl.git//如果想用最新版,请改用以下命令://git clone --recursive https://github.com/lvgl/lv_sim_vscode_sdl如果子模块下载失败:cd ~/lvgl/lv_sim_vscode_sdlgit submodule update --in
2022-06-08 18:23:15
909
原创 LVGL系列1--AT32移植LVGL_V8具体步骤
目录一、下载LVGL_V8源码1.2.二、优化显示速度(重要)1.采用dma方式填充 双缓冲2. 修改at32堆栈大小3. 扩展SRAM???一、下载LVGL_V8源码暂时不需要吧如果使用AT-START-F403开发板时,不需要进行SRAM的扩展,因为403的SRAM默认就为96K。如果使用AT-START-F413开发板时,强烈建议进行SRAM的扩展,因为413的SRAM默认只有32K,很容易就会超出范围。1.2.二、优化显示速度(重要)1.采用dma方式填充 双缓冲2. 修改at3
2022-05-27 16:14:22
3878
5
原创 SquareLine使用笔记
目录一、社区版许可证1.一个许可证只绑定一台电脑,试用30天内最好去重新申请一下就能免费使用2.一台电脑不允许同时登录两个账号 ,第二个会提示communicate error二、linux 下运行Squareline1. sh ./setip.sh2. ./SquareLine_Studio.x86_643 注意ubunutu版本过旧可能提示缺失opengl一、社区版许可证1.一个许可证只绑定一台电脑,试用30天内最好去重新申请一下就能免费使用2.一台电脑不允许同时登录两个账号 ,第二个会提示com
2022-05-25 17:34:00
6438
4
原创 QT使用教程及常见问题
目录一、添加常用第三方库1.FFTW2.一、添加常用第三方库参考链接1.FFTWFFTW是开源的dft / idft库,具有高效率易移植的特点。遵守GPL协议,具有商业付费服务。windows下安装库在网站 http://fftw.org/install/windows.html 下载压缩包使用Visual studio的命令行工具lib,根据需要的版本生成.lib文件lib /def:libfftw3-3.def将.lib文件以及对应的.dll文件放入工程目录中编辑.pro文件加
2022-05-06 17:22:13
637
原创 好用的插件+软件,
目录一、插件1.Simple Todo2.二、开源软件1.drawio 免费好用的流程图绘制软件,功能强大,开源免费2.一、插件1.Simple Todo安装后默认是新标签页自动打开,可以直接将连接保存为书签,放到书签栏打开更合适2.二、开源软件1.drawio 免费好用的流程图绘制软件,功能强大,开源免费2....
2022-04-11 10:45:02
170
原创 常见硬件调试问题及解答
文章目录1.电池电压对地为负2.STM32 RTC不走,一直为00:00:001.电池电压对地为负电池地与板子地接触不良2.STM32 RTC不走,一直为00:00:00一.如果是使用外部晶振,看一下晶振是否起振
2022-03-08 18:20:25
1560
原创 Git使用笔记
文章目录一 本地操作1. 本地目录建立2 将目录设置为git仓库3 将文件放到git仓库4 查看更改5 版本回退6 撤销修改7 删除文件 误删恢复二 远程仓库1 添加远程库三 分支管理一 本地操作1. 本地目录建立$ mkdir learngit$ cd learngit$ pwd/Users/michael/learngit2 将目录设置为git仓库git init3 将文件放到git仓库git add readme.txt //将内容写入暂存区git commit -m "wr
2022-03-08 17:17:56
723
原创 树莓派基础使用
1 树莓派重启sudo rebootSSHSSH选择的是MobaxtermSSH界面十分友好如果有显示器的话可以在右上方查看ip地址同时Mobaxterm也是支持vnc连接的但是测试无法连接成功 提示No configured security type is supported by 3.3 viewer暂时不知道怎么解决,求助,有知道的小伙伴请在评论区留言3.VNC前面使用Mobaxterm的VNC无法连接成功只能选择VNCViewer 实现VNC连接...
2021-12-23 18:00:15
425
原创 关于数组越界的惨痛教训
文章目录数组越界是我调试bug时遇到最多的问题二、数组越界通常会导致以下几个问题:1 直接进HardFault2.不进hardfault 不出错3 不进hardfault 导致内存错误数组越界是我调试bug时遇到最多的问题二、数组越界通常会导致以下几个问题:1 直接进HardFault这种通常通过单步调试或者通过sp寄存器可以定位到问题所在2.不进hardfault 不出错这种是最难的,刚写的时候没有问题,当后面程序扩展后问题,真的很难回来找到问题点在哪3 不进hardfault 导致.
2021-12-15 11:45:08
1441
4
原创 STM32在DEBUG调试模式下禁止看门狗IWDG WWDG
1 问题:项目中如果开启了看门狗,在调试时添加断点导致不能及时喂狗,芯片重启2 解决: 如果使用的HAL库,库中提供了相应的API#ifdef STM32f4 __HAL_DBGMCU_FREEZE_WWDG() __HAL_DBGMCU_FREEZE_IWDG(); //调试模式时冻结看门狗 __HAL_DBGMCU_UNFREEZE_WWDG() __HAL_DBGMCU_UNFREEZE_IWDG() //调试模式时开启看门狗#else //H7 __HAL_DB
2021-12-14 11:25:04
6804
2
原创 EMWIN电容触摸Touch步骤及注意事项
文章目录1.添加触摸IC驱动2.使能EMWIN触摸 GUIConf.h3.添加EMWIN GUI_X_Touch_Analog.c文件4.定时调用GUI_TOUCH_Exec1.添加触摸IC驱动2.使能EMWIN触摸 GUIConf.hGUI_SUPPORT_TOUCH 13.添加EMWIN GUI_X_Touch_Analog.c文件实现GUI_TOUCH_X_MeasureXGUI_TOUCH_X_MeasureY两个函数int GUI_TOUCH_X_MeasureY(void)
2021-12-02 13:57:34
5371
4
原创 STM32同组外部中断线使用问题
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录一、外部中断线的使用一、外部中断线的使用STM32一共有16个外部中断线,虽然可以将IO通过配置映射到每一个IO,但是每个中断线同时只能连接到一个IO上,相当于STM32能够同时使用的外部中断最多也就16个,引脚后缀是相同的如GPIOA0,GPIOB0想要同时使用EXTI0是不行的,中断只会与最后一个配置的引脚进行链接,前面的链接会被清除掉,对的,就是这么坑(H7来说,F4可以通过SYSCFG_EXTILineConfig(E
2021-11-24 15:51:02
2999
原创 移植LWIP Eclipse链接文件的区别 `RAM_D2‘ overflowed
由于Lwip的描述对于 H7 芯片而言, DMARxDscrTab 和 DMATxDscrTab 的内存一定要放到 SRAM3区域, 否则网络会出问题!CUBEMX生成的ld链接文件为 .lwip_sec (NOLOAD) : { . = ABSOLUTE(0x30040000); *(.RxDecripSection) . = ABSOLUTE(0x30040060); *(.TxDecripSection) . = ABSOLUT
2021-11-02 18:24:10
415
2
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人