在调试RC522,问题是有的,暂时不知道怎么检测这个芯片是否通讯成功,SPI通讯
已经解决。
小编说的RC522是那颗射频IC?
嗯是的,正在调试
这颗芯片硬件应该只需调天线参数吧?难道说调单片机控制它的程序?
嗯是的 程序。
好
请问小编,你的RC522通讯用的是单片机还是PC,我最近在做RC522和单片机通信,有些问题不太清楚,不知道能不能指点一下
单片机,请问你那边什么情况
小编RC522做的怎么样了,想请教点问题可以吗
小编现在方便吗,请教些问题可以吗
最近在用51单片机做一个关于RC522的小项目,刚开始,想先实现最基本的功能,想着刷一下卡,单片机上某一个指示灯就亮,但是现在这个功能实现不了,能不能帮忙检查一下,看看连线或者程序有什么问题?
嗯你是用什么通讯的,我这边用IO口模拟SPI
我也是,用的板子上的I/O口
这是我的程序和连线:想先实现最基本的功能,想着刷一下卡,单片机上某一个指示灯就亮,但是现在这个功能实现不了,能不能帮忙检查一下,看看连线或者程序有什么问题? 首先是程序
#include "LPCREG.h"
#include "pindef.h"
#include "mfrc522.h"
#include <STDIO.H>
#include <string.h>
unsigned char code DefaultKey[6] = {0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF};
unsigned char g_ucTempbuf[20];
void InitializeSystem()
{
P0M1 = 0x0; P0M2 = 0x0;
P1M1 = 0x0; P1M2 = 0x0;
P3M1 = 0x0; P3M2 = 0xFF;
P0 = 0xFF; P1 = 0xFF; P3 = 0xFF;
}
void main( )
{
unsigned char status;
InitializeSystem( );
PcdReset();
PcdAntennaOff();
PcdAntennaOn();
while ( 1 )
{
status = PcdRequest(PICC_REQALL, g_ucTempbuf);//寻卡
if (status == MI_OK)
{
LED = 0;
}
else
LED1=0;
}
}
//端口定义放在MFRC500头文件里
sbit MF522_NSS =P1^3 ; //RC500片选
sbit MF522_SCK = P1^4;
sbit MF522_SI = P1^5;
sbit MF522_SO = P1^6;
sbit MF522_RST = P1^7;
//指示灯
sbit LED = P1^0;
sbit LED1 = P1^1;
连线我都是按照这个定义连的
不知道为什么连最简单的都实现不了,拜托帮忙看看
连线的话,你自己看看吧,东西不在手边。
1、这个模块供电你是3.3v供电的吧?
2、 PcdAntennaOff();
PcdAntennaOn();这两句之间需要延时下,不知道你函数里有没有做
3、SPI程序没问题吧?
3.3v这个没问题,我自己焊的转压电路,能不能咱们私聊一下,为这个事实在头疼,老师催的挺紧的,拜托帮我看看可以吗
我的QQ790447219,能不能我把程序完整的发过去,还有接线图也发给你,你帮我看看,可以吗
嗯 可以的 发我邮箱好了 我也不大用qq现在。mhp0114@126.com
大哥拜托了,实在是走投无路所以才厚着脸皮麻烦你,老师交代了任务就让自己完成,可是以前没做过硬件项目,周围师兄也都是做软件的,不懂这些,所以才上论坛看看,真的拜托了