Konkretno šta ja imam problem, čitanje pota mi je od 520 - 880, to sam mapirao na 0 - 255, od 0 - 10 sam napravio prazan hod, samo taj prelaz sa 10 na 11 mi je problem, jer mi su javlja onda na izlazu "treperenje" a ostatak poslije 11 mi nije nikakav problem, samo to na tom samom prelazu je problem.?
Imam eeprom 24C02 i trebao bih u njega upisati podatke, imam .bin fajl sa podacima, e sad kako mi je to najlakše uraditi sa Arduinom, da li je neko tako upisivao, ide preko I2C?
Ovaj upisuje sadržaj u eeprom preko arduina ali mu je sadržaj u ino fajlu za arduino. Taj sadržaj mu je dat kao niz:
byte KChipData[]={ . . .
Najlakše ti je da tvoj bin fajl pretvoriš u hex pomoću bin2hex alata koji nađeš na netu, pa onda da uz pomoć ino fajla ovog lika gore napraviš svoj arduino program (definišeš svoj niz KChipData[]=).
Druga varijanta ti je da preko nekog serijskog terminala komuniciraš sa arduinom i tako mu šalješ deo po deo bin fajla dok ga on upucava u eeprom.
Ako imaš USBAsp programator, mogao bi da probaš sa njim, us softver PROGIsp.
Ili, ako si se nekada bavio PIC mikrokontrolerima pomoću PicKIT2 programatora.
Make no mistake between my personality and my attitude.
My personality is who I am.
My attitude depends on who you are.
01-28-2021, 12:51 PM (This post was last modified: 01-28-2021, 12:52 PM by ddanijel.)
(01-28-2021, 01:19 AM)Makso Wrote: Imam eeprom 24C02 i trebao bih u njega upisati podatke, imam .bin fajl sa podacima, e sad kako mi je to najlakše uraditi sa Arduinom, da li je neko tako upisivao, ide preko I2C?
gorankg ti je dao skroz validno resenje, a evo jos jedno od resenja gde bi trebalo da moze da upise direktno bin fajl u par klika kroz "Tera term" aplikaciju.
TeraTerm je odlična preporuka i ja sam ga koristio za rad sa bootloader-om.
Posebno je dobar jer možeš da napraviš svoje makroe pa tako iskomuniciraš lakše sa svojom aplikacijom na mikrokontroleru. Tebi ovo ne treba sada ali ko zna za ubuduće...
Evo sad sam se malo poigrao sa tim, prvo sam probao preko TeraTerm, funkcija sa upisivanjem u eeprom prođe glatko, dok pri čitanju iz eeproma nema ništa, samo otvori novi prozor kao da je počeo čitanje i stalno je na 0%, ne znam da li može biti da sam eeprom ne valja, ali opet razmišljam ako eeprom ne valja da li bi ga I2C skener pronašao (a pronađe ga na adresi 0x50).?
Fajl koji sam pisao u eeprom, u .txt je, izgleda ovako:
Ovaj upisuje sadržaj u eeprom preko arduina ali mu je sadržaj u ino fajlu za arduino. Taj sadržaj mu je dat kao niz:
byte KChipData[]={ . . .
Najlakše ti je da tvoj bin fajl pretvoriš u hex pomoću bin2hex alata koji nađeš na netu, pa onda da uz pomoć ino fajla ovog lika gore napraviš svoj arduino program (definišeš svoj niz KChipData[]=).
Druga varijanta ti je da preko nekog serijskog terminala komuniciraš sa arduinom i tako mu šalješ deo po deo bin fajla dok ga on upucava u eeprom.
Na tom jednom eepromu što sam upisivao, njega I2C skener nađe na 0x50 adresi, dok imam još jedan mislim da je drugi proizvođač ali je broj isti, njega kad skeniram izbaci mi sve adrese od 0x50 do 0x57.?
Obicno kada I2C skener nadje vise vise adresa to znaci da je u pitanju memorija veceg kapaciteta i da postoje dodatne "banke" tj memoriske lokacije kojima se pristupa preko drugih I2C adresa, prakticno ako ti jedna memorija vraca jednu adresu a ova druga vise sigurno nisu iste memorije u pitanju.
Tvoj niz ima 128 bajtova i dobro si ga uneo. Teratermom si verovatno spuštao txt fajl pa ti zato pokazuje višak bajtova.
Izmenio sam program sa onog linka tako da ti nakon par sekundi od dovođenja napajanja upisuje niz od 128 bajtova u eeprom sa adresom koju treba da definišeš na početku. Nakon toga iščitava sadržaj 128 lokacija i proverava da li je niz upisan dobro.
Prevedi program i upucaj ga u arduino pa nakon toga poveži eeprom i dovedi napajanje.
02-01-2021, 09:14 PM (This post was last modified: 02-01-2021, 09:22 PM by MILANNN.)
Pozdrav.Taman sam pomislio da ovo za arduino uno ide sve lako,bar do sada je islo i sad prba ba uradim nesto stvarno prosto,da neke dve stvari ukljucim i iskljucim istovremeno a izbacuje mi gresku i nikako da vidim zasto.Evo to sto sam pisao i oznacen red koji pocrveni.Ovako sam ga ostavio na pola pa ako ovo videm sta je ici cu dalje.
int ledpin=10;
int ledppp = 11;
int taster = 3;
int val=0;
int tim = 500; // nesto za kasnije
(01-31-2021, 08:48 PM)gorankg Wrote: Tvoj niz ima 128 bajtova i dobro si ga uneo. Teratermom si verovatno spuštao txt fajl pa ti zato pokazuje višak bajtova.
Izmenio sam program sa onog linka tako da ti nakon par sekundi od dovođenja napajanja upisuje niz od 128 bajtova u eeprom sa adresom koju treba da definišeš na početku. Nakon toga iščitava sadržaj 128 lokacija i proverava da li je niz upisan dobro.
Prevedi program i upucaj ga u arduino pa nakon toga poveži eeprom i dovedi napajanje.
Ne sitgoh da se javim, u nekoj sam gužvi stalno pa i ne prilazim računaru, probaću narednih dana pa javljam kako prolazi upisivanje.
Zasto ovo nece? Ako uopste moze ovako na arduinu,da pritiskom jednog tastera odredimo koji analogni ulaz citamo,isto tako da bude i sa drugim tasterom.Sve se lepo upise bez greske ali neradi na plocici
const byte taster1 = 2;
const byte taster2 = 4;
const byte ledpin1 = 7;
const byte ledpin2 = 10;
const byte analog1 = A1;
const byte analog2 = A2;
int ana1 = 0;
int ana2 = 0;