|
串口一个计数输出。串口一个计数输入
现在输出没问题。。串口输入不到arduino里边led没有变化
int incomingByte = 0;
int ledpin = 8; //定义数字接口13
int j=0;//初使化加数变量
int addKey =4;//定义按键为第4引脚
int buttonState = 0; //初使化按键暂存值,为了和addKey类型保持一致用int;
unsigned char showNumber[100][8] ={
{0xA5,0x5A,0x05,0x82,0x00,0x10,0x00,0x01},
{0xA5,0x5A,0x05,0x82,0x00,0x10,0x00,0x02},
{0xA5,0x5A,0x05,0x82,0x00,0x10,0x00,0x03},
{0xA5,0x5A,0x05,0x82,0x00,0x10,0x00,0x04},
{0xA5,0x5A,0x05,0x82,0x00,0x10,0x00,0x05},
{0xA5,0x5A,0x05,0x82,0x00,0x10,0x00,0x06},
{0xA5,0x5A,0x05,0x82,0x00,0x10,0x00,0x07},
{0xA5,0x5A,0x05,0x82,0x00,0x10,0x00,0x08},
{0xA5,0x5A,0x05,0x82,0x00,0x10,0x00,0x09},
{0xA5,0x5A,0x05,0x82,0x00,0x10,0x00,0x0A},
{0xA5,0x5A,0x05,0x82,0x00,0x10,0x00,0x0B},
{0xA5,0x5A,0x05,0x82,0x00,0x10,0x00,0x0D},
{0xA5,0x5A,0x05,0x82,0x00,0x10,0x00,0x0E},
{0xA5,0x5A,0x05,0x82,0x00,0x10,0x00,0x0F},
{0xA5,0x5A,0x05,0x82,0x00,0x10,0x00,0x10},
{0xA5,0x5A,0x05,0x82,0x00,0x10,0x00,0x11},
{0xA5,0x5A,0x05,0x82,0x00,0x10,0x00,0x12},
{0xA5,0x5A,0x05,0x82,0x00,0x10,0x00,0x13},
{0xA5,0x5A,0x05,0x82,0x00,0x10,0x00,0x14},
{0xA5,0x5A,0x05,0x82,0x00,0x10,0x00,0x15},
{0xA5,0x5A,0x05,0x82,0x00,0x10,0x00,0x16},
{0xA5,0x5A,0x05,0x82,0x00,0x10,0x00,0x17},
{0xA5,0x5A,0x05,0x82,0x00,0x10,0x00,0x18},
{0xA5,0x5A,0x05,0x82,0x00,0x10,0x00,0x19},
{0xA5,0x5A,0x05,0x82,0x00,0x10,0x00,0x1A},
{0xA5,0x5A,0x05,0x82,0x00,0x10,0x00,0x1B},
{0xA5,0x5A,0x05,0x82,0x00,0x10,0x00,0x1D},
{0xA5,0x5A,0x05,0x82,0x00,0x10,0x00,0x1E},
{0xA5,0x5A,0x05,0x82,0x00,0x10,0x00,0x1F},
{0xA5,0x5A,0x05,0x82,0x00,0x10,0x00,0x20},
{0xA5,0x5A,0x05,0x82,0x00,0x10,0x00,0x21},
{0xA5,0x5A,0x05,0x82,0x00,0x10,0x00,0x22},
{0xA5,0x5A,0x05,0x82,0x00,0x10,0x00,0x23},
{0xA5,0x5A,0x05,0x82,0x00,0x10,0x00,0x24},
{0xA5,0x5A,0x05,0x82,0x00,0x10,0x00,0x25},
{0xA5,0x5A,0x05,0x82,0x00,0x10,0x00,0x26},
{0xA5,0x5A,0x05,0x82,0x00,0x10,0x00,0x27},
{0xA5,0x5A,0x05,0x82,0x00,0x10,0x00,0x28},
{0xA5,0x5A,0x05,0x82,0x00,0x10,0x00,0x29},
{0xA5,0x5A,0x05,0x82,0x00,0x10,0x00,0x2A},
{0xA5,0x5A,0x05,0x82,0x00,0x10,0x00,0x2B},
{0xA5,0x5A,0x05,0x82,0x00,0x10,0x00,0x2D},
{0xA5,0x5A,0x05,0x82,0x00,0x10,0x00,0x2E},
{0xA5,0x5A,0x05,0x82,0x00,0x10,0x00,0x2F},
{0xA5,0x5A,0x05,0x82,0x00,0x10,0x00,0x30},
{0xA5,0x5A,0x05,0x82,0x00,0x10,0x00,0x31},
{0xA5,0x5A,0x05,0x82,0x00,0x10,0x00,0x32},
{0xA5,0x5A,0x05,0x82,0x00,0x10,0x00,0x33},
{0xA5,0x5A,0x05,0x82,0x00,0x10,0x00,0x34},
{0xA5,0x5A,0x05,0x82,0x00,0x10,0x00,0x35},
{0xA5,0x5A,0x05,0x82,0x00,0x10,0x00,0x36},
{0xA5,0x5A,0x05,0x82,0x00,0x10,0x00,0x37},
{0xA5,0x5A,0x05,0x82,0x00,0x10,0x00,0x38},
{0xA5,0x5A,0x05,0x82,0x00,0x10,0x00,0x39},
{0xA5,0x5A,0x05,0x82,0x00,0x10,0x00,0x3A},
{0xA5,0x5A,0x05,0x82,0x00,0x10,0x00,0x3B},
{0xA5,0x5A,0x05,0x82,0x00,0x10,0x00,0x3D},
{0xA5,0x5A,0x05,0x82,0x00,0x10,0x00,0x3F},
{0xA5,0x5A,0x05,0x82,0x00,0x10,0x00,0x40},
{0xA5,0x5A,0x05,0x82,0x00,0x10,0x00,0x41},
{0xA5,0x5A,0x05,0x82,0x00,0x10,0x00,0x42},
{0xA5,0x5A,0x05,0x82,0x00,0x10,0x00,0x43},
{0xA5,0x5A,0x05,0x82,0x00,0x10,0x00,0x44},
{0xA5,0x5A,0x05,0x82,0x00,0x10,0x00,0x45},
{0xA5,0x5A,0x05,0x82,0x00,0x10,0x00,0x46},
{0xA5,0x5A,0x05,0x82,0x00,0x10,0x00,0x47},
{0xA5,0x5A,0x05,0x82,0x00,0x10,0x00,0x48},
{0xA5,0x5A,0x05,0x82,0x00,0x10,0x00,0x49},
{0xA5,0x5A,0x05,0x82,0x00,0x10,0x00,0x4A},
{0xA5,0x5A,0x05,0x82,0x00,0x10,0x00,0x4B},
{0xA5,0x5A,0x05,0x82,0x00,0x10,0x00,0x4D},
{0xA5,0x5A,0x05,0x82,0x00,0x10,0x00,0x4E},
{0xA5,0x5A,0x05,0x82,0x00,0x10,0x00,0x4F},
{0xA5,0x5A,0x05,0x82,0x00,0x10,0x00,0x50},
{0xA5,0x5A,0x05,0x82,0x00,0x10,0x00,0x51},
{0xA5,0x5A,0x05,0x82,0x00,0x10,0x00,0x52},
{0xA5,0x5A,0x05,0x82,0x00,0x10,0x00,0x53},
{0xA5,0x5A,0x05,0x82,0x00,0x10,0x00,0x54},
{0xA5,0x5A,0x05,0x82,0x00,0x10,0x00,0x55},
{0xA5,0x5A,0x05,0x82,0x00,0x10,0x00,0x56},
{0xA5,0x5A,0x05,0x82,0x00,0x10,0x00,0x57},
{0xA5,0x5A,0x05,0x82,0x00,0x10,0x00,0x58},
{0xA5,0x5A,0x05,0x82,0x00,0x10,0x00,0x59},
{0xA5,0x5A,0x05,0x82,0x00,0x10,0x00,0x5A},
{0xA5,0x5A,0x05,0x82,0x00,0x10,0x00,0x5B},
{0xA5,0x5A,0x05,0x82,0x00,0x10,0x00,0x5D},
{0xA5,0x5A,0x05,0x82,0x00,0x10,0x00,0x5E},
{0xA5,0x5A,0x05,0x82,0x00,0x10,0x00,0x5F},
{0xA5,0x5A,0x05,0x82,0x00,0x10,0x00,0x60},
{0xA5,0x5A,0x05,0x82,0x00,0x10,0x00,0x61},
{0xA5,0x5A,0x05,0x82,0x00,0x10,0x00,0x62},
{0xA5,0x5A,0x05,0x82,0x00,0x10,0x00,0x63},
{0xA5,0x5A,0x05,0x82,0x00,0x10,0x00,0x64}};
//{0xA5,0x5A,0x05,0x82,0x00,0x10,0x00,0x65},
unsigned char HEXHEX0[9] = {0xA5, 0x5A, 0x06, 0x83, 0x00,0x00, 0x01,0x00, 0x00};
unsigned char HEXHEX1[9] = {0xA5, 0x5A, 0x06, 0x83, 0x00,0x00, 0x01,0x00, 0x01};
unsigned char HEXHEX2[9] = {0xA5, 0x5A, 0x06, 0x83, 0x00,0x00, 0x01,0x00, 0x02};
unsigned char HEXHEX3[9] = {0xA5, 0x5A, 0x06, 0x83, 0x00,0x00, 0x01,0x00, 0x03};
unsigned char HEXHEX4[9] = {0xA5, 0x5A, 0x06, 0x83, 0x00,0x00, 0x01,0x00, 0x04};
unsigned char HEXHEX5[9] = {0xA5, 0x5A, 0x06, 0x83, 0x00,0x00, 0x01,0x00, 0x05};
unsigned char HEXHEX6[9] = {0xA5, 0x5A, 0x06, 0x83, 0x00,0x00, 0x01,0x00, 0x06};
unsigned char HEXHEX7[9] = {0xA5, 0x5A, 0x06, 0x83, 0x00,0x00, 0x01,0x00, 0x07};
unsigned char HEXHEX8[9] = {0xA5, 0x5A, 0x06, 0x83, 0x00,0x00, 0x01,0x00, 0x08};
unsigned char HEXHEX9[9] = {0xA5, 0x5A, 0x06, 0x83, 0x00,0x00, 0x01,0x00, 0x09};
unsigned char HEXHEX10[9] = {0xA5, 0x5A, 0x06, 0x83, 0x00,0x00, 0x01,0x00, 0x0A};
int x = 0;
int CheckSum0 = 0;
int CheckSum1 = 0;
int CheckSum2 = 0;
int CheckSum3 = 0;
int CheckSum4 = 0;
int CheckSum5 = 0;
int CheckSum6 = 0;
int CheckSum7 = 0;
int CheckSum8 = 0;
int CheckSum9 = 0;
int CheckSum10 = 0;
void setup()
{
Serial.begin(9600);
pinMode(ledpin, OUTPUT);
// Serial.flush();//初使化串口
pinMode(addKey,INPUT);//初使化物理按键输入
}
void loop()
{
if (Serial.available() > 0)
{
incomingByte = Serial.read();
Serial.print(incomingByte, HEX);
if (HEXHEX0[x] == incomingByte){CheckSum0++;}
if (HEXHEX1[x] == incomingByte){CheckSum1++;}
if (HEXHEX2[x] == incomingByte){CheckSum2++;}
if (HEXHEX3[x] == incomingByte){CheckSum3++;}
if (HEXHEX4[x] == incomingByte){CheckSum4++;}
if (HEXHEX5[x] == incomingByte){CheckSum5++;}
if (HEXHEX6[x] == incomingByte){CheckSum6++;}
if (HEXHEX7[x] == incomingByte){CheckSum7++;}
if (HEXHEX8[x] == incomingByte){CheckSum8++;}
if (HEXHEX9[x] == incomingByte){CheckSum9++;}
if (HEXHEX10[x] == incomingByte){CheckSum10++;}
x++;
if (x == 9) {
if (CheckSum0 == 9) {
digitalWrite(ledpin, HIGH); //点亮数字13 口LED。
delay(500);
}
if (CheckSum1 == 9) {
digitalWrite(ledpin, LOW); //熄灭数字13 口LED
delay(500);
}
if (CheckSum2 == 9) {
digitalWrite(ledpin, HIGH); //点亮数字13 口LED。
delay(500);
}
if (CheckSum3 == 9) {
digitalWrite(ledpin, LOW); //熄灭数字13 口LED
delay(500);
}
if (CheckSum4 == 9) {
digitalWrite(ledpin, HIGH); //点亮数字13 口LED。
delay(500);
}
if (CheckSum5 == 9) {
digitalWrite(ledpin, LOW); //熄灭数字13 口LED
delay(500);
}
if (CheckSum6 == 9) {
digitalWrite(ledpin, HIGH); //点亮数字13 口LED。
delay(500);
}
if (CheckSum7 == 9) {
digitalWrite(ledpin, LOW); //熄灭数字13 口LED
delay(500);
}
if (CheckSum8 == 9) {
digitalWrite(ledpin, HIGH); //点亮数字13 口LED。
delay(500);
}
if (CheckSum9 == 9) {
digitalWrite(ledpin, LOW); //熄灭数字13 口LED
delay(500);
}
if (CheckSum10 == 9) {
digitalWrite(ledpin, HIGH); //点亮数字13 口LED。
delay(500);
}
x = 0;
CheckSum0 = 0;
CheckSum1 = 0;
CheckSum2 = 0;
CheckSum3 = 0;
CheckSum4 = 0;
CheckSum5 = 0;
CheckSum6 = 0;
CheckSum7 = 0;
CheckSum8 = 0;
CheckSum9 = 0;
CheckSum10 = 0;
}
}
buttonState = digitalRead(addKey);//将第4脚的电平赋予按键变量
if (buttonState == LOW)
{
delay(10);
if (buttonState == LOW)//机械式延时去抖
j++;//按键后变量加1;
while(!digitalRead(addKey));//等待松开按键结束,按键弹起算一次有效值
}
switch(j)
{
case 1:
Serial.write(&showNumber[0][0],8);
break;
case 2:
Serial.write(&showNumber[1][0],8);
break;
case 3:
Serial.write(&showNumber[2][0],8);
break;
case 4:
Serial.write(&showNumber[3][0],8);
break;
case 5:
Serial.write(&showNumber[4][0],8);
break;
case 6:
Serial.write(&showNumber[5][0],8);
break;
case 7:
Serial.write(&showNumber[6][0],8);
break;
case 8:
Serial.write(&showNumber[7][0],8);
break;
case 9:
Serial.write(&showNumber[8][0],8);
break;
case 10:
Serial.write(&showNumber[9][0],8);
break;
case 11:
Serial.write(&showNumber[10][0],8);
break;
case 12:
Serial.write(&showNumber[11][0],8);
break;
case 13:
Serial.write(&showNumber[12][0],8);
break;
case 14:
Serial.write(&showNumber[13][0],8);
break;
case 15:
Serial.write(&showNumber[14][0],8);
break;
case 16:
Serial.write(&showNumber[15][0],8);
break;
case 17:
Serial.write(&showNumber[16][0],8);
break;
case 18:
Serial.write(&showNumber[17][0],8);
break;
case 19:
Serial.write(&showNumber[18][0],8);
break;
case 20:
Serial.write(&showNumber[19][0],8);
break;
case 21:
Serial.write(&showNumber[20][0],8);
break;
case 22:
Serial.write(&showNumber[21][0],8);
break;
case 23:
Serial.write(&showNumber[22][0],8);
break;
case 24:
Serial.write(&showNumber[23][0],8);
break;
case 25:
Serial.write(&showNumber[24][0],8);
break;
case 26:
Serial.write(&showNumber[25][0],8);
break;
case 27:
Serial.write(&showNumber[26][0],8);
break;
case 28:
Serial.write(&showNumber[27][0],8);
break;
case 29:
Serial.write(&showNumber[28][0],8);
break;
case 30:
Serial.write(&showNumber[29][0],8);
break;
case 31:
Serial.write(&showNumber[30][0],8);
break;
case 32:
Serial.write(&showNumber[31][0],8);
break;
case 33:
Serial.write(&showNumber[32][0],8);
break;
case 34:
Serial.write(&showNumber[33][0],8);
break;
case 35:
Serial.write(&showNumber[34][0],8);
break;
case 36:
Serial.write(&showNumber[35][0],8);
break;
case 37:
Serial.write(&showNumber[36][0],8);
break;
case 38:
Serial.write(&showNumber[37][0],8);
break;
case 39:
Serial.write(&showNumber[38][0],8);
break;
case 40:
Serial.write(&showNumber[39][0],8);
break;
case 41:
Serial.write(&showNumber[40][0],8);
break;
case 42:
Serial.write(&showNumber[41][0],8);
break;
case 43:
Serial.write(&showNumber[42][0],8);
break;
case 44:
Serial.write(&showNumber[43][0],8);
break;
case 45:
Serial.write(&showNumber[44][0],8);
break;
case 46:
Serial.write(&showNumber[45][0],8);
break;
case 47:
Serial.write(&showNumber[46][0],8);
break;
case 48:
Serial.write(&showNumber[47][0],8);
break;
case 49:
Serial.write(&showNumber[48][0],8);
break;
case 50:
Serial.write(&showNumber[49][0],8);
break;
case 51:
Serial.write(&showNumber[50][0],8);
break;
case 52:
Serial.write(&showNumber[51][0],8);
break;
case 53:
Serial.write(&showNumber[52][0],8);
break;
case 54:
Serial.write(&showNumber[53][0],8);
break;
case 55:
Serial.write(&showNumber[54][0],8);
break;
case 56:
Serial.write(&showNumber[55][0],8);
break;
case 57:
Serial.write(&showNumber[56][0],8);
break;
case 58:
Serial.write(&showNumber[57][0],8);
break;
case 59:
Serial.write(&showNumber[58][0],8);
break;
case 60:
Serial.write(&showNumber[59][0],8);
break;
case 61:
Serial.write(&showNumber[60][0],8);
break;
case 62:
Serial.write(&showNumber[61][0],8);
break;
case 63:
Serial.write(&showNumber[62][0],8);
break;
case 64:
Serial.write(&showNumber[63][0],8);
break;
case 65:
Serial.write(&showNumber[64][0],8);
break;
case 66:
Serial.write(&showNumber[65][0],8);
break;
case 67:
Serial.write(&showNumber[66][0],8);
break;
case 68:
Serial.write(&showNumber[67][0],8);
break;
case 69:
Serial.write(&showNumber[68][0],8);
break;
case 70:
Serial.write(&showNumber[69][0],8);
break;
case 71:
Serial.write(&showNumber[70][0],8);
break;
case 72:
Serial.write(&showNumber[71][0],8);
break;
case 73:
Serial.write(&showNumber[72][0],8);
break;
case 74:
Serial.write(&showNumber[73][0],8);
break;
case 75:
Serial.write(&showNumber[74][0],8);
break;
case 76:
Serial.write(&showNumber[75][0],8);
break;
case 77:
Serial.write(&showNumber[76][0],8);
break;
case 78:
Serial.write(&showNumber[77][0],8);
break;
case 79:
Serial.write(&showNumber[78][0],8);
break;
case 80:
Serial.write(&showNumber[79][0],8);
case 81:
break;
Serial.write(&showNumber[80][0],8);
break;
case 82:
Serial.write(&showNumber[81][0],8);
break;
case 83:
Serial.write(&showNumber[82][0],8);
break;
case 84:
Serial.write(&showNumber[83][0],8);
break;
case 85:
Serial.write(&showNumber[84][0],8);
break;
case 86:
Serial.write(&showNumber[85][0],8);
break;
case 87:
Serial.write(&showNumber[86][0],8);
break;
case 88:
Serial.write(&showNumber[87][0],8);
break;
case 89:
Serial.write(&showNumber[88][0],8);
break;
case 90:
Serial.write(&showNumber[89][0],8);
case 91:
break;
Serial.write(&showNumber[90][0],8);
break;
case 92:
Serial.write(&showNumber[91][0],8);
break;
case 93:
Serial.write(&showNumber[92][0],8);
break;
case 94:
Serial.write(&showNumber[93][0],8);
break;
case 95:
Serial.write(&showNumber[94][0],8);
break;
case 96:
Serial.write(&showNumber[95][0],8);
break;
case 97:
Serial.write(&showNumber[96][0],8);
break;
case 98:
Serial.write(&showNumber[97][0],8);
break;
case 99:
Serial.write(&showNumber[98][0],8);
break;
case 100:
Serial.write(&showNumber[99][0],8);
j=0;
break;
default:
break;
}
} |
|