Vítejte na Elektro Bastlírn?
Nuke - Elektro Bastlirna
  Vytvořit účet Hlavní · Fórum · DDump · Profil · Zprávy · Hledat na fóru · Příspěvky na provoz EB

Vlákno na téma KORONAVIRUS - nutná registrace


Nuke - Elektro Bastlirna: Diskuzní fórum

 FAQFAQ   HledatHledat   Uživatelské skupinyUživatelské skupiny   ProfilProfil   Soukromé zprávySoukromé zprávy   PřihlášeníPřihlášení 

Přístup do sériový Eeprom 24LC64
Jdi na stránku Předchozí  1, 2
 
Přidat nové téma   Zaslat odpověď       Obsah fóra Diskuzní fórum Elektro Bastlírny -> Programování PIC, ATMEL, EEPROM a dalších obvodů
Zobrazit předchozí téma :: Zobrazit následující téma  
Autor Zpráva
Celeron



Založen: Apr 02, 2011
Příspěvky: 18174
Bydliště: Nový Bydžov

PříspěvekZaslal: st únor 11 2015, 18:16    Předmět: Citovat

Díky moc za info. Jak vidno, není to až tak jednoduchý a jednoznačný. Abych si tam nezanesl chybu tím mým zapojením, zkusím 24LC64 nejdříve na políčku a přímo na portech procesoru na HW emulátoru od Amitu. V podstatě stačí ten "návodovej program" poupravit na správný porty a může se hned zkoušet a pak teprve zkusit to mý zapojení.
24c16 jsem tam dal jen že Eagle neměl 24c64 ale nohy jsou stejně.
Dám vědět, jak jsem dopadl.
Jirka

edit: Koukal jsem na A51 driver, co jsi poslal. Vidím, že v tom je i obsluha klávesnice.
Driver však není pro 24LC64, ale jen pro max 8 kusů EEPROM délky 256 byte na čipu. U 24LC64 se musí nejdříve poslat identifikace čipu A + 3 bity výběru příslušné EEPROM 0-7 a pak následuje 13 bite adresy vevnitř EEPROM. Musí se to rozšířit na odeslání High adresy v EEPROM, co v tom driveru chybí. Vypadá to, že přístup je tak jak jsem si myslel.
Díky, ušetří mě to čas při bádání
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
vlado5



Založen: Jul 19, 2011
Příspěvky: 157
Bydliště: Trenčín

PříspěvekZaslal: čt únor 12 2015, 7:06    Předmět: Citovat

Ja som to tiež prerábal na 24C128, ako píšeš treba to rozšíriť o zadanie HIGH adresy EEPROM, ale rozumieš tomu, tak si to pochopil na jednotku Treba ešte u EADRS, odstrániť horné 3 bity adresy u 24C64 a vyššej. Okrem toho, že som to prerábal na inú EEPROM, musel som to prepísať na inštrukčný súbor 8748 a to bol iný zážitok, veľa inštrukcií tento procesor z inštrukčného súboru jadra 51 nemá. Bolo to celé treba prerobiť, a škriabať sa, ako sa hovorí pravou rukou za lavým uchom-cez hlavu. To je tak, keď niekto opisuje-pri vlastnom vývoji by som to od základu robil inak pre daný procesor rady 48.
K tomu poďakovaniu-rado sa stalo, pokiaľ môžem, pomôžem, k tomuto je toto fórum. Nech sa dielo darí !!!!
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu Odeslat e-mail
Celeron



Založen: Apr 02, 2011
Příspěvky: 18174
Bydliště: Nový Bydžov

PříspěvekZaslal: čt únor 12 2015, 12:11    Předmět: Citovat

Tak jsem přidal ještě jeden registr na High adresu v EEPROM a dopsal oboustranný přenos EEPROM - externí RAM s použitím P2 a R0.
Ještě to trochu učešu podprogramama, spoustu řádků je pro všechny varianty přenosů společných.
Taky jsem předělal pro urychlení čtení na blokový po maximálně po 256 bytech a zápis po blocích maximálně 32 bytů.
Ještě bych měl jeden dotaz, nějak se mi to nepovedlo v šítu načíst. Při blokovým čtení mohu přenést, (pokud bych předělal počítatlo přenesených byte z DB na DW) celou EEPROM, tedy 8KB naráz. U zápisu bloky jsou jen maximální délka 32 byte a nebo to jsou bloky násobku 32 počínaje adresou 0000 v EEPROM? Dnes si 2 24LC64 přivezu a můžu začít zkoumat. Smile
Díky
Jirka
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
vlado5



Založen: Jul 19, 2011
Příspěvky: 157
Bydliště: Trenčín

PříspěvekZaslal: čt únor 12 2015, 15:56    Předmět: Citovat

Ano, ako píšeš podľa datašitu by sa mala dať načítať celá-tzv. sekvenčné čítanie až po stop bit. Ja čítam u 24C128 naraz 256 bytov, na zápis mám nastavené bloky po 64 byte krát ich násobok (4xpo 64 byte=256 bytov).
Pri vývoji som urobil v SW chybu a načítalo mi naraz 500 byte bez prerušenia.
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu Odeslat e-mail
Celeron



Založen: Apr 02, 2011
Příspěvky: 18174
Bydliště: Nový Bydžov

PříspěvekZaslal: čt únor 12 2015, 17:29    Předmět: Citovat

Já si to myslel, že to jsou násobky adresy EEPROM 0, 32, 64 atd. Ty máš u 24LC128 zápisový blok 64 a já u 24LC64 blok 32.
Já jsem radši u dražší a prostorově náročnější varianty 8 ks EEPROM x 8KB, protože je požadavek aby šlo zvolit na DIL přepínači HW blokování přepisu kalibrace pro 8 typů měrových sond. To bych na 128 nebo 256 nemohl.
Zjistil jsem, že programátor Xeltec co mám, umí nahrát 24LC00 až 24LC512, takže hned budu vedět, jestli jde dobře čtení a pokud by byl problém, tak znadno zjistím, zda mám blbě čtení nebo zápis, případně je blbá EEPROM.
A propo, jakej kmitočet hodin jsi zkoušel nejvíc?
Jirka
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
vlado5



Založen: Jul 19, 2011
Příspěvky: 157
Bydliště: Trenčín

PříspěvekZaslal: čt únor 12 2015, 18:23    Předmět: Citovat

Ja som správnosť svojej práce tiež konfrotoval s programátorom, ktorý mi dosť pomohol, len ma dosť štvalo prekladanie EEPROM z jednej pätice do druhej-čo som absolvoval asi 50x. Kmitočet som vôbec neskúšal na max. hranicu, pretože som si uvedomil pomalosť proužitého procesora (použitý X-tal je 6 MHz, inštrukčný cyklus 2,5 mikrosek.) a vynechal som aj inštrukcie NOP. EEPROM pracovala bez akéhokoľvek problému.
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu Odeslat e-mail
Celeron



Založen: Apr 02, 2011
Příspěvky: 18174
Bydliště: Nový Bydžov

PříspěvekZaslal: čt únor 12 2015, 21:16    Předmět: Citovat

Napadlo mě, zda 24lc64 vůbec potřebuje registr SDA a SCL jak jsem posílal malůvku. Nešlo by ji posadit signálem SDA přímo na DB0 sběrnice? A SCL ovládat přímo signálem /MR a /MW samozřejmě s podmínkou jedinečný adresy.
Jirka
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
vlado5



Založen: Jul 19, 2011
Příspěvky: 157
Bydliště: Trenčín

PříspěvekZaslal: pá únor 13 2015, 7:52    Předmět: Citovat

Umiestniť priamo SDA EEPROM na DB0 je zaujimavá myšlienka. Neviem ako by sa to riešilo u takéhoto zložitého systému, kde je určite na zbernici frkot Pri prenose dát môže prísť aj k prerušeniu, a to by bolo v čase obsluhy EEPROM treba zakázať. To by mohlo mať vplyv na časovanie iných periférií.
Úplne nemožné by to podľa mňa bolo pri riadení EEPROM z externej pamete programu, pretože čas zbernice vyhradený na zápis - čítanie byte potrebuje pamäť súvislú sekvenciu dát a pri čítaní ďalšej inštrukcie riadiaceho SW by bolo treba túto prečítať z ext. pamäti programu-a tým by bola na tento moment zbernica vyhradená zas pre toto zariadenie. Tá postupnosť dát je pred lachtom tiež prerušovaná a zbernica je medzičasom pridelovaná iným zariadeniam, ale na to slúži lacht, aby si zapamätal posledný stav, ktorý bol naň zapísaný.
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu Odeslat e-mail
Zobrazit příspěvky z předchozích:   
Přidat nové téma   Zaslat odpověď       Obsah fóra Diskuzní fórum Elektro Bastlírny -> Programování PIC, ATMEL, EEPROM a dalších obvodů Časy uváděny v GMT + 1 hodina
Jdi na stránku Předchozí  1, 2
Strana 2 z 2

 
Přejdi na:  
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

Powered by phpBB © 2001, 2005 phpBB Group
Forums ©
Nuke - Elektro Bastlirna

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.


PHP-Nuke Copyright © 2005 by Francisco Burzi. This is free software, and you may redistribute it under the GPL. PHP-Nuke comes with absolutely no warranty, for details, see the license.
Čas potřebný ke zpracování stránky 0.19 sekund