FlexLua 低代码单片机零基础实现 125K ID 卡读取 ID 号
创作时间:
作者:
@小白创作中心
FlexLua 低代码单片机零基础实现 125K ID 卡读取 ID 号
引用
网易
1.
https://m.163.com/dy/article/J1T1HAL805567CFE.html
125K ID 卡读取 ID 号
本文章参考 FlexLua 官网 ,基于 FlexLua 脱离复杂单片机C开发正逐渐成为一种快速高效的 IoT 硬件开发方式。让小白即使不懂单片机开发也可很容易用FlexLua零门槛开发各种 IoT 硬件。
一、ID卡基本概念介绍
ID卡又称射频ID卡,工作频率在125KHz。现在市场采用的多是一种无源、唯一序列号的ID卡片,制造厂家在产品出厂前已将此序列号固化,不可更改。 目前主流的ID卡为EM4100系列以及与其兼容的卡。
每个ID卡内部存储有5个字节的序列号,其中一个字节存储VID号,剩下四个字节存储ID号,我们平时在ID卡或钥匙扣上看到的那串数字就是用这四个字节的ID号的十进制形式标识出来的。下图为EM4100系列卡的内部存储按位(bit)方式展示出来的结构图:
二、实现功能描述
本例要实现的功能为Core控制ID卡读卡模块不停的搜寻周围的ID卡,当有效的ID卡靠近之后,即可检测出其VID号和ID卡号,最后将VID和ID卡号以十进制的方式在电脑串口调试终端上输出。
三、接线图
四、材料清单
- 125K ID卡读卡模块
五、完整代码
--配置USB以虚拟串口模式工作,波特率115200,这样print()函数的内容就会打印到电脑串口终端上面
LIB_UsbConfig("CDC")
--设置ID卡读卡器模块占用TX0和RX0引脚
LIB_IdCardReaderConfig("UART0")
--开始大循环
while(GC(1) == true)
do
--查询是否读到ID卡
id_found,vid,id = LIB_IdCardReaderGetContent()
if id_found == 1 then
--将读取到的vid和id号以十进制形式打印输出
print(string.format("VID:%03d ID:%010d\r\n", vid, id))
end
end
如果感兴趣,上面代码中出现的LIB开头的库函数可以在 API文档 中通过Ctrl+F查询。
六、代码运行结果
在电脑端运行的调试助手上,我们可以看到如下打印输出信息:
这里前后用了三个ID卡进行打卡操作,三个ID卡的卡号如下图:
热门推荐
如何帮助瘫痪患者恢复行走能力
前十字韧带运动损伤:运动场上的不屈挑战
走路太多膝盖疼痛?三个实用小方法帮你快速缓解
水泥回转窑各部位使用耐火材料配置及选型要求
网络发表小说的各种版权究竟归谁?
保险索赔流程是什么
独立的现实世界是否存在?一个让你疯狂又坦然的宇宙观!
丧假制度详解:申请条件、假期时长及工资计算方法
Dev C++下载安装使用教程(图文并茂,新手必看)
福州电动车黄牌蓝牌绿牌的区别
感冒头晕头重昏昏沉沉是什么原因
肺癌治疗需要多少钱?详解医院等级与地区差异对费用的影响
揭秘艾滋病:为何它独独“偏爱”人体T细胞?
频繁洗澡免疫力会下降?冷天宜少洗澡,多泡脚!
优先认购是什么?一文详解股东权益保护机制
艾滋病患者享有的补贴与支持:全面解析
前端JS每日推荐系统实现指南
湖南郴州七处必游景点:从东江湖到仰天湖,领略“福城”之美
被起诉后的法律后果与影响
语言类专业目录及专业代码(专科)
2025翻译专业就业前景及方向:好找工作吗?
Vue前端表格列动态生成指南:三种实用方法详解
央视首次公开!052D型Pro Max版正式亮相,中国海军下一代驱逐舰何时亮相?
中科院力学所发现两动体对撞的标度律关系
沙特“未来之城”:六大核心区域同步施工 The Line完成关键挖掘与场地准备
为什么采集血液样本有时候在手臂,有时候在耳垂或手指?
晚上吃姜可以吗
吃姜的好处与坏处:科学解读生姜的食用效果
有效设置工作优先级是提升工作效率的关键
魔兽世界配置要求 玩魔兽世界需要什么配置的电脑