Mám takový problémek. Má připojené arduino nano na displeji (hd44780) přes I2C a některé znaky jsou neklidné. Pokud se třeba jedním řádkem přepnu do menu údaj na řádku který se nemění se sklidní. Vždy se jedná o jeden znak . Dá se to nějak ošetřit, nebo je to vlastnost. Dělá mi to s různými programy s různými displeji i moduly UNO jsou pokaždé jiné.
Založen: Jul 16, 2007 Příspěvky: 4246 Bydliště: u HK
Zaslal: pá květen 17 2019, 8:19 Předmět:
stává se mi to v různých aplikacích. Ale abychom mluvili o konkrétní tak u ní je na I2C pouze displej jeded A vstup měří napětí které zobrazuje a u něho první znak mihotá a na jednom pinu je DH22 jinak jsou obsazeny jen boolean IO porty. Teď mě napadlo vzorkovat měření napětí.
Založen: May 17, 2004 Příspěvky: 582 Bydliště: Kosice
Zaslal: pá květen 17 2019, 8:31 Předmět:
ok, par tych displejov som uz programoval, neviem ako mas v softweri vyrieseny "updejt" dipleja, ci to robis v hlavnej slucke alebo v nejakych preruseniach.
Kazdopadne, ten displej je taky dost "self care" - nasypes donho data s potom uz zobrazuje sam, akurat pokial si pametam, komunikacia je troska pomalsia (ja som to nerobil cez I2C ale cez taku 4bitovu zbernicu) problem by som videl niekde v obsluznom softweri, ktory, neustale obnovuje data v displeji a predosla operacia s displejom este nedobehla..Skus znizit rychlost obnovenia udajov na displeji..
dalsi problem viacerych zariadeni na I2C ako som hore naznacil, je ze ak by si s nimi komunikoval aj v hlavnej slucke aj v preruseniach, ze sa ti to proste pobije... v takomto pripade je treba I2C komunikaciu dat len do hlavnej slucky, a prerusenia len zdvihnu zastavku (poziadavku na nejaku I2C komunikaciu) a tu vybavi hlavna slucka, a zastavku zmaze..
Založen: May 17, 2004 Příspěvky: 582 Bydliště: Kosice
Zaslal: pá květen 17 2019, 8:52 Předmět:
ja by som to spravil takto (aj ked ja nerobim s arduinom, ale programujem ciste atmely): pustil by som si prerusenie od casovaca ma povedzme 50-100ms. Data ktore chces zobrazit, neviem kde ziskavas, ale je to asi jedno, ak niekde v preruseni- tak program by to mal len ulozit do nejakej pameti a dalej sa o to nestarat (ci sa zobrazili na displeji), maximalne mat 2 bufre (kde by si to zapisoval na striedacku) na data, ale na uvod to nie je podstatne - to nesuvisi s nestabilnym znakom...
prerusenie od casovaca nastavi povedzme kazdu pol sekundu (budes inkrementovat pocitadlo v preruseni az naratas pol sekundy) a zdvihnes vlajocku (flag).
Hlavny program bude kukat na tu vlakocku a ked ju niekto zdvihne vybere tie data z pameti a nasype ich do displeja.
A aby si to mal super safe, mozes si urobit este jeden flag, ktory bude robit "ochranne pasmo" ked zapisujes do displeja, v okamihu ked zacnes zapisovat do displeja, nastavis tento flag, a v preruseni bude podmienka ze ked je tento flag zdvihnuty tak nevystavujeme poziadavky na zapis na displej (lebo to prave prebieha), a ked dozapisujes, tak flag zhodis, a zhodis aj flag, ktorym prerusenie vystavilo poziadavku na zapis na displej, a znulujes pocitadlo preruseni. Tym povolis preruseniu vystavit novu poziadavku, ktora pride najskor o dalsiu pol sekundu...
Nemůžete odesílat nové téma do tohoto fóra. Nemůžete odpovídat na témata v tomto fóru. Nemůžete upravovat své příspěvky v tomto fóru. Nemůžete mazat své příspěvky v tomto fóru. Nemůžete hlasovat v tomto fóru. Nemůžete připojovat soubory k příspěvkům Můžete stahovat a prohlížet přiložené soubory
Informace na portálu Elektro bastlírny jsou prezentovány za účelem vzdělání čtenářů a rozšíření zájmu o elektroniku. Autoři článků na serveru neberou žádnou zodpovědnost za škody vzniklé těmito zapojeními. Rovněž neberou žádnou odpovědnost za případnou újmu na zdraví vzniklou úrazem elektrickým proudem. Autoři a správci těchto stránek nepřejímají záruku za správnost zveřejněných materiálů. Předkládané informace a zapojení jsou zveřejněny bez ohledu na případné patenty třetích osob. Nároky na odškodnění na základě změn, chyb nebo vynechání jsou zásadně vyloučeny. Všechny registrované nebo jiné obchodní známky zde použité jsou majetkem jejich vlastníků. Uvedením nejsou zpochybněna z toho vyplývající vlastnická práva. Použití konstrukcí v rozporu se zákonem je přísně zakázáno. Vzhledem k tomu, že původ předkládaných materiálů nelze žádným způsobem dohledat, nelze je použít pro komerční účely! Tento nekomerční server nemá z uvedených zapojení či konstrukcí žádný zisk. Nezodpovídáme za pravost předkládaných materiálů třetími osobami a jejich původ. V případě, že zjistíte porušení autorského práva či jiné nesrovnalosti, kontaktujte administrátory na diskuzním fóru EB.