系列文章:
【从0到1搭建LoRa物联网】1、LoRa物联网的架构
【从0到1搭建LoRa物联网】2、终端设备开发方式
【从0到1搭建LoRa物联网】3、国产LoRa终端ASR6505软硬件
【从0到1搭建LoRa物联网】4、国产LoRa终端ASR6505普通GPIO
【从0到1搭建LoRa物联网】5、国产LoRa终端ASR6505驱动DHT11
【从0到1搭建LoRa物联网】6、国产LoRa终端ASR6505 I2C接口
【从0到1搭建LoRa物联网】7、国产LoRa终端ASR6505驱动段式LCD例程
【从0到1搭建LoRa物联网】8、国产LoRa终端ASR6505 PingPong通信
【从0到1搭建LoRa物联网】9、国产LoRa终端ASR6505 PingPong通信OLED显示
【从0到1搭建LoRa物联网】10、LoRa终端ASR6505 ADC采样
【从0到1搭建LoRa物联网】11、ASR6505 LoRaWAN通信
【从0到1搭建LoRa物联网】12、LoRa网关与平台通讯协议
【从0到1搭建LoRa物联网】13、低成本单通道网关(一)
【从0到1搭建LoRa物联网】14、低成本单通道网关(二)
【从0到1搭建LoRa物联网】15、LoRa连接到The Things Network
【从0到1搭建LoRa物联网】16、LoRa连接到腾讯云物联网平台
【从0到1搭建LoRa物联网】17、LoRa连接到chirpstack
【从0到1搭建LoRa物联网】18、LoRa应用服务器Application Server

前言:串口透传也是用的最多的一种,用户把需要发送的数据通过串口发送到模块,模块正确接收后,然后通过LoRa发送出去,发送完后再切换到接收模式。模块不分主从机,但是要确保两个模块的射频参数一致。这里使用串口空闲中断和接收中断的方式接收串口数据。

1、串口核心代码

//初始化中断、串口缓冲区
void COMTransInit(void)
{   USART_ITConfig(EVAL_COM, USART_IT_RXNE, ENABLE);USART_ITConfig(EVAL_COM, USART_IT_IDLE, ENABLE);CommType.Len=0;CommType.IsIDLE=false;memset( CommType.RecvBuff,0,sizeof(CommType.RecvBuff));
}
//接收数据,存入缓冲区
void COMRecvBuff(uint8_t data)
{if (CommType.Len<COMM_BUFF_MAX){CommType.RecvBuff[CommType.Len] = data;CommType.Len++;}else{CommType.Len=COMM_BUFF_MAX;}
}//串口空闲设置
void COMRecvIDLE(bool IsIDLE)
{CommType.IsIDLE=IsIDLE;
}
//串口数据处理
bool COMProcess(uint8_t *buff,uint16_t *len)
{#if 0  if((CommType.IsIDLE)||(CommType.Len>=COMM_BUFF_MAX)) //    //数据过长,会先判断到数据过长,再产生idie中断
#elseif(CommType.IsIDLE)
#endif  {memcpy(buff,CommType.RecvBuff,CommType.Len);*len= CommType.Len;  memset( CommType.RecvBuff,0,sizeof(CommType.RecvBuff));CommType.IsIDLE =false;CommType.Len=0;return true;}return false;
}

2、串口中断处理代码

INTERRUPT_HANDLER(TIM2_CC_USART2_RX_IRQHandler, 20)
{uint8_t ch;if (USART_GetITStatus(USART2, USART_IT_RXNE) == SET){ch = USART_ReceiveData8(USART2);USART_ClearITPendingBit(USART2, USART_IT_RXNE);COMRecvBuff(ch);}if(USART_GetITStatus(USART2, USART_IT_IDLE) != RESET){USART2->SR;//SRUSART2->DR;//DRUSART_ClearITPendingBit(USART2, USART_IT_IDLE);COMRecvIDLE(true);}
}

3、LoRa处理代码

与ping-pong类似,pingpong通信。

4、现象

欢迎关注微信公众号【物联网思考】,回复关键字“ ASR6505”获取资料,《从0到1搭建LoRa物联网》系列的所有软硬件资料将会分享在公众号。

【从0到1搭建LoRa物联网】19、LoRa串口透传例程(补充)相关推荐

  1. 信驰达BLE 5.0低功耗蓝牙模块使用 (AT指令串口透传) RSBRS02ABR

    信驰达蓝牙模组 信驰达透传固件功能特点: 使用简单,无需任何蓝牙协议栈应用经验:支持蓝牙 5.0 协议栈. 价格便宜,价格便宜,价格便宜 (重要的事情只说三遍) 信驰达科技[Vivi] 联系电话:13 ...

  2. 物联网平台TZ-IOT发布透传云内测服务:V1.0

    物联网平台TZ-IOT发布透传云内测服务:V1.0 本文博客链接:http://blog.csdn.net/jdh99,作者:jdh,转载请注明. 物联网简介: 什么是物联网?顾名思义,物联网是万物互 ...

  3. 物联网高温作业应用场景耐高温无线收发串口透传模块推荐

    E30T-433T20S 耐高温无线串口透传模块 载波频率:410-450MHz 发射功率:20dBm 通信距离:3.5km 产品尺寸:16 * 26mm 产品简介:E30T-433T20S 是一款耐 ...

  4. 物联网IOT选型wifi路由模块串口透传不得不知的秘密

    2020年一场突如其来的疫情灾难袭来,各大经济市场在不同程度被按下了"暂停键".物联网控制作为新兴行业优势凸显出来,其无接触式的交互方式,远程控制,智能控制车间,给疫情期间的人民带 ...

  5. LoRa开发|LoRa(SX1276/8)串口透传代码-将LoRa封装成单独的驱动(STM32)

    一.前言 嵌入式开发中我们要时刻保持代码的高效与整洁.2020年,开年注定不平凡,新型冠状肺炎的出现哪里也去不了,在家无聊写点东西吧.最近和一友人聊天,友人一直在抱怨学习lora没有前途,一直在纠结要 ...

  6. SDK_17.1.0 nrf52832 串口透传(NUS)增加DFU功能OTA

    1.环境搭建以及需要的软件见这篇文章:Secure DFU环境搭建_Zoolybo的博客-CSDN博客 2.密钥以及加密算法的方法详见这篇文章:详解蓝牙空中升级(BLE OTA)原理与步骤_Zooly ...

  7. CAT1模块EC200S 4G物联网模块串口透传MQTT协议 快速入门指导资料

    EC200S是广州斯迈尔特推出的一款工业级,小体积自带STM32CPU,引出串口.SPI\AD等常用接口,用户只要通电就能应用到自己的产品中.EC200S的版本已经完全可以支持UDP TCP PPP ...

  8. 微信小程序和8266串口透传 控制8266 配网 微信公众号配网 app配网 物联网esp8266

    1234 生产 清空固件 为了出现莫名其妙的问题 下载固件 因为固件为某公司定制产品不能公开 更新配置 主要是为了让用户拿到手配网成功就能 连接mqtt 并且订阅 {"m":&qu ...

  9. 【从0到1搭建LoRa物联网】20、LoRaWAN扩展

    系列文章: [从0到1搭建LoRa物联网]1.LoRa物联网的架构 [从0到1搭建LoRa物联网]2.终端设备开发方式 [从0到1搭建LoRa物联网]3.国产LoRa终端ASR6505软硬件 [从0到 ...

最新文章

  1. Knative 暂时不会捐给任何基金会 | 云原生生态周报 Vol. 22
  2. rocketmq 顺序消费_10 分钟看懂消息队列 RocketMQ
  3. HDOJ 2046 骨牌铺方格 【递推】
  4. 从信息检索顶会CIKM'20看搜索、推荐与计算广告新进展
  5. 如何使用域组策略(AD GPO)分发软件安装以及卸载[1.31.2013更新]
  6. python并行线程倒计时_[python 并行2]线程
  7. 车险对方全责理赔要自己垫付吗?
  8. 该怎么清缓存呢?fflush clear ignore
  9. ssh 执行 SSH2_MSG_SERVICE_ACCEPT 慢问题
  10. [原创]如何有效的考核测试人员
  11. ukey证书是什么意思_什么是证书?
  12. DB2操作指南及命令大全
  13. 【业务人员第一视角】氚云低代码开发平台测评
  14. Hello MySQL(八)——自定义函数
  15. 如何使用VC编译.C文件或者CXX文件?
  16. jenkins4-jenkins源码管理无法连接仓库:Command git ls-remote -h --
  17. laravel学习1.0
  18. 福州大学计算机学院李敏,福州大学厦门工艺美术学院
  19. 上饶服务器租用 游戏服务器如何选择?
  20. 计算机网络技术专业就业前景分析。

热门文章

  1. 数字图像处理之点运算---对数变换
  2. CHERRY G80-8113 软硬编程教程
  3. 如何保证企业服务器安全-MCK主机加固解决方案
  4. 有写字好看的人给点实用性技巧吗?
  5. 【正点原子STM32连载】第五十三章 DSP测试实验 摘自【正点原子】MiniPro STM32H750 开发指南_V1.1
  6. leetcode 169(简单)题解:给定一个大小为 *n* 的数组,找到其中的多数元素。多数元素是指在数组中出现次数大于 *⌊ n/2 ⌋* 的元素。
  7. 基于R语言的随机森林算法运用
  8. Metacat实现原理解析
  9. NUAA-编译原理-语法分析
  10. Office2Pdf工具开发