上班摸鱼肝系列:梁山派开发板系列---13.串口中断接收实验(2) UCChipUHFREADER与GD32F470通信

说明:

        这一期是继上班摸鱼肝系列:梁山派开发板系列10.串口中断接收实验的另外一个实验,也是工作上遇到的问题,过程是这样的,我们梁山派GD32F470开发板需要接收UCChipUHFREADER发送过来的标签数据,利用的就是我们串口接收中断的功能,下面开始展示步骤,其中有记录着我遇到的问题。


文章目录


提示:以下部分代码如有更有解可在评论区一起沟通交流哈。

一、物件介绍

这是开发板和CH340: 

这是UCChipUHFREADER模组:

 这是标签块:

二、接线

射频发射器TX -- 梁山派GD32板子RX
梁山派GD32板子TX -- CH340RX

用的是串口USART0接收和发送

三、串口中断服务函数

 四、操作上位机

        打开rfid_reader_v1.76_2这个是RFID模组的上位机,本身也是个串口,是专门用来查看、操作标签数据的:

        我们先连接上自己的读写器,关于这个上位机的操作是有一个参考教程文档的,我们可以到官网中查看:UCchip Docs (ucthings.com)

        我们来到下面界面,点击开始盘存,然后读写器就会读写标签信息,在串口中显示标签数据:

 

        重点来了,我们读写器板子的电源线,既是给读写器供电的功能,也是传输数据的功能,板子上本身也有一个CH340,,我们可以通过读写器的原理图得知,我们需要飞线出来的是左边从下往上数第二个就是CH340的TX口,如下图所示:

         飞线完成后,我们把工程烧录到梁山派开发板中,并打开串口助手,波特率两边都是115200,串口是单片机从读写器那边接收并打印给我们的数据,然后RFID读写器上的串口显示出来的是读写器自己读出来的数据:

         我们在RFID上位机点击开始盘存,然后飞线连接单片机,我们来看一下现象:

五、现象

首先是没放上标签的两边的数据:

然后是放上标签的两边的数据:

我们可以看到两边的数据是一模一样的,也就是说RFID读写器发过来给单片机的数据是完整的!

另外,说一下RFID上位机,它会帮我们记录识别到的标签数据和信息,功能还是很强大的:

六、遇到的问题

1:为什么不用读写器板子左边的串口TX接线进行发送数据?

        串口通信是从USB口,另外一组串口是log串口,我们如果要接收读写器数据就需要像上面那样飞线出来给单片机或者其他板子的串口RX接收。

2:单片机接收出来的数据为什么只有一头一尾或者只显示部分数据呢?

        串口中断服务函数里面空闲中断中需要加上等待发送完成的代码,如下图所示:


        就是因为这行代码,没有确保等待发送完成,所以发送的数据是不完整的,这里需要提一下,我测试过,接收数据是没问题的,接收多少位和读写器上位机是对得上的,问题就在于发送出现了问题!!!

        在之前STM32的学习中我的印象中是不需要做此操作的,也不知道是不是GD32特有的,目前还没真正理解清楚,后面我再用STM32的板子证实一下。

总结

        完成了RFID读写器发送过来的标签数据然后单片机读取储存数据并在串口中打印出来的实验,也是工作中遇到的问题。

  • 3
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小邓上班摸鱼肝

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值