最近又搞了一个51的小玩意,出入管理系(DS1990A,LCD1602,AT24C02,DS1302)




其实就是一个简单的门禁,不过这当中有用到DS1990A,DS1302,AT24C02,里面的时序部分还是有一定考究,有I2C,SPI。显示用的是LCD1602简单方便你懂得。

#include <reg51.h>

#include <intrins.h>
#include <lcd.h>
#include <ds1302.h>
#include"i2c.h"


#define uchar unsigned char
#define uint  unsigned int
#define right           1 //??
#define error           0 //??





// sbit ACC0=ACC^0;
// sbit ACC7=ACC^7;
sbit DQ=P1^0; //DS1990A?????
//sbit SDA=P2^1; //2402?????//???
//sbit SCL=P2^0; //2402?????//???
sbit DS1302_RST=P3^5; //DS1302?????//*
sbit DS1302_CLK=P3^6; //DS1302?????//*
sbit DS1302_IO=P3^4; //DS1302?????//*
//sbit din=P2^0; //MAX7221?????
//sbit load=P2^1; //MAX7221?????
//sbit clk=P2^2; //MAX7221?????
sbit Lock=P1^5; //????????


sbit add = P2^2; //Ìí¼Ó
sbit del = P2^3; //ɾ³ý


uchar code CrcTable[256]={
    0,94,188,226,97,63,221,131,194,156,126,32,163,253,31,65,
    157,195,33,127,252,162,64,30,95,1,227,189,62,96,130,220,
    35,125,159,193,66,28,254,160,225,191,93,3,128,222,60,98,
    190,224,2,92,223,129,99,61,124,34,192,158,29,67,161,255,
    70,24,250,164,39,121,155,197,132,218,56,102,229,187,89,7,
    219,133,103,57,186,228,6,88,25,71,165,251,120,38,196,154,
    101,59,217,135,4,90,184,230,167,249,27,69,198,152,122,36,
    248,166,68,26,153,199,37,123,58,100,134,216,91,5,231,185,
    140,210,48,110,237,179,81,15,78,16,242,172,47,113,147,205,
    17,79,173,243,112,46,204,146,211,141,111,49,178,236,14,80,
    175,241,19,77,206,144,114,44,109,51,209,143,12,82,176,238,
    50,108,142,208,83,13,239,177,240,174,76,18,145,207,45,115,
    202,148,118,40,171,245,23,73,8,86,180,234,105,55,213,139,
    87,9,235,181,54,104,138,212,149,203,41,119,244,170,72,22,
    233,183,85,11,136,214,52,106,43,117,151,201,74,20,246,168,
    116,42,200,150,21,75,169,247,182,232,10,84,215,137,107,53
}; //??????


uchar code ID[]={
    0x01, 0x03, 0xcf, 0xb0,
    0x01, 0x00, 0x00, 0x13}; //???????ID
uchar  ID1[]={
0x01,0x03,0x39,0xe4,
0x01,0x00,0x00,0xff}; //???????ID
uchar  ID2[]={0,0,0,0,0,0,0,0}; //???????ID




bit flag=0;
uchar CRCbyte,num=200,da_ad=0x00; //CRC???,2402????
uchar SN[8];//time
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值