Fórum témák
» Több friss téma |
Igen a + és föld közé, az egyik a simítást végezte 220µF a másik a nagyfrekvenciás szűrést 100 nf. Ha akksiról sem megy akkor akkor ott más gond van. A Launchpadra az usb csatlakozón keresztül kapcsolod rá a feszültséget? A Launchpadon a TPS77301 max 10V visel el.
2452-vel is meg lehet csinálni, de ha meg tudod oldani egy 2553-al mindenképp egyszerűbb lesz a dolgod. Itt egy cikk magyarul az i2C komunikációról
Ez meg UART komunikációról Itt mintapéldák vannak töltsd le a procidhoz a megfelelőt.
Persze a feszültséget előtte leszabályzom egy szab.IC-vel.
Kipróbálom a kondis dolot, aztán mondom, hogy sikerült-e. Köszi! Zsolti
Sajnos nem oldotta meg a problémát a kondi :S
Sziasztok.
Egy pár nap vacakolás után, sikerült egy g2xx2-es vezérlővel, i2c-n adatot küldeni egy pcf8574-nek. Sajnos a mintapéldákban szereplő i2c-s progikat, én valahogy nem látom át, (nem tudom miért, de szerintem túl van bonyolítva) ezért próbáltam leegyszerűsíteni, több-kevesebb sikerrel. A problémám, hogy nekem fogadni kéne adatot a pcf-től, és ez nem akar összeállni. Egy 4x3-as billentyűmátrixot szeretnék rárakni, (pcf8574-re) és ezt kellene figyelnem i2c-n. Ráadásul mindezt megszakításban. Becsatoltam azt a progit, amivel küldök adatot, de valamiért az sem jó teljesen mert a "slave address" megadása után, hiába írom, hogy a felső 4 bit magas (bemenet) legyen, kimenetként kezeli. Ha valaki esetleg tudna segíteni, megköszönném.
Szia!
Én ott látom a hibát hogy, ha PCF-ből ha olvasni akarsz akkor cím 0x41.
Köszi.
A címzéssel nem volt baj, csak azt a progit raktam be, amivel írni kell a pcf-re. Most már megoldottam a dolgot, de még mindíg nem tökéletes, mert ha először küldök, akkor utána már nem tudok fogadni, de fordítva működik, de csak egyszer. Ezenkívül még a megszakítással szenvedek. Nem értem, hogy állítsam be, hogyha P0-7 bemenet, akkor pl. gombnyomásra megszakítást csináljon. (A g2xx3-as sorozattal már megcsináltam, ott működik a bill.mátrix kezelés pcf8574-el, de a g2xx2-es sorozat i2c kezelése feladta a leckét.)
Nekem is van félbehagyva egy 2XX2 i2c projektem, elakadtam, DS1337 -RTC-vel szívok. Végül abbahagytam és 2553-al oldottam meg.
Idézet: „Nekem is van félbehagyva egy 2XX2 i2c projektem,” Még nincs kész teljesen, de már működik, egy "egyszerűsített" g2xx2-es i2c kezelőprogram. (tegnap éjjel írtam mérgemben, látni rajta, mert még a neven sem tudtam rendesen leírni) Nézd át hátha segít. Még fel kéne kommenteznem, és kijavítani az apróbb hibákat, plusz teljesen hordozhatóvá kéne tenni. Bár törekedtem rá, hogy az legyen.
Hali! Hova lett a cikkek közül az első rész??? Most lenne egy kis időm játszadozni a launchpaddal, erre nem találom, mit hogy kéne....
Felnyitottam, mert írnám a harmadik részt, s betoldottam egy megjegyzést:
Megjegyzés: A Texas Instruments ennek a cikknek a megjelenése óta átdolgozta az MSP-EXP430G2 gyakorló kártyát, s azóta már csak a Rev 1.5 kiadást lehet kapni, ami néhány apróságban eltér a korábbi kiadásoktól. A cikksorozat III. részében ismertetem az eltéréseket, s mondom el, hogy az első két rész mintaprogramjain mit kell változtatni, hogy az új kártyán is fussanak. De most lehet, hogy kútbaesik az egész, mert többnapi kinlódásom ellenére se programlistát nem tudok beszúrni, se a betűszinezés nem működik a cikkírás szerkesztőjében, úgyhogy most nagyon tele van a hócipőm a technikai korlátokkal. Az első cikkről egy munkaváltozat az esca.atomki.hu/launchpad/ címen található. Idézet: „mert többnapi kinlódásom ellenére se programlistát nem tudok beszúrni,” A fórum szerkesztők sem tudják a választ?
Áh, értem, köszönöm! Várom az új cikket! És köszi a linket is!
Ha valaki ráér, segítene egy kicsit? Stopper órát szeretnék készíteni, LED kijelzőset. A multiplex üzemmód már működik. Amire gondoltam: Amíg a gombot nyomva tartom, méri az időt. Majd elengedés után megjeleníti a kijelzőn. A gomb megnyomós rész még nincs beleírva. A switch rész egyáltalán nem működik. Lelassítottam (delay-t feljebb vettem), hogy lássam mi történik. Végigszámol 0..9-ig. Ez miért lehet? Nem az a lényege a switch-nek, hogy megnézi melyik érték a egyezik, és csak azt a részt hajtja végre? A kódja:
Ha valakinek van ötlete, meghallgatom. Köszi: uli Közben rájöttem mi a baj a switc-el, úgyhogy a hozzászólás tárgytalan. uli Idézet: Eddig nem kaptam választ. „A fórum szerkesztők sem tudják a választ?”
Sziasztok.
"Elkészült" az USI i2c kommunikációs programocskám. Mivel a cikkíráshoz továbra sem értek, és nem vagyok olyan kitartó, mint Icserny fórumtársunk, ezért csak ide rakom be, mint ahogy azt eddig is tettem. A program, az MSP430g2xx1 g2xx2-es sorozatok, Universal Serial Interface (USI) modul i2c kommunikációjához készült! Bővithető, és hordozható. (remélem) A program használatát, két kis programmal is bemutatom: 1: PCF8574-re írás.
2: 24xxXXX eeprom, írás olvasás.
Ha hibát találtok, kérem jelezzétek. Üdv. Gábor.
Kedves Icserny!
Nagyon köszönjük az eddigi munkádat a 430-as cikksorozat kapcsán. Számomra, aki teljesen kezdő, teljesen amatőr, a legfontosabb tananyag a témában. Rengeteget használom a tanulásom során. A sorozat III. részét, szerintem többed magammal nagyon várjuk. A további munkádhoz illetve a technikai korlátok legyőzéséhez pedig kitartást! Köszönöm!
Szerintem egy 'break;' utasítás hiányzik mindegyik 'case' modulban. :yes:
Szívesen.
Bár a pcf8574-től már kezdek becsavarodni, mert nem azt csinálja amit szeretnék. Eleinte azt hittem, hogy valamit elszúrtam az i2c kódban, és már ott tartottam, hogy töröltetem a hsz-t, de az EEPROM-ot teljesen jól kezeli, és elővettem egy mcp23008-ast, amit szintén jól kezel. De hogy a pcf-el miért kell ennyit vacakolmi, azt nem értem. Igaz, találtam hozzá több adatlapot is, és nem teljesen ugyanaz van bennük írva.
Szia!
Köszönöm szépen! Lenne máris egy kérdésem: a main() végén miért van return 0; ? Én ugy tudom, hogy a mikrovezérlőknél a program végtelen ciklusban van, vagy ha olyan a feladat, akkor a program után van egy végtelen ciklus. Különben a mikrovezérlő folytatja az utasítások végrehajtását és végrehajtja amit a programmemória nem használt részein talál. Az MSP430-aknál ez máshogy van? A return 0; hatásárá leáll a mikrovezérlő? Idézet: „A return 0; hatásárá leáll a mikrovezérlő?” Igen. Bővebben: Mivel szemléltetés céljából készítettem a két programot, így csak akkor van értelme a futtatásuknak, ha látjuk, hogy mit csinál. Namármost ez, hogy lehetséges? Természetesen úgy, hogy ha csak egyszer futatjuk le a main() függvényben szereplő parancsokat. Ezt a legkönnyebben úgy lehet elérni, hogy a main() függvényt, visszatérési értékkel rendelkező függvényként definiáljuk. "int main()" = visszatérési értékkel rendelkező függvény. "void main()" = nem rendelkezik visszatérési értékkel. Természetesen az "int" helyett más típusú, pl. char, stb... is lehet a függvényünk. A "return 0;" utasításban a visszatérési érték "0", tehát hamis, ezért többször nem fut le a program. Még egy példa erre, az i2c_g2xx2.c állományban, a "i2c_read_byte" függvény, ahol a visszatérési érték, az eszközről beolvasott értéknek felel meg. Remélem jól írtam mindent!
Szívesen. Bár csak nagyvonalakban írtam a függvényekről.
Más! Ha valakit érdekel, a Proteus ISIS 7.10-es veziójába bekerült az MSP430g2xxx. Igaz csak egy alap típus. Viszont arra, hogy hogyan lehet szimulálni, még nem jöttem rá, mert C forráskódot nem tudok elfogattatni vele. Ha előrébb jutok vele, megírom.
A függvényeket értem. Csak azt nem tudtam, hogy ezek a mikrovezérlők leállnak, ha hamissal tér vissza a main().
Úgy tudom a PICek nem állnak le.
Elkezdett érdekelni a kapacitív érintőpanel.
Vettem is egy Capacitive Booster Pack-ot. A demo firmwaret szeretném CCS-be importálni. Itt elakadtam, ugyanis nem találja meg a projektet a CCS könyvtárba. Ez van a readmeben az importálásról: Idézet: „1. Project Import in CCS a. Open CCS. b. Select a new project workspace outside of the project folder* c. Select Project-->Import Existing Project d. Browse to the [PROJECT_ROOT]\CCS folder e. Select Finish *Ideally, workspace should be in completely independent folder, not containing or contained by the project/package folder. !Note: For CCS, while project root is in the outer directory, the CCS project files are located inside CCS. To enable the portability of the project, the file macros.ini is created to define the root. Additionally, all project code files (*.c, *.h) are added as linked resources with their relative path to the project root.” A meglévő workspacembe szerettem volna beimportálni a projektet.
Addig eljutottam, hogy beimportálja.
Ellenben hiába pipálom be, hogy másolja át a fájlokat, a forrás fájlokat nem teszi át a workspace könyvtárába. Bal oldalt látom ugyan a fájlokat, szerkeszteni is tudom őket. Csak zavaró, hogy máshol vannak, így nehezebb mentést csinálni róluk. Hogyan tudom megszüntetni ezt a linkelést?
Szia!
Nem használom, de szerintem itt sem állnak le...! Szerintem nincs értelme, hogy megálljon, mert akkor nem tudna csinálni semmit, akkor meg minek legyen bekapcsolva ( --> sleep!). A mikrovezérlőt leállítani csak az órajel megállításával tudod, egyébként max. végtelen ciklust képes végezni! Steve
Töröltem a linkeket és átmásoltam kézzel a fálokat. Egy include-nál kellett módosítanom az elérési utat, hogy leforduljon.
|
Bejelentkezés
Hirdetés |