- 博客(13)
- 问答 (3)
- 收藏
- 关注
原创 tcp-listen()函数的作用?返回值代表什么?
返回一个指向`struct tcp_pcb`(TCP协议控制块)的指针,这个PCB是专门用于监听的新结构,与原始的`tcp_pcb`分离(原始PCB转为监听状态后不能再用于数据传输)。`tcp-listen`函数将一个已绑定的TCP套接字(通过`tcp_bind()`绑定IP和端口)转换为**监听状态**,使服务器能够接受客户端的连接请求。通常在监听时会指定一个**回调函数**(如`accept_callback`),当有新连接到达时,内核会自动调用该回调函数处理连接。1. **创建监听套接字**
2025-03-27 10:53:12
405
原创 TCP发送缓存区已满怎么办(deepseek版)
**方法** | **适用场景** | **缺点** |MX_LWIP_Process();**注意**:此方法会阻塞主循环,需确保`MX_LWIP_Process()`能被及时调用。- **提高协议栈处理频率**:确保`MX_LWIP_Process()`调用间隔≤1ms。2. **动态监控网络状态**:通过`tcp_sndbuf()`和错误统计调整发送频率。
2025-03-25 14:37:45
857
原创 更改TCP发送频率(deepseek版)
通过 **硬件定时器 + 主循环标志位检测** 实现 20ms 发送频率的核心代码,既避免了 `tcp_poll` 的周期限制,又确保了协议栈的线程安全性。在裸机环境下若不使用 `tcp_poll` 机制,可以通过 **用户定时器中断 + 主动发送控制** 实现 20ms 的 TCP 数据发送频率。- LwIP函数(如 `tcp_write`, `tcp_output`)需在**主线程上下文**调用,禁止在中断中直接使用。- **主循环主动发送**:在主循环中检测发送标志位,触发数据封装和发送。
2025-03-25 12:14:31
619
原创 增量式码盘读出“”“负数”原理分析
但是(int)TIMEx->CNT操作后,赋值给num,int类型的范围为(-32768~32767),所以,当CNT中的值不断累加时,0,1,2.。其中1位负号,(1)000 0000 0000 0000为32768,此时为-32768。进而为-32767.。所以num = (int)TIMEx->CNT;在CNT为0时,反转减1,num为-1,依次类推。,通过int)TIMEx->CNT操作,取反(符号位不变,其它位取反)
2023-07-13 21:21:27
382
原创 应用程序无法正常启动,出现(0Xc000007b)报错的解决办法
下载DirectX修复工具:https://blog.youkuaiyun.com/vbcom/article/details/7245186(详见大佬博文)
2023-04-23 09:54:34
787
转载 RS-232、RS-485、USART、I2C、SPI、CAN知识点对比
RS-232、RS-485、USART、I2C、SPI、CAN知识点对比
2023-02-14 14:40:56
1279
原创 2021-11-09
ccs中出现以下错误error #10234-D: unresolved symbols remainerror #10010: errors encountered during linking; "15_urat.out" not built作为新手,编译时会经常出现这种编译错误,本人查了很多的博主的帖子,造成该错误的比较多,在这里我只针对本人的错误案列进行解释,有其他的错误问题可以查询其它帖子。在console中找到问题,看上面的箭头对方,你会发现,在你的lib中缺少的文件,这.
2021-11-09 11:30:55
593
原创 css编译时出现gmake***[ .obj]Error1等错误
作为一名新手,在学习教程案例时,用ccs软件编译时,出现下面的问题,查了很久的网络,没有很好地解释,同样也有人在问。我试了很久,终于找到我的问题所在了,在这里跟大家分享一下,有同样问题的小伙伴可以试试这种方法哦。...
2021-08-30 12:20:02
21256
14
空空如也
keil在仿真时,watch不能实时更新
2023-07-13
FreeRTOS中断级队列实验
2023-02-02
在FreeRTOS系统中,任务如何进行切换?
2022-08-29
ccs软件单步调试运行一半后,不能继续单步运行
2021-11-10
为什么会一直出现illegal break啊?
2021-08-16
TA创建的收藏夹 TA关注的收藏夹
TA关注的人