自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(69)
  • 资源 (23)
  • 收藏
  • 关注

原创 RT-Thread芯片更改外部晶振后串口乱码

SMT32F407芯片由内部晶振改到外部24MHz晶振后串口乱码,drv_clk.c时钟配置如下。在stm32f4xx_hal_conf.h文件里有定义HSE的时钟频率,默认是8MHz。如果外部晶振使用的不是8MHz,这里的定义也要改。

2024-02-23 11:15:26 907

原创 RT-Thread基于STM32H743的网络通信调试

14.其实也很简单,更改一下board.h里RAM地址和大小的定义就好了,前说过H743默认使用的是DTCM RAM起始地址是0x20000000,大小128K。我们要改成AXI SRAM。11.接下来就要更改H743芯片的RAM地址了,H7系列的RAM分了好多块,默认使用的是DTCM,起始地址0x20000000,大小时128K。使用STM32H743开发网络通信,本以为会很简单,实际却遇到好多问题,记录一下,以备后续查看。ETH默认是使用DMA的,但DTCM的速度是400M,DMA无法进行访问。

2023-11-18 20:37:26 502

原创 RT-Thread系统使用常见问题处理记录

解决办法:更改agile_telnet软件包里Set agile_telnet tx buffer size的大小。最近4.2版本的改成了HAL_TIM_Base_MspInit函数。解决办法:老版本的PWM里定时器时钟的初始化函数是HAL_TIM_PWM_MspInit。解决办法:更改paho_mqtt_pipe.c里PIPE_BUFSZ为2048。解决办法:在board.c里的CAN2打开时钟前增加CAN1时钟使能。原因:要先使能CAN1的时钟,再使能CAN2的时钟。原因:telnet发送缓存太小。

2023-11-02 16:14:47 749

原创 ubuntu无法定位软件包 tfpd-hpa

按照网上的解决办法更改/etc/apt/sources.list里面的下载源问题依旧,然后又把sources.list文件改回原来的。安装sudo apt-get install tftp-hpa tftpd-hpa。结果我的软件和更新根本无法打开,又开始解决软件和更新无法打开的问题。软件和更新无法打开的问题是Python的问题,重装3.6即可。然后在下载tftp-hpa tftpd-hpa就成功了。sudo apt-get update可以下载了。还有的方法是要改软件和更新里面的源代码下载地址。

2023-07-08 16:39:40 1265

原创 虚拟机ubuntu系统IP地址变成127.0.0.1了

使用sudo dhclient -v指令动态获取IP地址。

2023-07-08 15:16:56 591

原创 rt thread系统下实现恢复出厂设置功能

在qboot.c文件里的static void qbt_thread_entry(void *params)线程里增加查找分区和判断重启次数的函数。屏蔽掉bootloader里的w25q128.c文件里的config_part分区定义。将线程堆栈改下,肯定一启动就报错重启,将版本改为V1.9.2,然后升级。修改bootloader和app的分区表,增加factory分区。qboot软件包里恢复出厂设置分区名字要和实际的一致。然后在app程序里增加清除重启次数的功能。

2023-07-01 17:44:18 259

原创 AT32F437网络通信

网络时间长了ping不通,解决方法。

2023-06-21 09:08:57 276

原创 hard fault on thread: mqtt0解决办法

继续搜索RT_PIPE_BUFSZ,发现根本就没有定义这个,可能是新版本的改成RT_USING_POSIX_PIPE_SIZE这个名字了,将paho_mqtt_pipe.c里这个地方改成2048后解决。也可以将这里的RT_PIPE_BUFSZ替换成RT_USING_POSIX_PIPE_SIZE。更改这里为2048后出问题的概率更高了。rt thread版本4.1.0。使用paho mqtt软件包。

2023-06-15 13:30:23 770

原创 RT-Thread添加ulog存储日志到flash

2023-05-26 13:23:37 384

原创 AT32F437制作Bootloader然后实现Http OTA升级

首先创建一个AT32F437的工程,然后发现调试工程配置这里的型号和创建工程选的型号不一致,手动更改一下,使用PW Link下载程序的话还要配置一下pyocd.exe的路径。项目使用的是AT32F437VMT7芯片,内部flash空间是4032K,用来做OTA升级完全够用,就没有使用外部FLASH,打开FAL分区功能。新建工程明明选的是AT32F437VMT7,新建完工程后芯片型号居然变了,只好手动改一下,如上图所示。然后发个OTA升级的命令,开始下载重启,新的程序就更新过去了。

2023-03-10 11:51:14 1255 1

原创 rt thread 使用freemodbus TCP记录

1.modbus tcp主机一般作为tcp客户端,从机作为tcp服务器。modbus tcp服务器的端口号默认是502,端口号定义在porttcp.c文件里。客户端连接成功事件在porttcp.c文件里的tcpserver_event_notify函数里。TCP服务器接收到的socket原始数据在porttcp.c文件里的tcpserver_event_notify函数里。查看方法如下:...

2021-11-16 13:46:01 953 1

原创 LWIP socket通信设置发送和接收超时时间

在使用lwip协议栈做TCP客户端通信的时候发现,如果在发送的时候关闭TCP服务器的连接则在调用ret = send(mytcp_sock, out_str11, strlen(out_str11), 0);函数的时候会返回-1.如果在正常通信的时候切换服务器的wifi,而没有断开TCP服务器,在调用ret = send(mytcp_sock, out_str11, strlen(out_str11), 0);函数时会发生阻塞。没有数据返回。这样就无法检测网络连接是否断开,如果需要设置发送超时,

2021-10-25 15:07:54 2657

原创 TLE5012磁编码器使用记录

话不多说,硬件连接图 单片机SPI的MOSI和MISO脚连一起,加4.7K上拉电阻。软件使用SPI通信。#define BMQ_LZ_D 30//编码器轮子直径30mm//#define BMQ_pi 3.141592653 //π值#define BMQ_motor_L (BMQ_LZ_D * M_PI) //轮子的周长#define TLE_CSS...

2021-08-04 14:34:43 2922

原创 RT-Thread系统下使用LWIP协议栈,设置TCP发送超时的问题

1.使用RT-Thread Studio写TCP传输程序时用stm32f407+lan8720做TCP客户端,PC机做TCP服务器传输数据。发现:客户端和服务器正常连接时拔掉网线打印link down,可以检测到网线被拔掉了。运行过程中断开TCP服务器,或直接关闭TCP服务器也可以检测到。接收数据返回错误。但如果正常连接情况下直接断开TCP的WIFI、也就是把电脑的FIWI断开,则TCP客户端无法检测到,发送数据还一直提示成功。想要解决这个问题首先想到的是设置TCP发送超时时间,

2021-05-26 17:41:29 1478

原创 rt-thread studio软件使用math.h和stdlib.h里的函数报错问题

rt-thread studio软件里使用了atof()函数和fabs()函数总是报警告和错误。程序开头明明加了#include "math.h"#include "stdlib.h"而且报的错误让人看不懂右键打开math.h头文件,里面竟然只有这么一点程序,肯定不对了。stdlib.h里也是一样。检查了半天发现是要打开RT-Thread Settings里面的libc组件然后编译没有错误和警告了。...

2021-05-13 14:18:52 880 2

原创 rt-thread studio中添加lan8720网络驱动

1.使用rt-thread studio新建项目,选择好主控芯片和打印串口。新建工程第一步当然是关心芯片各个总线的系统失踪啦,打开driver文件下的drv_clk.c文件修改#define DBG_LVL DBG_INFO为#define DBG_LVL DBG_LOG打印出系统时钟编译、下载通过串口即可看到当前的系统时钟,可以看到rt thread系统已经把系统时钟配置好了,我们用系统默认就可以。如果需要修改更改drv_clk.c文件里的system_clock_config()

2021-05-05 17:12:48 2253 6

原创 altium designer创建圆形实心填充

altium designer在PCB中画一个圆形的实心填充方法。先在PCB中画一个空心圆环然后选中这个圆,然后点击工具->转换->从选择的区域创建区域圆形实心填充就画好了

2021-04-10 10:06:19 14262 1

原创 网易云音乐下载MP3的方法

google浏览器打开想要下载的歌曲页面,右键选择检查找到Network选项,找到下面的other,然后在网页右键选择重新加载,就会出现如下页面。然后在网页上点击播放按钮,找到对应的m4a然后右键open in new table就可以下载下来了。...

2021-04-06 17:13:30 2768

原创 altium designer拼版例子

原版,长150mm、宽13mm。放置两排焊盘、2*8个,内外径都设置成0.55mm焊盘左右间距设置0.936mm,上下间距1.143mm选中整个PCB板,选择复制,中心点选择板子左下角位置,切换到另一个PCB文件中选择编辑->特殊粘贴选择保持网络名称和重复位号,然后点击粘贴阵列我们想要纵向阵列为两排,所以对象数量为2,X轴间距设置为0,Y轴间距设置为14.8(板子本身尺寸为13mm,加两排连接过孔设置为1.8mm)点击确定,然后放在PCB图中的原点位置,如图

2021-03-29 14:24:56 1285

原创 RT Thread系统下W5500芯片TCP通信,连续接收两条数据卡死问题

rt thread 系统下使用W5500做TCP通信,使用wiz软件包。测试发现如果在服务器上连续发送两条数据,那么程序就始终卡在了TCP数据接收线程中了,CPU占用率瞬间变成100%了。程序里所有比TCP接收线程优先级高的可以正常运行,比TCP接收线程低的都卡死了。如果你的tshell线程的优先级比TCP接收任务的优先级低的话,那么shell也用不了了,程序好像是死机了。为了调试方便我把tshell的优先级改为17,比TCP接收的优先级高一点。卡在这里差不多1分钟的时间后,系统

2021-03-11 20:29:27 2581 4

原创 Warning: The core is locked up的解决办法

rt thread studio V2.0版本编译器使用正点原子的DAP无线调试器进入调试模式后,再用J link下载程序就提示Warning: The core is locked up从菜单 SEGGER->JLink Arm V4.08l->;Processor Specific Utilities->J-Link STM32 Unlock ,运行一下就行了...

2021-02-22 09:04:27 3106

原创 rt thread studio使用QBOOT和片外flash实现OTA升级

我们这里要使用单片机外部flash作为OTA的下载分区,外部flash硬件连接关系PB3-->SPI3_CLKPB4-->SPI3_MISOPB5-->SPI3_MOSIPE1-->SPI3_CSS第一步使用rt thread studio新建一个bootloader的工程,我这里使用的是stm32f407vgt6的芯片使能SPI驱动和SFUD驱动打开board.h文件,取消#define BSP_USING_SPI3的注释然后在stm

2021-02-03 13:29:52 4525 6

原创 C语言宏定义运算式计算错误的问题

RT-Thread Studio编译器里使用宏定义计算如下公式按照正常的数学运算关系,算出来的结果是453.59如果不加括号算出来的值完全不对,结果是 -1050360954.1510059952把计算过程全都加上括号后计算正确由此可见编译器是将宏定义的数字一层一层替换而已,按照正常的数学运算是没问题,但编译以后的值却不对,还是要把计算过程加上括号。...

2021-01-26 13:11:44 1278 1

原创 RT -Thread Studio开发环境下使用freemodbus驱动

双击RT -Thread Settings在软件包里搜索modbus,然后添加freemodbus软件包到工程右键详细配置硬件连接PE0接485芯片的RE脚使用单片机的uart2,作为modbus的主机,波特率115200保存一下将配置更新到工程中打开board.h文件添加#define BSP_USING_UART2然后编译下载在shell里输入mb_master_samlpe连接一个usb转485的模块打开串口,看到已经有数据了。freem

2021-01-22 19:01:38 671 2

原创 RT -Thread Studio开发环境下使用I2C驱动SHT30

双击RT -Thread Settings,打开软件模拟I2C然后添加上sht3x软件包编译一下,将软件包添加到工程中然后打开board.c文件打开#define BSP_USING_I2C1的定义,并将I2C的引脚填写完整我的I2C_SCL是单片机的PD3,I2C_SDA是单片机的PD0然后编译下载shell命令中输入sht3x输入sht3x probe i2c1返回sht3x probed, addr:0x44,说明已经探测到sht30传感器了输入sh

2021-01-22 16:55:24 636

原创 RT -Thread Studio开发环境下使用PWM设备驱动

双击RT -Thread Settings,使用PWM设备驱动程序打钩我这里使用的是STM32F407VGT6,PWM接到PD12、PD13、PD14、PD15也就是TIME4的4个通道所以在drv_pwm.c文件中添加#define BSP_USING_PWM4的宏定义...

2021-01-22 12:37:42 949 1

原创 rt thread系统下添加wiznet软件包后,不插网线CPU利用率100%问题

rt thread系统下添加wiznet软件包后如果不插网线的话其他任务运行很卡,使用ps命令发现优先级低的任务很多都超时了rt thread线程错误码添加了一个可以查看CPU利用率的软件包CPU_usage查看CPU的利用率,启动一会后利用率就是100%但是插上网线后CPU利用率马上就降下来了,其他任务也可以正常运行了那问题肯定出在了W5500网卡驱动这块了尝试了很久发现如果没有插上网线的时候,系统不停的在执行DHCP这块就是wiz.c文件里的static void

2021-01-20 10:17:22 524

原创 RT -Thread Studio开发环境下使用CAN设备驱动

双击RT -Thread Settings,使用CAN设备驱动程序打钩编译一下更新设备驱动到当期项目然后在stm32f4xx_hal_conf.h文件中打开对CAN的支持,也就是取消掉 HAL_CAN_MODULE_ENABLED这个宏定义的注释然后使用Cube MX配置一下CAN的引脚,然后复制生成的引脚初始化代码。也就是void HAL_CAN_MspInit(CAN_HandleTypeDef* canHandle)这个函数粘贴到board.c文件中然后在a

2021-01-19 09:51:23 4682 4

原创 RT -Thread Studio开发环境下使用W5500做TCP客户端

首先是具备W5500芯片的驱动,参考上一篇文章RT -Thread Studio开发环境下驱动W5500网络芯片https://blog.csdn.net/qq_25186745/article/details/112647919在这篇文章的基础上来继续写TCP客户端的程序在applications文件下新建my_tcp.c文件粘贴以下代码#include <rtthread.h>#include <sys/socket.h> /* 使用BSD socket

2021-01-15 11:24:32 1757 1

原创 RT -Thread Studio开发环境下驱动W5500网络芯片

开发环境RT -Thread Studio V2.0.0芯片STM32F407VGT6网络芯片W5500硬件连接第一步,打开SPI设备驱动框架双击RT -Thread Settings然后在打开devices文件下的board.h文件,打开#define BSP_USING_SPI2的定义,我这里使用的是SPI2然后在stm32f4xx_hal_conf.h文件中打开对 SPI 的支持,也就是取消掉 HAL_SPI_MODULE_ENABLED 这个宏定义

2021-01-15 10:44:50 2638 8

原创 24V锂电池,巡检机器人开机电路图

三极管Q10基极要加一个5.1K下拉电阻。

2021-01-14 16:18:14 874

原创 RT-Thread Studio下打印系统时钟

使用RT-Thread Studio新建项目是会有提示,工程使用的是芯片内部HSI时钟,如需修改,请完善drv_clk.c新建项目后打开drv_clk.c中有打印各个总线的系统时钟的函数,也有INIT_BOARD_EXPORT初始化,但是程序下载后却没有打印出系统时钟信息。在drv_clk.c文件的开头有定义#define DBG_TAG "board"#define DBG_LVL DBG_INFO将#define DBG_LVL DBG_INFO修改为#define DBG

2021-01-14 13:43:31 740

原创 altium designer 18 画原理图时按空格键无法旋转元器件问题

解决办法取消始终拖拽,确定即可。

2021-01-05 09:46:01 5894 8

原创 STM8L151硬件IIC从机通信频率低的问题

最近使用STM8L151G6U6做IIC从机使用,STM32F103做主机读取从机数据,发现主机读取数据的SCL时钟只要高于16KHz读取到的数据就出错,使用逻辑分析仪测试发现IIC通信的第一个地址位是有应答信号的,到第二个字节就没有应答了,只要降低IIC主机的SCL频率就没有问题,查看STM8L系列的手册,IIC最高通信频率支持到400KHz,这差距有点大,肯定是哪里有问题了。找了很多IIC的例子都是使用库函数写的,基本都差不多,IIC初始化也很简单,问题可能出在中断上。尝试直接读写IIC寄存器,

2020-12-29 15:59:31 871

原创 stm32f407单片机rt thread 片外spi flash OTA升级配置示例

参考地址https://www.rt-thread.org/document/site/application-note/system/rtboot/an0028-rtboot/第一步,生成BootLoader。Bootloader 在线获取地址: http://iot.rt-thread.com1.注册账号、新建产品。点击固件升级、然后是生成BootLoader。2.根据自己板子配置情况填写硬件信息。我的板子上是用的STM32F407VGT6,ROM是1M,RAM是192K

2020-09-28 15:09:11 2753 1

原创 LWIP协议栈[I/drv.emac] RxCpltCallback err = -3错误解决办法

RT-Thread系统下添加完LWIP协议栈,跑了个TCP的客户端,运行上一段时间就会报[I/drv.emac] RxCpltCallback err = -3的错误,但是程序还能正常运行,TCP收发数据也都正常更改rtconfig.h文件里的RT_LWIP_TCPTHREAD_MBOX_SIZE和RT_LWIP_ETHTHREAD_MBOX_SIZE的大小...

2020-08-11 20:35:41 1051

原创 TCP发送CJSON字符串示例代码

void mytcp_send_heartbeat(void){ int ret; char *out_str11; char ipsbuf[20]; cJSON * root11 = cJSON_CreateObject(); cJSON * item11 = cJSON_CreateObject(); cJSON_AddItemToObject(root11, "cmd", cJSON_CreateString("heartbeat"));//根节...

2020-08-04 12:55:04 1324

原创 LWIP协议socket通信设置发送接收超时等待时间

函数名setsockopt使用方法先设置好等待时间然后等待接收。如果等待超时bytes_received返回-1

2020-06-10 09:18:04 2520 1

原创 stm32f407移值rt_thread和lwip协议,在dhcp成功后查看获取到的IP地址

stm32f407移值rt_thread加lwip协议,DHCP获取IP地址成功后想在程序中使用获取到的IP地址找了很久没有找到相关文档,串口调试输入ifconfig倒是可以看到IP地址,具体在程序中哪个函数获取到的IP地址却找不到。解决办法1.需要先在LWIP协议栈中打开调试信息,先在rtconcig.h文件里添加#define RT_LWIP_DEBUG宏定义2.在LWIP的lwpopts.h里面添加两个调试的宏定义3.编译下载,会发现输出了很多调试信息,如图最后一条是绑

2020-06-05 15:43:37 2466 5

原创 STM32F407和DP83848芯片RMII模式硬件电路图参考

分享一下STM32F407和DP83848芯片RMII模式硬件电路图电路原理图如上图所示,其中DP83848芯片的40脚是RMII_CRS_DV引脚,但我看到网上有好多原理图是把RMII_CRS_DV接到了DP83848芯片的39脚上,查了下芯片手册发现39脚是模式选择引脚,40脚才是CRS_DV引脚啊。DP83848的39脚应该是用来选择MAC接口模式的。后来测试了半天发现RMII_CRS_DV引脚接39脚或者接40脚初始化都能成功,并且都能ping通,建立TCP连接后

2020-06-05 09:44:33 12733 5

tle5012.rar

TLE5012工程源码,基于RT Thread Studio开发。包含中英文数据手册。主控芯片型号STM32f103

2021-08-04

xunjian_two.rar

stm32f407使用rt-thread系统,包含lan8720、can设备驱动。

2021-05-28

SK9822数据手册

SK9822 IC数据手册,英文版。

2020-12-22

立式Micro USB封装

立式Micro USB封装,altium designer PCB封装文件,母座 立式 180度安装,5脚焊板式。

2020-11-02

type-c母座24P 前插后贴 母座PCB封装

type-c母座24P 前插后贴 母座PCB封装,altium designer PCB封装文件。

2020-11-02

DF56C-30S-0.3连接器altium designer原理图、PCB封装

DF56C-30S-0.3连接器altium designer原理图、PCB封装文件。DF56C-30S-0.3V 0.3mm 30P HRS连接器

2020-11-02

winsen炜盛科技一氧化碳模组ZE15-CO一氧化碳检测传感器封装

winsen炜盛科技一氧化碳模组ZE15-CO一氧化碳检测传感器altium designer封装。

2020-11-02

winsen炜盛气体传感器模组ZE03系列电化学传感器原理图、PCB封装

winsen炜盛气体传感器模组ZE03系列电化学传感器altium designer原理图、PCB封装。

2020-11-02

PMSA003 PM2.5攀藤传感器A0 G10 激光 高精度 测雾霾粉尘 A003 传感器原理图、PCB封装

PMSA003 PM2.5攀藤传感器A0 G10 激光 高精度 测雾霾粉尘 A003 传感器altium designer原理图、PCB封装,攀藤G10传感器。

2020-11-02

炜盛科技红外甲烷传感器MH-440D工业地下管廊CH4燃气检测传感器封装

炜盛科技红外甲烷传感器MH-440D工业地下管廊CH4燃气检测传感器altium designer原理图、PCB封装.

2020-11-02

MyWebServer.zip

MyWebServer V3.5.71软件,rt thread系统http ota空中升级所需软件。

2020-08-01

Control+RT-Thread.rar

基于stm32f103单片机移值RT-Thread Nano实现FinSH,工程采用STM32的标准库。

2020-05-06

stm32f407-my-bsp1.rar

stm32f407芯片在RT Thread系统下添加PWM设备驱动。shell下输入pwm_led_sample芯片的PB4引脚输出PWM。

2020-05-04

stm32f407-my-bsp1.rar

STM32F407芯片RT Thread系统下移值LWIP协议,采用DP83848的PHY芯片,工程源代码,串口1为shell端口。

2020-04-11

stm32f407-my-bsp1.rar

STM32F407移值RT Thread4.0.3系统基础工程,配置好了系统时钟和串口1,启动通过串口1打印系统信息。

2020-04-11

stm32f103-my-bsp-sht20.rar

在rt thread系统下添加sht20软件包,详细移值过程参考https://blog.csdn.net/qq_25186745/article/details/103824114 rt therad系统版本是4.0.3

2020-01-04

GD32f103内部晶振时钟配置文件.rar

文件内含system_stm32f10x.c和stm32f10x_rcc.c文件,替换工程中的这两个文件即可。程序适用于GD32F103系列单片机,经过GD32F103RCT6单片机实际测试。

2019-07-06

瑞典SenseAir CO2原理图封装

瑞典SenseAir CO2原理图PCB封装,MH-Z19二氧化碳封装,altuim designer封装。

2018-12-05

攀藤G7 PM2.5传感器原理图和封装

攀藤G7,攀藤PMS7003原理图,攀藤PM2.5激光传感器AD原理图和封装。

2018-12-05

SHT20原理图和封装

SHT20 QFN封装原理图和PCB封装,SHT20 altium designer的PCB封装。

2018-12-05

HF3FF继电器封装

HF3FF继电器AD封装,JQC-HF3F-005继电器altium designer封装

2018-12-05

MICRO SIM卡座封装 小卡

手机SIM卡座 MICRO SIM卡座 自弹 SIM卡槽 6P PUSH SIM小卡卡座,PCB封装

2017-10-09

贴片纽扣电池座封装

贴片纽扣电池座封装,卧式CR2032 BS-10电池座PCB封装文件。

2017-10-09

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除