找回密码
 注册
关于网站域名变更的通知
查看: 552|回复: 2
打印 上一主题 下一主题

用51单片机验证RC522和射频卡是否通讯成功,但是最基本的功能也没实现,求教各位

[复制链接]
  • TA的每日心情
    开心
    2019-11-21 15:51
  • 签到天数: 1 天

    [LV.1]初来乍到

    跳转到指定楼层
    1#
    发表于 2019-11-8 10:16 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

    EDA365欢迎您登录!

    您需要 登录 才可以下载或查看,没有帐号?注册

    x
    最近在用51单片机做一个关于rc522的小项目,刚开始,想先实现最基本的功能,想着刷一下卡,单片机上某一个指示灯就亮,但是现在这个功能实现不了,请教大家能不能帮忙检查一下,看看连线或者程序有什么问题?       首先是程序
    # ?0 V) L" ]; X% @! ]8 O4 Z1 `: F, B' X* |$ N) v5 U2 o0 I) v! p! `
    #include "LPCREG.h"
    " v: d, a7 x, p  o#include "pindef.h": K: g5 w  _. f2 `8 C1 X8 m/ D4 J
    #include "mfrc522.h"
    " W$ L' W& O7 O. o* a#include <STDIO.H>
    8 O& A3 M4 H5 \% K/ t: v; \2 z#include <string.h>
    ' ]8 p: h+ Z4 K7 C; w7 [( Gunsigned char code DefaultKey[6] = {0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF};
    " g. V# i; G- j* n6 n7 @" N2 I3 cunsigned char g_ucTempbuf[20];         
    2 r2 e! M  N# |: |% `( Ovoid InitializeSystem()* E5 e  C& D9 i% {+ k
    {
    % a: J3 y4 ~* L. L. m3 u    P0M1 = 0x0; P0M2 = 0x0;
    8 M) i& Q, h- \3 m  ~$ R    P1M1 = 0x0;        P1M2 = 0x0;                     , H/ \7 |' V; d, e, p* _
        P3M1 = 0x0; P3M2 = 0xFF;# `& `2 q" k& H/ k8 M0 t6 q) ~
        P0 = 0xFF; P1 = 0xFF; P3 = 0xFF;
    " t& ~3 a6 b; P$ |3 P}1 s- r- S/ M& j3 h/ X6 F" g
      {8 ?! l) I! k# _

    % }5 s, ?+ O5 Y" Z/ Y8 bvoid main( )
    , U5 H/ e4 s8 g3 o/ w{   
    % }- Q/ X6 o. F* l     unsigned char status;0 Q- p& a4 G2 ?+ g# r
         InitializeSystem( );
    , y* J. H4 H; L- t# n  ~; ~9 B* I1 z     PcdReset();
    ' l$ a8 b2 H' q0 a2 X, W     PcdAntennaOff();
    $ Q1 ?; ~* _+ u( F$ M# d- _5 q     PcdAntennaOn();      3 I- ^6 r0 T6 Y7 F/ B4 e
         while ( 1 )% K* W1 b. `- }7 @: [' _. O% |
         {   0 e# e  X% ^. U) v4 n
             status = PcdRequest(PICC_REQALL, g_ucTempbuf);//寻卡
    * I2 i% q8 [$ J  F" j3 @  ^         IF (status == MI_OK)& Q/ x5 ?# ]6 T+ R
             {   " M8 R: E8 o6 e! {& I
                  LED = 0;         
    " c+ k+ L2 o/ G7 ?& d- G$ v         }  c  U% @: u! d- H
            else
    : R8 p+ z4 S) C              LED1=0;
    , U9 A+ @# {2 C$ C
    & ]! j, m. w% k: V% @
    : w( S* ]" E" u$ N+ J0 |: o; |
    0 S1 z5 o: Y, a  U6 r6 s9 I    }
    2 I2 @4 l" o5 o- \) S}6 I% ]5 |0 |9 }+ ~

    * [9 b6 W0 K/ A# C! l/ Y% m
    4 n7 W) g/ m" S7 p$ ]7 ^
    , W& H- g/ h. {( Y5 B6 {6 d//端口定义放在MFRC500头文件里
    $ n( j$ \/ Q& Z0 Gsbit     MF522_NSS  =P1^3 ;                        //RC500片选
    - j8 o. Q' B. j- f) O; csbit     MF522_SCK  = P1^4;
    * L0 K% H$ U2 v  I9 z; a8 isbit     MF522_SI   = P1^5;! _) S. p5 v9 [, Z
    sbit     MF522_SO   = P1^6;
    7 r" v+ H. y. A* P% J2 A& e; fsbit     MF522_RST  = P1^7;                  4 E% ?$ D: g1 q; J% `
    //指示灯4 S  ?. R  Z* K/ i. M3 a/ o
    sbit     LED  =    P1^0;) l% s  V  W: {" W( j- P
    sbit     LED1  =    P1^1;/ @/ [% I6 R' L3 u& N: B- @  ~( c" a/ U

    2 h9 A+ Y1 |1 u/ R6 b连线我都是按照这个定义连的' s0 {% Y! c; X1 ]  V- z/ T

    9 D$ F$ d+ {2 o0 W/ {, W: {不知道为什么连最简单的都实现不了,求教各位,拜托了' Q* K9 [+ T( O
  • TA的每日心情
    开心
    2020-1-21 15:16
  • 签到天数: 42 天

    [LV.5]常住居民I

    2#
    发表于 2019-11-8 13:40 | 只看该作者
    怀疑是你的spi接口程序有问题,验证方法使用示波器看一下spi总线上的数据,如果有数据,则确定是你程序有问题

    点评

    好的,谢谢,我看看  详情 回复 发表于 2019-11-8 17:23
  • TA的每日心情
    开心
    2019-11-21 15:51
  • 签到天数: 1 天

    [LV.1]初来乍到

    3#
     楼主| 发表于 2019-11-8 17:23 | 只看该作者
    zyl0504 发表于 2019-11-8 13:40
    ; l0 v- p) `& y/ g怀疑是你的spi接口程序有问题,验证方法使用示波器看一下spi总线上的数据,如果有数据,则确定是你程序有问 ...
    # Y7 ^5 d5 L0 Y0 z% c5 u3 h& e
    好的,谢谢,我看看2 j- E: X- H  [$ i9 i. K
    您需要登录后才可以回帖 登录 | 注册

    本版积分规则

    关闭

    推荐内容上一条 /1 下一条

    EDA365公众号

    关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

    GMT+8, 2025-6-24 20:23 , Processed in 0.078125 second(s), 30 queries , Gzip On.

    深圳市墨知创新科技有限公司

    地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

    快速回复 返回顶部 返回列表