自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(562)
  • 资源 (17)
  • 收藏
  • 关注

原创 测试W5500的第5步_使用ioLibrary库创建UDP组播

UDP组播是一种向特定设备组发送数据的网络通信方式。其基本步骤包括:设置本地网络参数(如IP地址、子网掩码、网关等),为SOCKET通道配置临时MAC地址、组播IP地址和端口,以便接收组内消息。发送组播消息时,数据需发送到组播组的IP地址和端口。

2025-05-23 10:28:59 136

原创 测试W5500的第4步_使用ioLibrary库创建UDP客户端和服务器端

当W5500用作服务器时,只需要一个SOCKET就可以和很多个UDP客户端进行通讯。同理,当W5500用作客户端时,可以也很多个UDP服务器与之通讯。因为本计算机只有1个IP地址,无法测试,只能将W5500的8个SOCKET通道设置为不同的端口来测试UDP客户端。本文还详细介绍了W5500的初始化、网络配置及UDP通信的实现过程,展示了其作为UDP客户端和服务器端的应用场景。

2025-05-21 14:37:30 268

原创 测试W5500的第3步_使用ioLibrary库创建TCPServer

W5500是一款具有8个Socket的网络芯片,支持TCP Server模式,最多可同时连接8个客户端。本文介绍了基于STM32F10x和W5500的TCP Server实现,包括SPI初始化、W5500复位、网络参数配置、Socket状态管理等功能,适用于需要多客户端连接的嵌入式网络应用场景。

2025-05-20 16:05:39 321

原创 测试W5500的第2步_使用ioLibrary库创建TCP客户端

本文介绍了如何初始化STM32的硬件资源,配置W5500的网络参数,并通过DHCP获取动态IP地址。并使用这个IP地址配置TCP客户端,以及双方交换数据的测试。

2025-05-20 12:54:20 383

原创 测试W5500的第1步_使用ioLibrary库创建DHCP客户端

本文介绍了如何通过STM32F10x与W5500以太网模块进行通信的代码实现。首先,通过SPI接口初始化W5500的硬件配置,包括SPI引脚、复位引脚和中断引脚的设置。接着,注册SPI的片选、读写函数,并通过DHCP协议动态获取IP地址。

2025-05-20 12:33:52 260

原创 什么样的领导才是好领导?

打工人就是打工,和气生财,非必要,不要夺人饭碗。无为而治,也许会更好。

2025-05-19 10:21:21 319

原创 STM32F103定时器1每毫秒中断一次

定时器溢出中断,在程序设计中经常用到。在使用TIM1和TIM8溢出中断时,需要注意“TIM_TimeBaseStructure.TIM_RepetitionCounter=0;”,它表示溢出一次,并可以设置中断标志位。  

2025-05-17 22:37:39 317

原创 W5500使用ioLibrary库创建DHCP客户端

本文还绍了如何配置W5500的网络参数,并通过代码示例展示了如何初始化SPI接口、配置端口、实现DHCP获取在局域网中的本地IP地址。端口0配置为调试端口,端口1配置为DNS客户端,端口2配置DHCP客户端。

2025-05-17 16:06:10 845

原创 W5500使用ioLibrary库创建DNS客户端

在因特网中,主机访问另一台主机时需获取其IP地址,但IP地址由四段数字组成,不易记忆,因此使用域名系统(DNS)来管理域名与IP的对应关系。本文详细介绍了如何通过W5500芯片实现DNS解析功能。首先,通过SPI接口初始化W5500芯片,并配置其网络参数,包括MAC地址、IP地址、子网掩码、网关和DNS服务器。接着,通过DNS客户端功能将域名解析为IP地址,并使用W5500的端口1进行解析操作。最终,解析结果通过端口0发送到远程主机。此外,文章还提供了相关代码实现,包括SPI初始化、DNS解析、定时器配置等

2025-05-17 15:26:48 201

原创 W5500使用ioLibrary库创建TCP客户端

WIZnet的全硬件TCP/IP协议栈支持多种网络协议,如TCP、UDP、IPv4等,适用于W5500、W5300等芯片。W5500是一款集成TCP/IP协议栈的以太网控制器,支持8个独立端口同时通讯,。每一个 Socket 的发送 缓存区都在一个 16KB 的物理发送内存中,初始化分配为 2KB。每一个 Socket 的接收缓 存区都在一个 16KB 的物理接收内存中,初始化分配为 2KB。

2025-05-17 11:21:13 942

原创 W5500使用SocketTool工具测试

W5500使用SocketTool工具测试。

2025-05-14 13:56:55 178

原创 keil中不用srand()设置种子值rand()也可以生成随机数

rand()在生成随机数时,同时将将这个随机数设置为下一个种子值,这就是,keil不用srand()设置种子值,rand()也可以生成随机数的原因。

2025-05-06 10:36:52 355

原创 分析rand()和srand()函数的功能

分析rand()和srand()函数的功能,如何设置随机发生器,生成随机数。‌在Keil环境中,如果不使用srand()函数,直接调用rand()函数也可以生成随机数。调用rand()不但可以生成一个新的随机数,而且也会更新“种子值”。

2025-05-05 22:50:00 871

原创 测试因strcpy执行拷贝引起的内存溢出

测试因strcpy执行拷贝引起的内存溢出。

2025-05-05 19:58:12 151

原创 分析atoi(),atol()和atof()三个函数的功能

分析atoi(),atol()和atof()三个函数的功能。

2025-05-05 19:50:57 397

原创 分析strtol(),strtoul()和strtod()三个函数的功能

分析strtol(),strtoul()和strtod()三个函数的功能,重点分析strtol()和strtoul()之间的区别。

2025-05-05 19:31:00 769 1

原创 strstr()和strpbrk()函数的区别

strstr()和strpbrk()函数的区别。

2025-05-04 15:36:14 202

原创 C语言中memmove和memcpy

C语言中memmove和memcpy的区别。

2025-05-03 18:22:25 539

原创 AD16制作3D封装元件

AD16使用“IPC Compliant Wizard…”制作3D封装元件步骤。

2025-04-28 16:06:04 303

原创 AD16如何执行DRC检测

AD16如何执行DRC检测,DRC检测主要用来查看走线是否出现通断,以及是否出现短路。

2025-04-24 17:39:36 211

原创 AD16如何布线和铺铜

AD16如何布线和铺铜。

2025-04-24 17:32:15 498

原创 AD16如何设置布线规则

AD16如何设置布线规则。

2025-04-24 17:15:57 407

原创 AD16批量修改PCB元件序号的高度和宽度

AD16批量修改PCB元件序号的高度和宽度。

2025-04-24 17:06:35 213

原创 AD16如何对同值元件进行排序

AD16如何对同值元件进行排序。

2025-04-24 16:58:34 368

原创 AD16如何设置合适的PCB板框

AD16如何设置合适的PCB板框

2025-04-24 16:31:35 284

原创 AD16如何批量放置过孔

AD16如何批量放置过孔

2025-04-24 16:23:04 122

原创 PCB元件的引脚和白油图均出现绿色,如何解决?

解决PCB元件的引脚和白油图均出现绿色的问题。

2025-04-24 16:18:33 330

原创 MCU屏和RGB屏

MCU屏‌:全称为单片机控制屏(Microcontroller Unit Screen),在显示屏背后集成了单片机控制器,因此,MCU屏里面有专用的驱动芯片。RGB屏的内部没有GRAM和控制器。

2025-04-11 12:35:58 1029

原创 解决STM32F103串口2接收空闲中断+DMA传输丢失第1帧和第2帧数据

串口接收空闲中断+DMA传输解决丢失第1帧和第2帧数据。

2025-04-07 11:32:15 249

原创 语法:MEMCPY( )和MEMMOVE( )

memcpy(destination, source, n); memmove(destination, source, n);该函数从RAM中的源存储区复制n个字节到RAM中的目的存储区;

2025-04-06 21:36:30 224

原创 语法: ptr=malloc(size)

ptr=malloc(size)该函数用来分配一定大小的空间给一个对象ptr。

2025-04-06 21:32:12 199

原创 语法: i32=make32( var1, var2, var3, var4);

i32=make32( var1, var2, var3, var4);将任意结合的8位数var1, var2, var3, var4制造成32位的数据;

2025-04-06 21:30:12 692

原创 语法: i16=make16( varhigh, varlow);

i16=make16( varhigh, varlow)相当于i16=(int16)( ( varhigh &xff)*0x100 )+( varlow&0xff );将两个分离的字节制成一个16位的数;

2025-04-06 21:27:50 640

原创 语法: i8=make8( var, offset);

i8=make8( var, offset);该函数用来摘取以var为基址, offset为偏移量,所指向单元的字节;

2025-04-06 21:25:40 129

原创 语法: result=log10 (value);

result=log10 (value);该函数是用来计算浮点数x以10为底数的对数(即数学式log x);

2025-04-06 21:23:22 208

原创 语法: result=log (x);

result=log (x);该函数是用来计算浮点数x的自然对数(即ln x);

2025-04-06 21:21:23 158

原创 语法: result=ldexp (value, exp);

ldexp( ) 该函数是用一个浮点数乘以2的多少(整数)次方.

2025-04-06 21:18:57 158

原创 语法: setup_lcd (mode, prescale, [segments]);

setup_lcd (mode, prescale, [segments]);该函数用来初始化923的LCD驱动器或924的LCD驱动器;

2025-04-06 21:17:08 269

原创 语法: lcd_ symbol (symbol, b7_addr, b6_addr, b5_addr, b4_addr, b3_addr, b2_addr, b1_addr, b0_addr);

lcd_ symbol (symbol, b7_addr, b6_addr, b5_addr, b4_addr, b3_addr, b2_addr, b1_addr, b0_addr);用来将8位数据装载到LCD每个特定的位地址处的segment data area(段数据区).

2025-04-06 21:15:48 287

原创 语法: lcd_load( buffer_pointer, offset, length);

lcd_load( buffer_pointer, offset, length),从CPU的buffer_pointer存储区取length个字节,装载到923/924 LCD的segment data area(段数据区),起始偏移量offset范围为0~15.

2025-04-06 21:13:18 563

5-W5500-DHCPClient

本文介绍了如何通过STM32F10x与W5500以太网模块进行通信的代码实现。首先,通过SPI接口初始化W5500的硬件配置,包括SPI引脚、复位引脚和中断引脚的设置。接着,注册SPI的片选、读写函数,并通过DHCP协议动态获取IP地址。代码中还实现了定时器中断,用于处理DHCP超时等任务。最后,通过串口输出网络配置信息,如MAC地址、IP地址、子网掩码、网关和DNS服务器。整个流程展示了如何从硬件初始化到网络配置的完整步骤,适用于嵌入式系统中以太网通信的开发。

2025-05-20

STM32F1-W5500-TCP客户端接收中断

STM32F103通过SPI和W5500通讯,使用端口0建立TCP客户端。可以通过INT引脚中断,提示有新数据输入。

2025-05-17

TCP和UDP测试工具

TCP和UDP测试工具,支持TCP客户端,TCP服务器端,UDP客户端和UDP服务器端。

2025-05-14

如何设计IAP和APP-2025

《如何设计IAP和APP_2025》主要介绍如何在STM32F103上设计IAP和APP程序,以及如何烧录IAP代码和APP代码。通过演示,让大家容易上手设计。

2025-03-20

PT100温度计算及其电路图

PT100温度计算,采用ADC转换读到PT100的电阻值,然后采用求根法计算温度,并附上EXCEL计算表格,以及电路图。

2024-07-23

SIM800-Series-AT-Command-Manual-V1.07

SIM800 Series AT Command Manual V1.07是SIM800模块的AT命令说明书。这是曾经销售很火爆的一款2G模块,支持GSM电话,短信,彩信,GPRS,GPS和蓝牙,等通讯,功能十分强悍,在2G通讯领域,独占头角。

2024-07-17

汉字内码查看器.exe

汉字内码查看器,输入汉字可以查询其汉字内码;输入汉字内码可以查看到是什么汉字。

2024-07-17

STM32F030F4工程模板-标准库

STM32F030F4工程模板,采用标准库实现。

2024-07-09

STM32F407-标准库工程模板

STM32F407工程模板,采用标准库实现

2024-07-09

STM32F042工程模板-HAL库

STM32F042工程模板,使用HAL库。

2024-07-09

STM32F042工程模板-标准库

STM32F042工程模板,使用标准库。

2024-07-09

基于正点原子的STM32FMP157开发板的FlashLayout

基于正点原子的STM32FMP157开发板的FlashLayout,使用STM32CubeProgrammer打开,用来指定文件烧录FLASH中的位置,并指定烧录的哪些文件。Window文件:FlashLayout.tsv,有的人命名为tf-a.tsv,但不影响烧录。

2024-06-24

基于正点原子的STM32FMP157开发板的Uboot移植

基于正点原子的STM32FMP157开发板的Uboot移植,Ubuntu下的Linux压缩包:u-boot-stm32mp-2024.02.tar.bz2

2024-06-24

基于正点原子的STM32FMP157开发板的TF-A移植

基于正点原子的STM32FMP157开发板的TF-A移植,Ubuntu下的Linux压缩包:tf-a-stm32mp-2024.2.tar.bz2

2024-06-24

基于正点原子的STM32FMP157开发板的busybox根文件系统移植

基于正点原子的STM32FMP157开发板的busybox根文件系统移植,Ubuntu下的Linux压缩包:busybox2024-02-1.32.0.tar.bz2

2024-06-24

基于正点原子的STM32FMP157开发板的buildroot根文件系统移植

基于正点原子的STM32FMP157开发板的buildroot根文件系统移植,Ubuntu下的Linux压缩包:buildroot2024-2-2020.02.6.tar.bz2

2024-06-24

基于正点原子的STM32FMP157开发板的Linux系统移植

基于正点原子的STM32FMP157开发板的Linux系统移植,Ubuntu下的Linux压缩包:linux2024-02-5.4.31.tar.bz2

2024-06-24

stm32-CAN波特率计算工具及代码生成

stm32 CAN波特率计算工具,双击合适的配置,并会生成配置代码

2024-06-18

使用单相电测试三相空气开关

使用单相电测试三相空气开关。

2023-10-12

普冉开发板原理图和数据手册

普冉开发板原理图和数据手册: 1、PY32F0XX_HALL驱动库和LL驱动库函数说明手册 v1.1.2 2、PY32F002AF15P电路图 3、PY32F003F18P电路图 4、PY32F003F18P数据手册 5、PY32F003F18P数据手册_EN 6、PY32F003参考手册v1.1 7、PY32F030K28T6电路图 8、PY32F003F18P时钟系统结构图

2023-08-28

GD32F103工程模板

GD32F103工程模板,这是一个完整的工程模板,可以使用。含有core_cmFunc.h和core_cmInstr.h这两个文件。

2023-08-02

WORD如何自动生成目录?

WORD如何自动生成目录。经常写说明书,不会自动生成目录,特地整理一下,防止以后忘记怎么操作了。不好意思,记性差。

2023-07-28

STM32F103之CAN通讯测试

STM32F103之CAN通讯测试分别测试CAN接收中断和非中断接收,在程序注释中,介绍了CAN的基本工作原理。 CAN总线以“帧”(Frame)的形式进行通信。 CAN总线协议规定了5种帧,分别是数据帧、远程帧、错误帧、超载帧以及帧间隔。 数据帧: 1、帧起始:占1位,显性信号,对应逻辑0; 2、仲裁段:包括标识符位(ID位)和远程发送请求位(RTR位,占1位); 标识符位:标准帧的ID位是11位,扩展帧的ID位是29位 远程发送请求位:RTR位,占1位,逻辑0表示该帧为数据帧,逻辑1表示该帧为远程帧; 在CAN协议中,ID决定报文的优先级高低,同时还决定该节点是否接收此ID的帧数据; 3、控制段 标准帧的控制段:由扩展标识符位(IDE,占1位)、保留位0(R0,占1位)、数据长度编码位(DLC,占4位)组成; 扩展帧的控制段:由两个保留位、数据长度编码位(DLC,占4位)组成; 4、数据段 数据段里是发送数据的内容,最多8个字节,长度为"数据长度编码位"。 5、循环校验段 循环校验段包括循环校验序列(CRC位,占15位)和界定符(DEL位,占1位); CRC用于校验传输是否正确;

2023-07-09

STM32F103移植uC-OSII工程模板

STM32F103移植uC-OSII工程模板,版本:V2.91 学习最好步骤: 1 、找到移植好的工程模板 2、API函数应用 3、熟悉OS配置和剪切 4、了解内部主要函数的功能

2023-06-23

STM32F103移植uC-OSIII工程模板

STM32F103移植uC_OSIII工程模板,版本: V3.03.01 学习步骤: 1 、找到移植好的工程模板 2、API函数应用 3、熟悉OS配置和剪切 4、了解内部主要函数的功能

2023-06-23

《1-uC-OSII-任务挂起-恢复-删除-例程》

1、创建任务,OSTaskCreate() 2、删除任务,OSTaskDel() 3、挂起任务,OSTaskSuspend() 4、恢复任务,OSTaskResume() 5、发送删除任务请求,OSTaskDelReq() 当OS_LOWEST_PRIO=63时,μC/OS-II有64个优先级,优先级的高低按编号从0(最高)到63(最低)排序。 #define OS_MAX_TASKS 5u /*设置"我的任务总数",uCOSii至少有两个任务,分别是"空闲任务"和"统计任务"*/ //5表示用户可以用其中的3个任务,加上"空闲任务"和"统计任务"就是5个任务;

2023-06-05

uCOSii-任务管理

主要用来测试使用uCOSii“创建任务,挂起任务,恢复任务,发送删除任务请求,删除任务”。 主要文件如下: os_cfg.h,My_Task_Priority.c,My_Task_Priority.h,Start_Task.c,Start_Task.h,main.c,LED0_Task.c,LED0_Task.h,LED1_Task.c,LED1_Task.h,Key_Task.c,Key_Task.h,LED.c,LED.h,KEY.h,USART1.c,USART1.h,delay.c,delay.h,sys.c,sys.huCOSii,主要uCOSii用户函数

2023-05-23

《PIC单片机CCS-C编译器参考手册》

《PIC单片机CCS_C编译器参考手册》适用PIC单片机在CCS编译器环境下编写C程序。适合PIC12,PIC16,PIC18等系列的CPU。 #include <18F67K22.h> //包含头文件18F67K22.h #device ADC=12,ICD=TRUE #fuses ECM_IO,PLLEN,NOIESO,MCLR,WDT1024,BORV20,VREGSLEEP,NOPROTECT,FCMEN,RTCOSC_INT,SOSC_DIG //ECM_IO: 使用外部有源晶振8MHz; //PLLEN: 使用4倍频率锁相环; //NOIESO: 双速启动不使能; //MCLR: MCLR脚使能; //WDT1024: 看门狗定时器经过1024次分频; //BORV20: 掉电复位电压2.0V //VREGSLEEP: 内部LDO在睡眠时也会工作; //NOPROTECT: 代码不保护; //FCMEN: 自动防故障装置时钟监控使能;

2023-05-02

STM8S207RB带uCOSII系统

STM8S207RB带uCOSII系统,两个LED任务,一个按键任务,一个任务栈大小检测任务,支持串口输出,时钟切换到外部高速振荡器24MHz,已经测试通过。

2023-01-29

STM8S207窗口看门狗测试程序

STM8S207窗口看门狗测试程序,已经测试,解释详细。

2023-01-25

STM8S207串口综合测试,UART1发送接收中断

STM8S207串口综合测试,UART1发送接收中断

2023-01-22

CPU复位后指定全局变量不被初始化

在KEIL中,配置全局变量在CPU复位后,无需初始化。

2022-08-22

UART_To_IAP_To_FLASHAPP

串口转IAP然后到APP,上电时,进入UART到IAP,然后判断下载程序是否合法,若合法,则执行APP。

2022-08-12

串口转IAP然后到APP

串口转IAP,然后到APP,串口发送11次TEST后,再进入IAP,如此循环往复工作。下面的程序经过实测,验证可行,目的是用来交流和学习。

2022-08-12

STM32芯片驱动AD5412或AD5416程序及其电路图

STM32芯片驱动AD5412或AD5416程序,电路图,感觉写不错。 AD5412/AD5422是低成本、精密、完全集成、12/16位数模转换器(DAC),内置可编程电流源和可编程电压输出,设计用于满足工业过程控制应用的需要。 输出电流范围可编程设置为4 mA至20 mA、0 mA至20 mA或者超量程的0 mA至24 mA。 电压输出由一个独立引脚提供,该引脚可配置成提供0 V至5 V、0 V至10 V、±5 V或±10 V输出范围;所有范围均提供10%的超量程。 电源电压范围 AVDD:10.8 V至40 V AVSS:−26.4 V至−3 V/0 V ,输出环路顺从电压:AVDD − 2.5 V

2022-07-26

使用串口4测试栈溢出,支持FreeRTOS,4个任务,1个定时器和RTC

使用串口4测试栈溢出,支持FreeRTOS,4个任务,1个定时器和RTC;结合使用串口1测试栈溢出,才可知道其中的奥妙

2022-07-15

使用串口1测试栈溢出,支持FreeRTOS,4个任务,1个定时器和RTC

使用串口1测试栈溢出,支持FreeRTOS,4个任务,1个定时器和RTC

2022-07-15

艾兰德ALD2400V变频器使用手册

艾兰德ALD2400V变频器使用手册

2022-06-13

ALPHA6000E_6000M系列说明书_A5

ALPHA6000E_6000M系列说明书_A5

2022-06-13

中国石油 XSJ 系列说明书V3.7

中国石油 XSJ 系列说明书V3.7

2022-06-09

空空如也

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

TA关注的人

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