byte kolchislo[]={0x00,0x00,0x00,0x00,0x00};
razmer=1;// может и 2 и 3 быть, от этого завесить дальнейший размер
char asciiHex[razmer+1];
for(int i = 0;i<razmer;i++){
asciiHex[i]=kolchislo[i];
}
asciiHex[razmer+1]='\0';
int decValue = strtol(asciiHex, NULL, 16);
decValue++;
char hexAscii[]={0x00,0x00,0x00,0x00};
sprintf(hexAscii, "%02X", decValue);
for (int i=0;i<sizeof(hexAscii);i++){
Serial.printf("%X\n", hexAscii[i]);
}
char asciiHex[sizeof(kolchislo)+1];
for(int i = 0;i<razmer;i++){
asciiHex[i]=kolchislo[i];
}
asciiHex[sizeof(kolchislo)]='\0';
for (int i=0;i<sizeof(asciiHex);i++){
Serial.printf("%X\n", asciiHex[i]); // 30
}
int decValue = strtol(asciiHex, NULL, 16);
byte kolchislo[]={0x00,0x00,0x00,0x00,0x00};
razmer=1;// может и 2 и 3 быть, от этого завесить дальнейший размер
char asciiHex[razmer];
for(int i = 0;i<razmer;i++){
asciiHex[i]=kolchislo[i];
}
int decValue = strtol(asciiHex, NULL, 16);
decValue++;
char hexAscii[]={0x00,0x00,0x00,0x00};
sprintf(hexAscii, "%02X", decValue);
for (int i=0;i<sizeof(hexAscii);i++){
Serial.printf("%X\n", hexAscii[i]);
}
byte s1[] = {0x02, 0x05, 0x10, 0x1E, 0x00, 0x00, 0x00, 0x0B}; // Короткий запрос
void setup() {
if (debug) Serial.begin(115200);
Serial2.begin(115200, SERIAL_8N1, RXD2, TXD2);
Serial2.write(s1, sizeof(s1)); // отправлю в чековый аппарат
}
void loop() {
if (Serial2.available())
{
//Serial.print("1");
Serial.print(k);
Serial.print(" ");
Buffer[iBuf] = Serial2.read();
}
}
Как сделать так, чтобы он не 25, а сразу 19 писал?