📄 main.c
字号:
/***********************************************************
* Company : 3ALOGICS *
* Writer : Suk-Byoung Chea *
* Version : 0.1 *
* 2005. 04. 21 *
* *
* *
* *
************************************************************/
#define _SET_GLOBAL_
#include "common.h"
#include "base.h"
#include <stdio.h>
#include <stdlib.h>
void TRH031M_Init(void)
{
Write(0x3f,0xff);
Line1_Display();
//String_Out("AnyREAD !! ");
Line2_Display();
//String_Out("TRH031M !!");
//Delay_ms(1000);
Lcd_Clear();
return;
}
void main(void)
{
//interrupt_init();
Lcd_Initial();
serial_init();
TRH031M_Init(); // Interface set : Dummy Read
Reset_TRH031M();
AREG_Set();
RFOFF();
RFON();
Delay(20);
Instruction_Out(0x01); //LCD CLEAR
Delay_ms(100);
Instruction_Out(0x80); // Position : 1st Line
String_Out(" WELCOME !! ");
Instruction_Out(0xC0); // Position : 2nd Line
String_Out(" ANYREAD KIT !! ");
Write(0x26, 0x02);
Write(0x1C, 0x18);
Write(0x1F, 0x85); // AThresh high/ Athersh low
AutoMode = 0xAF;
SEL = 0x00;
while(1)
{
if(RI==1) FunctionRun();
else if (AutoMode == 0xAA) {
AutoRun_A();
}
else if (AutoMode == 0xAB) {
AutoRun_B();
}
else if (AutoMode == 0xAD) {
AutoRun_15693();
}
else if (AutoMode == 0xAF) {
AutoRun_ALL();
}
//else if (SEL == 0x00 && RxFlag == FALSE && INT0_EX == 0x01) exec_ex0();
}
}
void FunctionRun(void)
{
if(SEL == 0x00)
{
DASEL[0] = SBUF;
RI = 0;
if (DASEL[0] == 0xC0)
{
SEL = 0x01;
}
else if (DASEL[0] == 0xC1)
{
SEL = 0x01;
}
else {
switch(DASEL[0])
{
case 0xA0 : AREG_Set();
break;
case 0xA1 : Exec_REQA();
break;
case 0xA2 : Exec_RDID();
break;
case 0xA3 : Exec_REQA_RDID();
break;
case 0xAA : AutoMode = 0xAA; // A AutoRun Mode
break;
case 0xAB : AutoMode = 0xAB; // B AutoRun Mode
break;
case 0xAD : AutoMode = 0xAD; // 15693 AutoRun Mode
break;
case 0xAF : AutoMode = 0xAF; // ALL AutoRun Mode
break;
case 0xAC : AutoMode = 0x00; // AutoRun Mode Clear.
break;
case 0xB0 : BREG_Set();
break;
case 0xB1 : Exec_REQB();
break;
case 0xD0 : REG15693_Set();
break;
case 0xE0 : TagIt_Set();
break;
case 0xD1 : Exec_15693();
break;
case 0xE1 : Exec_TagIt();
break;
case 0xF0 : FIFO_Read();
break;
default: break;
}
}
}
else if(SEL == 0x01)
{
DASEL[1] = SBUF;
RI = 0;
if (DASEL[0] == 0xC0)
{
printf("Regiter Read[%02X] = %02X\n ", (int)DASEL[1], (int)Read(DASEL[1]));
SEL = 0x00;
}
else { SEL = 0x02; }
}
else if ( SEL == 0x02 )
{
DASEL[2] = SBUF;
RI = 0;
Write( DASEL[1], DASEL[2] );
printf("Register Write : [%02X] <= %02X\n ", (int)DASEL[1], (int)DASEL[2]);
SEL = 0x00;
}
}
void AutoRun_A(void)
{
AREG_Set();
Exec_REQA_RDID_Auto();
}
void AutoRun_B(void)
{
BREG_Set();
Exec_REQB_Auto();
}
void AutoRun_15693(void)
{
REG15693_Set();
Exec_15693_Auto();
}
void AutoRun_ALL(void)
{
AREG_Set();
Exec_REQA_RDID_Auto();
BREG_Set();
Exec_REQB_Auto();
REG15693_Set();
Exec_15693_Auto();
TagIt_Set();
Exec_TagIt();
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -