使用stm32驱动RC522读取IC卡

news/2024/11/17 23:27:08/

stm32驱动RC522

  • RC522与PN532简介
  • 关于STM32驱动方式
  • 接线说明
  • 程序烧录
  • 查看卡号
  • 总结

原文链接:https://www.yourcee.com/newsinfo/2924379.html

请添加图片描述

点击图片购买

RC522与PN532简介

在写这篇文章之前有写过一篇有关于PN532的文章,RC522与PN532在使用上都可以用来读写我们之前用的M1的IC卡,并且两款芯片有着同样都是应用于13.56MHz的 非接触式通信芯片等诸多共通之处,查阅网上资料对于两者的区别个人认为RC522属于RFID,而PN532属于NFC,在功能上PN532包含了RC522的所功能(个人愚见),并且对于大部分需要量产使用或者学生党来说另一个比较明显的差异就是价位上的区别,RC522市面上的模块仅需7人民币左右即可买到,而PN532需要23~26人民币,价格上的差距还是比较明显的哈哈,前面有过一篇串口连接电脑使用PN532的文章,有需要的可以参考以前的文章,本期介绍SPI驱动RC522读卡的使用文章!!!

关于STM32驱动方式

我们这里使用的是STM32F103ZET6的板子和RC522的模块连接的,采用的SPI的方式驱动,这里使用C8T6的板子也可以,STM32F103系列的即可,只是需要在程序上稍作修改(参考后文),这里SPI端口选择使用的是STM32的SPI1(为了能兼容更多的板子),下面是我使用的开发板供参考

请添加图片描述

下面这款市面上使用的比较多的C8T6板子也可以,价格便宜对于学生党就友好多了哈哈

请添加图片描述

点击图片购买

接线说明

接下之前先上一张RC522模块的引脚图,方便对比接线

在这里插入图片描述

STM32F103RC522
3V33.3V
PB0RST
GNDGND
不接IRQ
PA6MISO
PA7MOSI
PA5SCK
PA4SDA

下面是对于STM32使用端口以及RC522引脚的说明

STM32使用端口

引脚名称使用功能定义
PB0普通的GPIO口,用于复位RC522
PA6SPI1的MISO
PA7SPI1的MOSI
PA5SPI1的SCK
PA4普通的GPIO口,用于RC522的片选端口

RC522引脚说明

引脚名称功能
3.3V电源正
RST复位引脚,高电平有效
GND地,电源负
IRQ中断引脚,悬空不使用
MISOSPI协议数据线
MOSISPI协议数据线
SCKSPI时钟线
SDASPI片选端口

程序烧录

需要程序可在下方留言邮箱,程序烧录这里使用的ST-LINK,烧录程序前先在MDK里面配置成自己的STM32板子信息
ST-LINK配置
在这里插入图片描述

下面这里请确定SWDIO里面读取到了板子的信息,没有的话建议检查一下接线
在这里插入图片描述

下面的Device Size选择与自己用的板子对应大小的
在这里插入图片描述
另外,如果选择的不是STM32F103ZE的板子的话需要在MDK的魔术棒下面的device中选择自己的芯片,我这里是用的STM32F103ZE所以是选的这个,见下图
在这里插入图片描述

OK,配置好之后我们点击下载
在这里插入图片描述

查看卡号

按照上面的接完线烧完程序之后,看板子上的串口1有无板载USB下载电路,如果板子可以直接插数据线下载程序的话,直接用下载程序的USB口接到电脑上,在设备管理器查看端口号即可,我这块是带下载电路的,如果是板子没有带的话需要用USB-TT转换模块RX接PA9,TX接PA10来通信
设备管理器参考下图

在这里插入图片描述打开之后在端口中查看自己板子的端口号,我这里是COM4

在这里插入图片描述

接下来我们打开一个串口调试软件,将参数配置为115200,N,8,1,这个参数是在程序中定义的,可自行参考修改串口程序,参数设置好打开串口之后我们就可以接收到STM32板子向我们发送的读取的到卡号信息了

在这里插入图片描述

同样的卡刷RC522和PN532读到的卡号相同,验证之后程序读取数据均为正确数据!

总结

STM32驱动RC522读卡号经过例程移植之后开发起来相对来说还是比较快的,长期发布类似文章,欢迎关注,本期RC522调试就到这里了,欢迎随时留言,需要程序或者软件也可以在下方留言喔!


http://www.ppmy.cn/news/879125.html

相关文章

stm32学习笔记-1 STM32简介

1 STM32简介 文章目录 1 STM32简介1.1 套件简介1.2 STM32芯片内部的外设1.3 STM32芯片系统结构1.4 STM32芯片引脚定义1.5 STM32最小系统 注:笔记主要参考B站 江科大自化协 教学视频“STM32入门教程-2023持续更新中”。 注:工程及代码文件放在了本人的Git…

手把手学STM32(一)

手把手学STM32(一)构建工程 这篇文章详细的介绍编写第一个固件工程(F103ZET6版本的)。文档里的操作部分我使用了黄色背景色标出,如觉麻烦,可直接参考黄色部分。 资料下载链接:https://pan.baidu.com/s/1nmjR5SxauIyVW…

STM入门基础初识

序言 本文章是关于stm的一些简单的介绍,全部都是个人学习的一些经验总结,分享给想要自学stm32的朋友们用于入门。其中部分内容借鉴于《stm32中文参考手册》和《cortex-m3权威指南》,对于大神请不喜勿喷。 哈哈。 stm32是什么呢? 简单来说,stm32是一种32位的单片机,是采用…

STM学习之:基础概念

所有芯片的引脚顺序都是逆时针排序的; 开发板中把芯片的引脚引出来,连接到各种传感器上,然后在STM32上编程,(实际就是通过程序控制这些引脚输出高电平或者低电平)来控制各种传感器工作; stm32有…

STM32简介(系统结构、引脚定义……)

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言一、STM32简介二、STM32F103xxx1.STM32F1系列片上资源/外设2.命名规则3.系统结构4.引脚定义5.启动配置6.STM32最小系统电路 总结 前言 提示:这里可…

Kong 服务和路由的添加

管理服务 这里参考DB-less-Mode,因为使用的是yaml配置文件的形式,所以所有的相关配置只需要往初始化的kong.yml文件中添加就可以了,就像nginx的配置文件 DB-less-Mode 创建服务 vim /etc/kong/kong.yml services: - name: my-service #…

【从零开始学习CSS | 第三篇】选择器优先级

目录 前言: 常见选择器的优先级(从高到低) 选择器的权重: 总结: 前言: 在前几篇文章中我们介绍了大量的选择器,那么大量的选择器在使用的时候,一定是有一个优先级顺序的&#xff…

vue npm install报错如何处理

npm ERR! code ERESOLVE npm ERR! ERESOLVE could not resolve npm ERR! npm ERR! While resolving: eslint-plugin-vue5.2.3 npm ERR! Found: eslint6.8.0 npm ERR! node_modules/eslint npm ERR! peer eslint"> 1.6.0" from vue/cli-plugin-eslint4.4.4 这个错误…