找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 2429|回复: 1
收起左侧

RCC522显示卡号

[复制链接]
ID:183120 发表于 2018-4-24 09:36 | 显示全部楼层 |阅读模式
最近搞了下RFID签到系统,在LCD12864上显示时间和签到情况,前几天无论如何都不能显示卡号,昨天看到一个论坛,试试了,果然行了,分享给大家,不喜勿喷!


//卡号转换
void id_conv(unsigned char *p)
{
       
        if(p[0]%16 >9 )
                dis_buf[0] = p[0]%16 + 0x37;
        else
                dis_buf[0] = p[0]%16 + 0x30;
        if(p[0]/16 >9 )
                dis_buf[1] = p[0]/16 + 0x37;
        else
                dis_buf[1] = p[0]/16 + 0x30;


        if(p[1]%16 >9 )
                dis_buf[2] = p[1]%16 + 0x37;
        else
                dis_buf[2] = p[1]%16 + 0x30;
        if(p[1]/16 >9 )
                dis_buf[3] = p[1]/16 + 0x37;
        else
                dis_buf[3] = p[1]/16 + 0x30;

        if(p[2]%16 >9 )
                dis_buf[4] = p[2]%16 + 0x37;
        else
                dis_buf[4] = p[2]%16 + 0x30;
        if(p[2]/16 >9 )
                dis_buf[5] = p[2]/16 + 0x37;
        else
                dis_buf[5] = p[2]/16 + 0x30;

        if(p[3]%16 >9 )
                dis_buf[6] = p[3]%16 + 0x37;
        else
                dis_buf[6] = p[3]%16 + 0x30;
        if(p[3]/16 >9 )
                dis_buf[7] = p[3]/16 + 0x37;
        else
                dis_buf[7] = p[3]/16 + 0x30;
}


//显示卡号
void Display_id(void)
{
        unsigned i;


        LCD12864_SetWindow(3, 0);
        for(i=0;i<8;i++)
        {
                LCD12864_WriteData(dis_buf[i]);
        }
}


下面是main函数里面的一小部分
                        for(i=0;i<4;i++)
                        {
                                temp=g_ucTempbuf[i];
                                buf[i] = temp;               
                        }
                       
                        id_conv(buf);
                        Display_id();

回复

使用道具 举报

ID:584967 发表于 2019-7-29 18:27 | 显示全部楼层
楼主有没有完整的代码,想学习一下,刚开始搞RCC522
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

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