Add bin folder. Tidy up main.cpp
This commit is contained in:
parent
1c89ad2ea0
commit
a82a2e2b19
|
@ -1,2 +1,2 @@
|
||||||
.vscode/
|
.vscode/
|
||||||
bin/
|
bin/*
|
||||||
|
|
|
@ -12,62 +12,48 @@ const int NRSTPD = 5;
|
||||||
uchar serNum[5];
|
uchar serNum[5];
|
||||||
uchar writeDate[16] ={'T', 'e', 'n', 'g', ' ', 'B', 'o', 0, 0, 0, 0, 0, 0, 0, 0,0};
|
uchar writeDate[16] ={'T', 'e', 'n', 'g', ' ', 'B', 'o', 0, 0, 0, 0, 0, 0, 0, 0,0};
|
||||||
|
|
||||||
uchar sectorKeyA[16][16] = {{0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF},
|
uchar sectorKeyA[16] = {0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF};
|
||||||
{0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF},
|
|
||||||
{0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF},
|
|
||||||
};
|
|
||||||
uchar sectorNewKeyA[16][16] = {{0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF},
|
|
||||||
{0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xff,0x07,0x80,0x69, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF},
|
|
||||||
{0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xff,0x07,0x80,0x69, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF},
|
|
||||||
};
|
|
||||||
|
|
||||||
int main() {
|
int main() {
|
||||||
usart::init(1000000);
|
usart::init(1000000);
|
||||||
printf("Hello");
|
printf("Hello");
|
||||||
MFRC522_Init();
|
PORTC |= (1<<PC6)|(1<<PC7);
|
||||||
while(1) {
|
while(1) {
|
||||||
|
MFRC522_Init();
|
||||||
uchar i;
|
uchar i;
|
||||||
uchar status;
|
uchar status;
|
||||||
uchar str[MAX_LEN];
|
uchar str[MAX_LEN];
|
||||||
uchar RC_size;
|
uchar RC_size;
|
||||||
uchar blockAddr; //Select the address of the operation 0~63
|
uchar blockAddr; //Select the address of the operation 0~63
|
||||||
|
|
||||||
|
|
||||||
// searching card, return card type
|
// searching card, return card type
|
||||||
status = MFRC522_Request(PICC_REQIDL, str);
|
while(MFRC522_Request(PICC_REQIDL, str) != MI_OK);
|
||||||
if (status == MI_OK)
|
|
||||||
{
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
status = MFRC522_Anticoll(str);
|
status = MFRC522_Anticoll(str);
|
||||||
memcpy(serNum, str, 5);
|
memcpy(serNum, str, 5);
|
||||||
if (status == MI_OK)
|
if (status == MI_OK)
|
||||||
{
|
{
|
||||||
printf("The card's number is : %x%x%x%x%x%x\n\r",
|
printf("The card's number is : %x%x%x%x%x%x\n\r",
|
||||||
serNum[0],
|
serNum[0],
|
||||||
serNum[1],
|
serNum[1],
|
||||||
serNum[2],
|
serNum[2],
|
||||||
serNum[3],
|
serNum[3],
|
||||||
serNum[4]);
|
serNum[4]);
|
||||||
}
|
}
|
||||||
|
|
||||||
// select card, return card capacity
|
// select card, return card capacity
|
||||||
RC_size = MFRC522_SelectTag(serNum);
|
RC_size = MFRC522_SelectTag(serNum);
|
||||||
if (RC_size != 0)
|
if (RC_size != 0)
|
||||||
{}
|
{}
|
||||||
|
|
||||||
|
if(PINC & (1<<PC6)) {
|
||||||
// write data card
|
// write data card
|
||||||
blockAddr = 7; // data block 7
|
blockAddr = 7; // data block 7
|
||||||
status = MFRC522_Auth(PICC_AUTHENT1A, blockAddr, sectorKeyA[blockAddr/4], serNum); // authentication
|
status = MFRC522_Auth(PICC_AUTHENT1A, blockAddr, sectorKeyA, serNum); // authentication
|
||||||
if (status == MI_OK)
|
if (status == MI_OK)
|
||||||
|
|
||||||
{
|
{
|
||||||
// write data
|
|
||||||
status = MFRC522_Write(blockAddr, sectorNewKeyA[blockAddr/4]);
|
|
||||||
printf("set the new card password, and can modify the data of the Sector: ");
|
|
||||||
printf("%i", blockAddr/4);
|
|
||||||
|
|
||||||
// write data
|
// write data
|
||||||
blockAddr = blockAddr - 3 ;
|
blockAddr = blockAddr - 3 ;
|
||||||
status = MFRC522_Write(blockAddr, writeDate);
|
status = MFRC522_Write(blockAddr, writeDate);
|
||||||
|
@ -76,29 +62,29 @@ int main() {
|
||||||
printf("OK!\n\r");
|
printf("OK!\n\r");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
} else {
|
||||||
// read card
|
// read card
|
||||||
blockAddr = 7; // data block 7
|
blockAddr = 7; // data block 7
|
||||||
status = MFRC522_Auth(PICC_AUTHENT1A, blockAddr,
|
status = MFRC522_Auth(PICC_AUTHENT1A, blockAddr, sectorKeyA, serNum); // authentication
|
||||||
|
|
||||||
sectorNewKeyA[blockAddr/4], serNum); // authentication
|
|
||||||
if (status == MI_OK)
|
if (status == MI_OK)
|
||||||
{
|
{
|
||||||
// read data
|
// read data
|
||||||
blockAddr = blockAddr - 3 ;
|
blockAddr = blockAddr - 3 ;
|
||||||
status = MFRC522_Read(blockAddr, str);
|
status = MFRC522_Read(blockAddr, str);
|
||||||
if (status == MI_OK)
|
if (status == MI_OK)
|
||||||
{
|
{
|
||||||
printf("Read from the card ,the data is : \n\r");
|
printf("Read from the card ,the data is : \n\r");
|
||||||
for (i=0; i<16; i++)
|
for (i=0; i<16; i++)
|
||||||
{
|
{
|
||||||
printf("%c", str[i]);
|
printf("%c", str[i]);
|
||||||
|
if(writeDate[i] != str[i]) printf("Not equal");
|
||||||
}
|
}
|
||||||
printf("\n\r");
|
printf("\n\r");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
printf("\n\r");
|
}
|
||||||
MFRC522_Halt(); // command card into sleeping mode
|
printf("\n\r");
|
||||||
|
MFRC522_Halt(); // command card into sleeping mode
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue