小白发帖
我使用的是stm32f407的板子,用培训机构提供的低频RFID和Gy39模块做的一个小玩意儿,通过串口读取线圈识别的IC卡的卡号
一开始读取出来的原始数据是16进制的,我讲他们存在一个数组中,再将其提取出来组合成一串16进制的数字,最后十进制输出即可获得卡号
这是读取出来的数据帧接下来处理Gy39模块
我这边拿到的是串口工作模式的,所以使用串口获取对应的数据帧,在进行处理即可
要获取光照和温度、气压等数据发送的命令也不相同,而且光照的数据帧是9位的,而温度、气压等是15位字节的数据帧,我用了标志位这种本办法来在中断串口服务函数中获取不同的数据帧
光照的数据在数据帧中的5到8个字节,图中红色字体的位置,在数组中获取对应位置的数据再按照图中的计算公式来计算光照值即可。
温度、气压、湿度、海拔的数据计算原理也是如此,算是比较容易上手的模块了。
最后再用代码的方式处理一下这两种数据帧获取的时间和顺序即可,我采用的方法是,串口发送一个'B'则采集一次温度、气压、湿度、海拔的数据并打印在串口上,其余时候都在采集光照数据,低于一定阈值则打开LED灯,否则关闭。在串口中发送'A'则 直接将此时光照的数据打印即可。
这样就完成了一个简单的低频RFID卡号识别和Gy39模块的小玩意了。
最后就是成果图了
由于是小白,所以对于各个模块之间的结合还掌握的不是很好,对光照阈值的判定有些延迟,代码我也放出来,大家参考参考,小白一枚,大佬勿喷
https://download.csdn.net/download/qq_55737362/87360741
新人发帖留念一下sky~