- 博客(21)
- 收藏
- 关注
原创 PETG耗材3d打印技巧
使用切片软件自带的支撑打印效果有较多的麻点且呗打印物体与支撑接触的平面表面质量不佳,平整度差。使用线形支撑(左侧)和树状支撑(右侧)的效果如下所示。以上设置可以保证在大面积打印悬空的时候有一个比较好拆又比较平整的支撑接触面。有5-6段支撑残留已使用镊子手动去除。耗材:点位科技的PETG-CF(碳纤维含量5%)黑色。支撑->与模型间隙(X/Y)1.0。支撑->与模型间隙(Z)0.14。打印机->平台温度 75℃。支撑->路径间距 2.0。支撑->支撑类型 线形。支撑->路径形状 折线。支撑->封顶层数 0。
2024-10-31 23:19:54 272
原创 记录一下乐鑫官方仓库ESP32-CAMERA,在使用esp32s3 wroom n16r8 CAM开发板时遇到的问题。
开发使用的项目地址为https://github.com/espressif/esp32-camera。官方默认配置的CAM_PIN使用会出现不断重启问题,排查后可以发现是引脚配置错误,相应的log如下所示。使用的例程为esp32-camera/examples/camera_example。开发环境为esp-idf,Linux编译下载加vscode编辑代码。硬件为ESP32-S3 WROOM N16R8 CAM开发板。使用的esp-idf版本为v4.4.3。PSRAM需要配置为下图所示。
2024-10-22 14:36:08 290
原创 分享一下esp32重启问题的排查思路
修复了两处内存释放问题后,项目的现象变更为上电重启,重启几次后正常运行,根据重启位置的log排查到是esp32蓝牙启动的位置,故在该位置添加esp_get_free_heap_size打印堆栈大小,同时对比正常运行和重启的堆栈变化,发现蓝牙正常启动时会消耗掉四五十KB的空间,但是esp32在不启动蓝牙时的剩余空间只有110KB。我的解决方案是在启动蓝牙是要进行判断,判断剩余空间是否大于100KB,即串口消息队列未占用大量内存,剩余空间足够蓝牙启动后再进行蓝牙开启。这篇博文对我的排查起到了关键性作用。
2024-06-26 16:14:26 428
原创 关于esp32下的freeRTOS学习文章汇总
本文是本人学习freeRTOS的过程中查找学习的文章,多篇文章结合着看能够互相印证加强理解。仅个人查找方便使用,有新入门的朋友也可以按照顺序进行阅读学习。
2024-02-29 12:40:15 423 1
原创 esp32 添加官方组件库中的头文件提示“No such file or directory”【已解决】
components/adf_utils/cloud_services/include/baidu_access_token.h即在set(COMPONENT_REQUIRES中添加adf_utils即可。打开main文件夹下的CMakeLists.txt文件,在set(COMPONENT_REQUIRES中添加头文件所在的组件文件夹名称。如baidu_access_token.h的文件位于。使用espadf框架下的wwe例程添加#include "baidu_access_token.h"头文件。
2023-03-16 11:21:04 3087
原创 ESP32添加.c与.h文件与CMakeLists修改
从使用keil5开发STM32转到了linux+vscode开发ESP32,在keil中添加新的元器件驱动需要添加相应的文件并添加头文件路径即可,但在ESP32中需要对CMakeLists.txt文件进行修改。在下列代码中SECS为.c文件相对于主文件的路径,INCLUDE_DIRS为头文件所在的路径。在CMakeLists.txt文件中添加完相应的路径后进行编译即可。
2022-12-08 15:47:09 2097
原创 解决ESP32 在 VScode环境下头文件无法打开的问题
我的开发环境是linux(虚拟机)+vscode+SSH,从examples/get-started/hello_word项目开始学习,在给hello_word项目中使用freeRTOS时,出现以下问题:1、大量红色下划线无法打开源文件2、和freeRTOS相关的变量找不到在vscode中搜索includePath打开相应文件添加一下语句即可这句话应该是在配置vscode的编译编写环境。添加上即可解决上述问题。
2022-12-08 12:31:42 5283 3
原创 ESP32在vscode+esp_idf环境下调节rtos心跳频率方法
ESP32在vscode+esp_ifd环境下调节freertos心跳频率的方法
2022-06-03 21:08:29 1680
原创 使用B站API:http://api.bilibili.com/x/space/upstat?mid=2026561407获取播放量、点赞量的返回报文中data数据缺失问题排查(已解决)
背景想要用ESP32获取一些b站上的数据粉丝量播放量等数据获取粉丝数的API:http://api.bilibili.com/x/relation/stat?vmid=2026561407获取播放量的API:http://api.bilibili.com/x/space/upstat?mid=2026561407测试的时候粉丝数使用ESP32获取成功,但是播放量的API返回数据为:{“code”:0,“message”:“0”,“ttl”:1,“data”:{}}。可以发现json字段完整但da..
2022-05-01 13:39:26 4926 3
原创 自定义帧--不同模块间使用串口进行数据交互
笔者的实验平台为STM32和AIR724UG,这两款芯片一种是常用的使用C语言开发的单片机一种是基于luat os的lua开发方式的通讯模块。算是可以比较本文所论述的使用自定义帧通过串口在不同平台进行数据交互的形式,算是抛砖引玉。STM32与AIR724UG概述对于AIR724UG而言一般使用串口进行通讯,以下将介绍两种通讯协议的制订与实现方式,包含关于通讯协议通用性与帧长度之间的取舍。其中STM32使用C语言库函数编写、AIR724UG使用Lua脚本编写。一般一个数据帧包含帧头、帧长度(包个数)、
2022-04-01 10:46:16 1282
原创 合宙AIR724UG GPIO的一些坑
笔者硬件环境为飞思创的Air724UG核心板,由于项目需要增加一路蜂鸣器做报警故打算将这个模块的串口脚更改为GPIO做输出控制。打开合宙的一些例程就开始进行相应的操作。对照管脚说明就开始进行操作。错误1:lua /lua/pins.lua:56: invalid PIO operationpins.setup(pio.P0_36,0)直接修改了原本的引脚为P0_36结果发现报错,查找pins库文件后发现-- GPIO 0到GPIO 31表示为pio.P0_0到pio.P0_31-- GPIO
2022-03-26 13:01:46 5452
原创 STM32 ucos II中无法将float类型变量强制转换为void *类型的解释说明
背景:在项目制作的过程中使用ucos ii的邮箱发送函数发送float时发现float SMA;OSMboxPost(msg_sma,(void*)SMA);报error: #171: invalid type conversion错误一番查证后发现时C语言浮点类型转换成void 类型的错误改正方法为OSMboxPost(msg_sma,(void)&SMA);解释:在STM32中float类型占用4字节,而STM32中的地址也为4字节,但C语言有一个特性:变量在发生类型转换时会按
2022-03-13 17:39:30 2491
原创 ESP32 CameraWebServer例程浏览器无图像解决方法
遇到的问题:在成功使用ARDUINO ide下载完ESP32的例程后,摄像头显示初始化完成,同时串口输出相应的IP地址,在360极速浏览器中输入相应的IP成功打开页面但点击开始按钮无图像输出,更换为edge浏览器解决该问题。查找网友所述原因应该是所用浏览器内核不同导致的(没有做实验,有懂得大哥麻烦在评论区指点下)...
2022-01-24 21:36:23 2052 4
原创 ucosII 下iic 的使用问题(含解决方式)
今天在将SGP30气体传感器的代码移植到ucosii中使用时遇到了输出数据一直为65535的情况。分析现象,开始以为是硬件问题(元器件损坏等原因)使用了裸核代码进行测试,能够正常读取相应参数说明硬件正常。ucos跑死了?增加led显示任务,led显示任务正常进行怀疑是ucos在iic进行延时时运行了别的任务增加临界区,仍然无法正常读取上网查询后发现大家普遍都有这个问题研究了下正点原子的综合测试实验(在ucos下使用了iic)发现正点原子的iic代码中是没有delay_ms的同时它iic中的延
2021-12-05 23:17:44 2471
原创 ucosii消息队列学习
近期在学习ucosii的内容使用的平台为STM32F103C8T6最小系统板。今日关于消息队列的使用遇到了一些问题。基本情况:移植代码为正点原子ucosiii消息队列、信号量集和软件定时器例程。主要新建两个任务post_task用以发送信号量集get_task用以接收信号量集,两者具体代码如下:void post_task(void *pdata){ u8* p; u8 err; static u8 msg_cnt=0; //msg编号 while(1) { p=mymal
2021-10-09 22:10:27 453
原创 STM32F103C8T6移植ucosii 添加正点原子malloc.c文件后遇到Error: L6406E问题解决方式
错误描述:…\OBJ\UCOSII-1.axf: Error: L6406E: No space in execution regions with .ANY selector matching main.o(.data).主要原因为内存不足解决方式为:修改malloc.h文件下关于mem1内存参数的设定,将MEM1_MAX_SIZE参数从原本的40*1024改为合适的大小即可,我将这个参数改成了10 *1024,完美运行。//mem1内存参数设定.mem1完全处于内部SRAM里面.#defin
2021-10-09 11:28:32 1842 6
原创 void USART1_IRQHandler(void) 串口中断服务函数详解
本文主要分析正点原子stm32的void USART1_IRQHandler(void) 函数一下为源代码void USART1_IRQHandler(void) //串口一中断服务函数 { u8 Res;#if SYSTEM_SUPPORT_OS 如果SYSTEM_SUPPORT_OS为真支持OS. OSIntEnter(); #endif...
2019-07-01 22:36:15 17274
原创 stm32 pwm同时输出输出四道方波
stm32 pwm同时输出输出四道方波主要是在正点原子PWM输出实验的基础上修改所得原本的代码 while(1) { delay_ms(10); if(dir)led0pwmval++; else led0pwmval--; if(led0pwmval>300)dir=0; if(led0pwmval==0)dir=1; ...
2019-06-28 15:49:49 2435
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人