第一范文网 - 专业文章范例文档资料分享平台

基于单片机的IC卡门禁系统的设计 - 图文

来源:用户分享 时间:2025/8/20 6:03:27 本文由loading 分享 下载这篇文档手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:xxxxxxx或QQ:xxxxxx 处理(尽可能给您提供完整文档),感谢您的支持与谅解。

金陵科技学院学士学位论文 附录

// // //输入: // // RC531目标寄存器地址和写入值 // // // //输出: // // N/A // //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// void SPIWrite(char reg_ad,char reg_data) {

sck=0; //时钟 reg_ad <<= 1;

cs=0; //接口选通

reg_ad &= 0x7F; //最高位为0表示写 spi_byte_transceive(reg_ad); //写地址 spi_byte_transceive(reg_data); //写数据 cs=1; return; }

//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// //名称: rc531_register_read // //功能: 该函数实现通过SPI接口读取RC531中一个寄存器的值 // // // //输入: // // RC531目标寄存器地址 // // // //输出: // // 目标寄存器的值 // //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// uchar SPIRead(char reg_ad) { char temp;

sck=0; //时钟

44

金陵科技学院学士学位论文 附录

_nop_(); _nop_();

cs=0; //接口选通开

reg_ad <<= 1; //reg_ad左移一位付值给reg_ad

reg_ad |= 0x80; //reg_ad跟“0X80”或运算后付值给reg_ad 最高位为1表示读

spi_byte_transceive(reg_ad); temp=spi_byte_transceive(0x00); cs=1; return (temp); }

/****************************************************************/ /*名称: Request */

/*功能: 该函数实现对放入FM1702操作范围之内的卡片的Request操作*/ /*输入: mode: ALL(监测所以FM1702操作范围之内的卡片) */ /* STD(监测在FM1702操作范围之内处于HALT状态的卡片) */ /*输出: FM1702_NOTAGERR: 无卡*/ /* FM1702_OK: 应答正确*/ /* FM1702_REQERR: 应答错误*/

/****************************************************************/ uchar Request(uchar mode) {

unsigned char temp;

RevBuffer[0] = mode;

SPIWrite(0x11,0x58);//关发射控制 SPIWrite(0x11,0x5b);//开发射控制

SPIWrite(0x0f,0x07); //address 0FH 调整位的帧格式 temp = SPIRead(0x09);

45

基于单片机的IC卡门禁系统的设计 - 图文.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.diyifanwen.net/c029ni1fzhy5kaxd90sf7_13.html(转载请注明文章来源)
热门推荐
Copyright © 2012-2023 第一范文网 版权所有 免责声明 | 联系我们
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:xxxxxx 邮箱:xxxxxx@qq.com
渝ICP备2023013149号
Top