MQTT 移植STM32+GPRS(串口透传)(四)

本文介绍了如何在STM32f103上移植MQTT协议,结合ESP6288模块实现GPRS串口透传。通过修改transport.c文件中的发送和接收函数,使用串口函数替代系统函数,并实现了一个带有中断的串口接收FIFO。同时,利用定时器2进行超时检测,确保消息接收的完整性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在完成相应的初始化和参数设置后主函数中while(1)执行等待读消息,timer3定时器中断中发送采集到的传感器数值,timer4定时器中断中发送ping报文。接着上一篇继续,首先说移植需要的部分
##开发环境:
stm32f103 + esp6288(固件中支持自动连接服务器) 裸机开发

##步骤
发布/接收消息,我们是通过串口函数实现,因此发布时需要修改transport.c中的int transport_sendPacketBuffer(unsigned char* buf, int buflen)函数(因为没有使用到socket,所以可以去掉这个形参),需要串口函数支持发送字符串。

具体代码如下

    void USART2_Putc(unsigned char c)
    {
        while(USART_GetFlagStatus(USART2, USART_FLAG_TC) == RESET );
        USART_SendData(USART2, c);
        while(USART_GetFlagStatus(USART2, USART_FLAG_TXE) == RESET );
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值