hex Izpis char arraya

Arduino je pojav za katerega bi težko rekli, da opisuje samo HW ali samo SW, zato mu tu namenajm poseben prostor.

Moderator: tilz0R

hex Izpis char arraya

OdgovorNapisal/-a RudiP » 10 Avg 2022, 19:18

Ne najdem ukaza za izpis vsebino stringa v HEX formatu zaradi primerjanja vsebine.
Ni lahko pomagate ?

Koda: Izberi vse
      for (int i = 0; i <= 10; i++) {
          Serial.print(str2[i]);
          delay(10);
      }


Hvala in Lp Rudi
RudiP
 
Prispevkov: 391
Pridružen: 18 Jan 2015, 20:48
Zahvalil se je: 208 krat
Prejel zahvalo: 69 krat
Uporabnika povabil: gumby
Število neizkoriščenih povabil: 72

Re: hex Izpis char arraya

OdgovorNapisal/-a sundancer » 10 Avg 2022, 21:23

Dyslexic man walks into a bra.
Uporabniški avatar
sundancer
 
Prispevkov: 816
Pridružen: 16 Jan 2015, 22:36
Kraj: Domžale
Zahvalil se je: 334 krat
Prejel zahvalo: 432 krat
Uporabnika povabil: Vrtni palček
Število neizkoriščenih povabil: 54

Re: hex Izpis char arraya

OdgovorNapisal/-a RudiP » 11 Avg 2022, 08:22

Našel sem vzrok in rešitev zakaj ni primerjalo dva stringa katera naj bi bila enaka :

char str2[30];
char str_vaga[10] = "Vaga";

v stringu str2 je "Vaga" + 13 + 10

Koda: Izberi vse
 if (strcmp(str2, str_vaga) == 0){
    // naredi nekaj
  }


primerjava ni bila uspešna zaradi CR + LF v str2
CR + LF zamenjam z 0

Koda: Izberi vse
for (int i = 0; i <= 10; i++) {
          int a = str2[i];
          if (a == 13){
            str2[i] = 0;
          }

for (int i = 0; i <= 10; i++) {
          int a = str2[i];
          if (a == 10){
            str2[i] = 0;
          }


primerjava obeh stringov je uspešna !

LpR
RudiP
 
Prispevkov: 391
Pridružen: 18 Jan 2015, 20:48
Zahvalil se je: 208 krat
Prejel zahvalo: 69 krat
Uporabnika povabil: gumby
Število neizkoriščenih povabil: 72

Re: hex Izpis char arraya

OdgovorNapisal/-a s54mtb » 11 Avg 2022, 08:47

Ali pizna arduino c++ regex?
https://www.regular-expressions.info/anchors.html

Pred primerjavo odstraniš vse, kar ni znak:
Koda: Izberi vse
"\s+"
Always going the extra mile.
https://www.buymeacoffee.com/s54mtb
Uporabniški avatar
s54mtb
 
Prispevkov: 14637
Pridružen: 15 Jan 2015, 00:10
Zahvalil se je: 2177 krat
Prejel zahvalo: 6068 krat
Uporabnika povabil: Vrtni palček
Število neizkoriščenih povabil: 255

Re: hex Izpis char arraya

OdgovorNapisal/-a booxco » 11 Avg 2022, 10:52

RudiP je napisal/-a:Našel sem vzrok in rešitev zakaj ni primerjalo dva stringa katera naj bi bila enaka :

Koda: Izberi vse
for (int i = 0; i <= 10; i++) {
          int a = str2[i];
          if (a == 13){
            str2[i] = 0;
          }

for (int i = 0; i <= 10; i++) {
          int a = str2[i];
          if (a == 10){
            str2[i] = 0;
          }


primerjava obeh stringov je uspešna !

LpR


Namesto tega poskusi:
Koda: Izberi vse
str2.trim()


https://www.arduino.cc/reference/en/lan ... ions/trim/
booxco
 
Prispevkov: 185
Pridružen: 25 Sep 2016, 21:17
Zahvalil se je: 32 krat
Prejel zahvalo: 81 krat
Uporabnika povabil: radix
Število neizkoriščenih povabil: 16

Re: hex Izpis char arraya

OdgovorNapisal/-a RudiP » 11 Avg 2022, 18:53

s54mtb je napisal/-a:Ali pizna arduino c++ regex?
https://www.regular-expressions.info/anchors.html

Pred primerjavo odstraniš vse, kar ni znak:
Koda: Izberi vse
"\s+"


To bi bilo super, da se odstrani vse kar ni znak !

Bom poskusil če to dela.

Hvala
RudiP
 
Prispevkov: 391
Pridružen: 18 Jan 2015, 20:48
Zahvalil se je: 208 krat
Prejel zahvalo: 69 krat
Uporabnika povabil: gumby
Število neizkoriščenih povabil: 72


Vrni se na Arduino

Kdo je na strani

Po forumu brska: 0 registriranih uporabnikov in 1 gost