Zapojení STM32F0DISCOVERY pro detekci HDO

Diskuze a poradna o programátorech a programování různých obvodů

Moderátor: Moderátoři

Zpráva
Autor
Uživatelský avatar
markoni
Příspěvky: 2310
Registrován: 30 říj 2006, 01:00
Bydliště: Poblíž Zlína
Kontaktovat uživatele:

#31 Příspěvek od markoni »

Chybová hláška Console :| díky
Přílohy
Console.jpg

Uživatelský avatar
Mahoney
Příspěvky: 347
Registrován: 26 říj 2019, 02:00

#32 Příspěvek od Mahoney »

Tohle není úplně to, co jsem měl na mysli (a tohle už jsme si přečíst mohli). Nevím jak si to pořešilo interně to studio, ale musí být někde k dočtení, co se za tou hláškou skrývá. Není to někde v nějakém logu nebo tak? Přeci při kompilaci bere řádky toho skriptu, volá podle nich, a vypisuje co právě dělá… je potřeba dočíst se TAM, kde skončil a co mu vadí. Možná by poradil někdo, kdo ty ARMy od STM dělá a to studio zná (já se jen chystal, ale zatím na to nedošlo)…?

Ještě máš druhou možnost, někam si nainstalovat Linux, třeba na druhé PC (a nebo, jestli máš dost RAM, si spustit nějakou vhodnou live distribuci) a jednak si do ní dát to studio přímo, ale hlavně by sis tam taky mohl dát i ty nástroje, co už tu byly zmíněny (pro ARM) a udělat to přímo tam… Možná by to bylo rychlejší než to lámat někam jinam.

Uživatelský avatar
ondraN
Příspěvky: 209
Registrován: 16 srp 2022, 02:00
Bydliště: Roztoky

#33 Příspěvek od ondraN »

Soubory makefile v CubeIDE jsou naprosto odlišné od toho co je u toho projektu. Nemám páru, jak to modifikovat. Další problém je, že Cube inicializuje MCU (vektory přerušení, vyčištění paměti...) vlastním startup souborem, ale v tom projektu si to tam autor láduje sám.
Jsem jen pouhý uživatel a mám jen povrchní znalosti toho procesu, který v Cube probíhá, takže tím jsem skončil. Na nějaké hlubší vrtání se v tom nemám čas a ani náladu.
Přiložil jsem ty makefile soubory z jednoho testovacího projektu, kdyby se v tom chtěl někdo pohrabat.
Přílohy
makefiles.zip
(2.34 KiB) Staženo 27 x

Uživatelský avatar
markoni
Příspěvky: 2310
Registrován: 30 říj 2006, 01:00
Bydliště: Poblíž Zlína
Kontaktovat uživatele:

#34 Příspěvek od markoni »

Mahoney píše: Ještě máš druhou možnost, někam si nainstalovat Linux, třeba na druhé PC (a nebo, jestli máš dost RAM, si spustit nějakou vhodnou live distribuci) a jednak si do ní dát to studio přímo, ale hlavně by sis tam taky mohl dát i ty nástroje, co už tu byly zmíněny (pro ARM) a udělat to přímo tam… Možná by to bylo rychlejší než to lámat někam jinam.
Linux je pro mě půda neoraná bohužel jsem vychován na woknech :pc: díky

Uživatelský avatar
Mahoney
Příspěvky: 347
Registrován: 26 říj 2019, 02:00

#35 Příspěvek od Mahoney »

Všechno je jednou poprvé…

V tom Atollic True studiu ti to zkompilovat šlo, nebo to byl stejnej příběh?

Ono to možná bude i tím, že ti znalejší, včetně autora projektu, to dost často dělají v Eclipse + GCC (to se dá nainstalovat i na Windows, asi pod MinGW, ale rozjet tomu podporu pro ten kit může být netriviální… Nevím, tohle zase neznám já ve Windows)

Uživatelský avatar
markoni
Příspěvky: 2310
Registrován: 30 říj 2006, 01:00
Bydliště: Poblíž Zlína
Kontaktovat uživatele:

#36 Příspěvek od markoni »

Mahoney píše:Všechno je jednou poprvé…

V tom Atollic True studiu ti to zkompilovat šlo, nebo to byl stejnej příběh?

Ono to možná bude i tím, že ti znalejší, včetně autora projektu, to dost často dělají v Eclipse + GCC (to se dá nainstalovat i na Windows, asi pod MinGW, ale rozjet tomu podporu pro ten kit může být netriviální… Nevím, tohle zase neznám já ve Windows)
Napřed jsem ten projekt nemohl do Atollic True studia naimportovat zkoušel jsem vše co mě napadlo nakonec se to podařilo s flešky ,skončí to taky tou samou chybou co v STM32CubeIDE .Já jse asi před 10 lety hrál STM32-VL DISCOVERY podle příkladů http://mcu.cz/comment-n2058.html odtud to Atollic True studio a ST-LINK/V2 tím nástrojem jsem nahrál do kitu STM32F0Discovery tu binárku HDO.bin od autora toho projektu.Zkoušel jsem taky ten kit připojit STM32CubeIDE abych to mohl debugovat ale tam jsem musel update ST-LINK/V2 ale avast byl proti teď nevím jak to napravit taky s ohledem na funkci toho stávajícího ST-LINK/V2 který je pořád funkční na štěstí díky

Uživatelský avatar
Mahoney
Příspěvky: 347
Registrován: 26 říj 2019, 02:00

#37 Příspěvek od Mahoney »

Určitě ten firmware zatím neupdatuj, to se jednak dá udělat kdykoliv, ale hlavně se může stát, že pokud to budeš chtít rozjet pod něčím jiným, tak by se to s novějším fw. nemuselo podařit.

Atollic i Cube IDE z Eclipse vycházejí, zkus se podívat, jestli někde v konfiguraci toho prostředí je GCC kompilátor přístupný. Pokud ne, tak až nainstaluješ MinGW (viz níže), zkontroluj to znovu.

Mám pocit, že spíš řešíme Make než kompilátor. Například Microchipí MPLABX Make používá. Celé to běží pod Javou a tohle si to prostředí přitáhne všechno s sebou (vychází z Netbeans), ale Eclipse je také pod Javou, tak by to mělo nějak jít udělat.

Teď k tomu jinému: Pod čím to je potřeba udělat už jsem psal, Eclipse + GCC. Pokud to chceš dělat na Windows, je potřeba nainstalovat MinGW, to je "Windows port GNU of the Compiler Collection".

Je třeba hledat, tohle neznám. Něco k nalezení k tomu je:
https://www.youtube.com/watch?v=D2oAUDPWkkA
https://multigesture.net/articles/how-t ... n-windows/

K tomu kitu - co se týče instalace, tohle je podobné:
https://www.olimex.com/Products/ARM/ST/STM32-H103/

Uvědom si prosím, že mám sice trochu představu co je třeba, ale jinak střílím naslepo, takže hlavně prosímtě nikam nespěchej a první pořádně čti a hledej… Jinými slovy, není to ucelený návod, tu cestičku si musíš prošlápnout sám… Škoda že tu není někdo zkušenější.

Přesně podle těch příkladů na MCU jsem si kdysi chtěl hrát taky, ale pak přišly jiné starosti a nedošlo na to.

OndraN: Přesně tenhle přístup nemám rád, když to polovinu věcí "dělá samo" a člověk pak neví, co se děje a jaké hw prostředky má k použití a jaké ne.

Uživatelský avatar
markoni
Příspěvky: 2310
Registrován: 30 říj 2006, 01:00
Bydliště: Poblíž Zlína
Kontaktovat uživatele:

#38 Příspěvek od markoni »

Mahoney píše:Tohle není úplně to, co jsem měl na mysli (a tohle už jsme si přečíst mohli). Nevím jak si to pořešilo interně to studio, ale musí být někde k dočtení, co se za tou hláškou skrývá. Není to někde v nějakém logu nebo tak? Přeci při kompilaci bere řádky toho skriptu, volá podle nich, a vypisuje co právě dělá… je potřeba dočíst se TAM, kde skončil a co mu vadí. Možná by poradil někdo, kdo ty ARMy od STM dělá a to studio zná (já se jen chystal, ale zatím na to nedošlo)…?
.
jeden projekt je v pořádku napravo na příloze,nemohu nic jiného nějaký log nebo podobně díky
Přílohy
console2.jpg

Uživatelský avatar
Mahoney
Příspěvky: 347
Registrován: 26 říj 2019, 02:00

#39 Příspěvek od Mahoney »

Ty jsi školák, že…

Když vstoupíš do složky, kde ten projekt skutečně leží (myslím přes nějakého správce souborů, ne v tom prostředí kde to píšeš), tak tam není žádný soubor, kde by ses dočetl, jak dopadl překlad?

Uživatelský avatar
markoni
Příspěvky: 2310
Registrován: 30 říj 2006, 01:00
Bydliště: Poblíž Zlína
Kontaktovat uživatele:

#40 Příspěvek od markoni »

Abych nezakládal další vlákno tak jsem udělal pokus nahrál jsem do Modul V3 NodeMcu 4M modul ESP8266 pro Arduino lx@386 tento kód

Kód: Vybrat vše

#define analogPin A0 /* ESP8266 Analog Pin ADC0 = A0 */

int adcValue = 0;  /* Variable to store Output of ADC */

void setup()
{
  Serial.begin(115200); /* Initialize serial communication at 115200 */
}

void loop()
{
  adcValue = analogRead(analogPin); /* Read the Analog Input value */
 
  /* Print the output in the Serial Monitor */
  Serial.print("ADC Value = ");
  Serial.println(adcValue);
  
  delay(1000);
}
viz https://www.electronicshub.org/wp-conte ... ircuit.jpg

a připojil jsem podle tohoto schématu http://1-2-8.net/mwva/mrazik/hdo/html/hdo.png
a seriál mě dává

Kód: Vybrat vše

Serial port COM19 opened
ADC Value = 460
ADC Value = 186
ADC Value = 129
ADC Value = 121
ADC Value = 129
ADC Value = 146
ADC Value = 153
ADC Value = 168
ADC Value = 172
ADC Value = 183
ADC Value = 187
ADC Value = 194
ADC Value = 200
ADC Value = 207
ADC Value = 208
ADC Value = 206
ADC Value = 204
ADC Value = 214
ADC Value = 172
ADC Value = 211
ADC Value = 209
ADC Value = 207
ADC Value = 187
ADC Value = 200
ADC Value = 196
ADC Value = 187
ADC Value = 181
ADC Value = 170
ADC Value = 160
ADC Value = 148
ADC Value = 137
ADC Value = 117
ADC Value = 122
ADC Value = 113
ADC Value = 125
ADC Value = 105
ADC Value = 98
ADC Value = 121
ADC Value = 63
ADC Value = 75
ADC Value = 58
ADC Value = 48
ADC Value = 10
ADC Value = 20
ADC Value = 13
ADC Value = 0
ADC Value = 25
ADC Value = 40
ADC Value = 43
ADC Value = 43
ADC Value = 37
ADC Value = 22
ADC Value = 33
ADC Value = 31
ADC Value = 42
ADC Value = 88
ADC Value = 160
ADC Value = 198
ADC Value = 244
ADC Value = 264
ADC Value = 304
ADC Value = 355
ADC Value = 377
ADC Value = 404
ADC Value = 428
ADC Value = 445
ADC Value = 457
ADC Value = 465
ADC Value = 476
ADC Value = 486
ADC Value = 517
ADC Value = 564
ADC Value = 638
ADC Value = 750
ADC Value = 790
ADC Value = 765
ADC Value = 775
ADC Value = 782
ADC Value = 785
ADC Value = 769
ADC Value = 795
ADC Value = 801
ADC Value = 804
ADC Value = 813
ADC Value = 812
ADC Value = 819
ADC Value = 825
ADC Value = 838
ADC Value = 852
ADC Value = 865
ADC Value = 877
ADC Value = 928
ADC Value = 940
ADC Value = 960
ADC Value = 970
ADC Value = 961
ADC Value = 955
ADC Value = 946
ADC Value = 967
ADC Value = 972
ADC Value = 984
ADC Value = 970
ADC Value = 999
ADC Value = 917
ADC Value = 900
ADC Value = 846
ADC Value = 745
ADC Value = 716
ADC Value = 666
ADC Value = 640
ADC Value = 618
ADC Value = 592
ADC Value = 573
ADC Value = 558
ADC Value = 544
ADC Value = 530
ADC Value = 517
ADC Value = 454
ADC Value = 338
ADC Value = 304
ADC Value = 249
ADC Value = 218
ADC Value = 133
ADC Value = 108
ADC Value = 87
ADC Value = 61
ADC Value = 36
ADC Value = 33
ADC Value = 37
ADC Value = 49
ADC Value = 56
ADC Value = 37
ADC Value = 32
ADC Value = 30
ADC Value = 53
ADC Value = 85
ADC Value = 163
ADC Value = 188
ADC Value = 288
ADC Value = 326
ADC Value = 363
ADC Value = 397
ADC Value = 421
ADC Value = 438
ADC Value = 451
ADC Value = 461
ADC Value = 474
ADC Value = 494
ADC Value = 543
ADC Value = 652
ADC Value = 725
ADC Value = 748
ADC Value = 773
ADC Value = 845
ADC Value = 877
ADC Value = 902
ADC Value = 938
ADC Value = 964
ADC Value = 945
ADC Value = 937
ADC Value = 965
ADC Value = 970
ADC Value = 960
ADC Value = 926
ADC Value = 881
ADC Value = 819
ADC Value = 764
ADC Value = 722
ADC Value = 674
ADC Value = 582
ADC Value = 559
ADC Value = 541
ADC Value = 526
ADC Value = 507
ADC Value = 470
ADC Value = 379
ADC Value = 308
ADC Value = 264
ADC Value = 242
ADC Value = 226
ADC Value = 207
ADC Value = 186
ADC Value = 170
ADC Value = 152
ADC Value = 123
ADC Value = 72
ADC Value = 54
ADC Value = 5
ADC Value = 34
ADC Value = 12
ADC Value = 32
ADC Value = 38
ADC Value = 69
ADC Value = 42
ADC Value = 42
ADC Value = 44
ADC Value = 38
ADC Value = 1
ADC Value = 36
ADC Value = 66
ADC Value = 25
ADC Value = 29
ADC Value = 42
ADC Value = 52
ADC Value = 64
ADC Value = 63
ADC Value = 94
ADC Value = 122
ADC Value = 162
ADC Value = 230
ADC Value = 249
ADC Value = 289
ADC Value = 334
ADC Value = 392
ADC Value = 461
ADC Value = 492
ADC Value = 636
ADC Value = 736
ADC Value = 778
ADC Value = 836
ADC Value = 891
ADC Value = 948
ADC Value = 952
ADC Value = 974
ADC Value = 973
ADC Value = 901
ADC Value = 853
ADC Value = 754
ADC Value = 644
ADC Value = 538
ADC Value = 461
ADC Value = 256
ADC Value = 202
ADC Value = 144
Serial port COM19 closed
podle mně ty úseky z malými hodnotami znamenají jednotlivé byty HDO co vy na to ? díky

Uživatelský avatar
FHonza
Příspěvky: 1443
Registrován: 20 lis 2012, 01:00
Bydliště: Praha

#41 Příspěvek od FHonza »

Měříš jednou za sekundu. To s HDO nemá nic společného.

Edit: obecně AD převodník v ESP8266 je vhodný tak na orientační měření, jeho přesnost i stabilita (obzvlášť při zapnutém WFi modulu) je mizerná.

Uživatelský avatar
markoni
Příspěvky: 2310
Registrován: 30 říj 2006, 01:00
Bydliště: Poblíž Zlína
Kontaktovat uživatele:

#42 Příspěvek od markoni »

FHonza píše:Měříš jednou za sekundu. To s HDO nemá nic společného.
To já vím že je jednou za sekundu to je jen takový nástřel nebo pokus ,zkusím upravit čas měření a podobně .Bez připojeného transformátoru se to drží na hodnotě cca 500 pořád .díky za jakéhokoliv náměty a rady .

Uživatelský avatar
FHonza
Příspěvky: 1443
Registrován: 20 lis 2012, 01:00
Bydliště: Praha

#43 Příspěvek od FHonza »

Moje rada je, že AD převodník v ESP8266 je určen jen k orientačním měřením, např. baterie. Pro detekci HDO je nepoužitelný.

Převodník je teoreticky 10 bitový, ale v praxi s přimouřeným okem je použitelných max 8 bitů. Vzorkovací frekvence je při zapnutém WiFi modulu cca 1kHz. O referenci se nikde nedočteš. Ten dělič podle Tebou uváděného prvního odkazu je tam kvůli to, že rozsah věstavěného AD je pouze 0 - 1V (a tolerantní při překročení není).

Uživatelský avatar
Ruprecht
Příspěvky: 1114
Registrován: 28 zář 2005, 02:00
Bydliště: ZČ + JM

#44 Příspěvek od Ruprecht »

podle mně ty úseky z malými hodnotami znamenají jednotlivé byty HDO
V žádném případě. Ty měříš jen okamžitou hodnotu napětí 1x za sekundu na signálu, který má 50Hz + HDO signál (183.3, 283.3 nebo 216.6Hz). To je stejné, jako bys rozhoupal dětskou houpačku a jednou za minutu zapsal, kde zrovna je. Silně podsamplované.

Kód: Vybrat vše

Bez připojeného transformátoru se to drží na hodnotě cca 500 pořád
Ano, když napětí uprostřed děliče není "rozmítané" signálem z trafa, měl by při stejných odporech ukazovat stabilních cca 512 (převodník 10bit má rozsah 0-1023), tedy dělič a ADC fungují :)
Kampaň, účelovka, nepodepsal, Palermo, ODS, Kalousek, je líp a jsou na to čísla, nastudujte si to.

Odpovědět

Zpět na „Programování PIC, ATMEL, EEPROM a dalších obvodů“