Fórum témák
» Több friss téma |
Fórum » PIC - Miértek, hogyanok haladóknak
Szia!
Milyen csatlakozó van benne apa (tüskés) vagy anya? A lábszámozás illeszkedi -e az LPT porthoz? A hozzászólásoknál van egy megjegyzés... Az ottani fényképen anya csatlakozó van a panelen.
Mérések:
U1 kimenet:13,42V U2 kimenet:5,02V U3 14.láb:5,02V 7.láb:0V LPT D0 szabadon: U3-10.láb:0V 13.láb:0V 12.láb:5V J2-2.láb:0,18V LPT D0 földön: U3-10.láb:0V 13.láb:0V 12.láb:5V LPT D1 szabadon: U3 9.láb0V 8.láb:0V J2-1.láb:1,06V LPT D1 földön: 9.láb:0V 8.láb:0V J2-1.láb:0,14 LPT D2 szabadon: U3-5.láb:0V 6.láb:4,97V J2-4.láb:0,20V LPT D2 földön: U3-5.láb:0V 6.láb:4,97V J2-4.láb:0V LPT D3-D4 szabadon: U3-1.láb:0V 2.láb:13,28V 3.láb:0V 4.láb:13,28V J2-5.láb:0Vű LPT D3 földön: U3-1.láb:0V 2.láb:13,28V 3.láb:0V 4.láb:13,28V J2-5.láb:0V Remélem jó lesz
Szia!
Nem jó, a kimenete nem nyitott kollektoros és csak 5.5 V ig húzható fel. A 4. és 2. lábon +13V fölé is megy. Hosszú távon biztos nem bírja... 7407 vagy esetleg 7406 kell bele, az utóbbinál a beállításokat meg kell fordítani, mivel a 7406 negál. Mérd meg ugyan ezeket, ha a D2 a földön van.
Nem értem... Minek a 2. lába?
Ennek a hozzászólásnak az összes mérését végezd el, ha D2 a földön van...
Szia!
Nézd meg a kapcsolási rajzot, a kapcsolt Vdd -re megy az R7 és az R6 valamint a zöld led. A fenti mérésnél a D0 és D1 mérésénél az U3 8. és 10. lábán nem alakult ki a magas szint, ha a 11. lábat - D0 valamint a 9. lábat - D1 alacsony szintre kapcsoltad. Ha 7406 lenne benne, a kapcsolt Vdd (Q2 kollektora) való húzás miatt érteném a helyzetet. Azt írtad, hogy 7404 van benne, ami "totem pole" kimenetű, a magas szintet is kiadja. A mérésed nem ezt igazolja. Elkötés, rossz forrasztás, alkatrész hiba, esetleg átkötés kimaradása? A D2 -t alacsony szineten (föld) tartva (Q2 -t kinyitva) mérd meg a feszültséget a földhöz képest: - A J2 4 és 5. lábán, - A D0 szabadon - az U3 10., 13., 12. és a J2 2. lábán. - A D0 földre kötve - az U3 10., 13., 12. és a J2 2. lábán. - A D1 szabadon - az U3 8. és a J2 1. lábán. - A D1 földre kötve - az U3 8. és a J2 2. lábán.
Szerintem előbb cserélje ki az IC-t, mert lehet, hogy már nem is jó! Halkan megjegyezném, hogy ez inkább az égetőáramkörök topicba illeszkedne...
Sziasztok!
Ha volt már, akkor bocs. Azt olvastam, hogy nem szerencsés a portokat a bcf és a bsf parancsokkal állítgatni, mert mellékhatásaik lehetnek. Ezek pontosan micsodák? Szép hétvégét mindenkinek!
Szia!
A bsf, bcf és a többi utasítás, kivéve a movwf és a clrf valamint a setf, beolvassa a regiszter értékét műveletet végez a kapott értéken és az eredményt írja vissza. Ha az operandus a PORTx regiszter, akkor beolvasáskor a lábakon megjelenő értéket (analóg módban működő lábnál 0-t) olvassa be, és a kimeneti regisztert írja. A probléma akkor jelentkezik - ha a láb statikusan túl van terhelve - a lábon nem jön létre a magas / alacsony szint a nagy kimeneti áram miatt, - ha a láb dinamukusan van túlterhelve - nagy kapacitív terhelés a lábon, a sűrűn kiadott utasítások hatására a lábon a feszültség nem éri el a magas / alacsony szintet, mire a következő utasítás újra beolvassa. - ha a láb irányát a program változtatja - a kimeneti regiszterben tárolt érték felülíródik a lábról olvasottal, a következő kimenetté állításkor az utolsó beolvasott szintet adja ki a kimenet. Védekezés: - Ha van már LATx regiszter a kontrollerben, azokkal kell végezni a műveleteket. - A port értékét nem közvetlenül módosítjuk, hanem egy a ram -ban levő másolaton, az eredményt movwf utasítással másoljuk a PORTx -re. Mivel az így megvalósított művelet nem egy utasítás (nem primitív művelet, amit a megszakítás nem szakíthat félbe), egyes esetekben a megszakítás tiltása is szükséges lehet a módosítás idejére...
Szia
J2-4.láb0,10V 5.láb:0V D0 szabadon: U3-10.láb:0,04V 13.láb:0,06V 12.láb:4,84V J2-2.láb:0,02V D0 földön: U3-10.láb:0,03V 13.láb:0,03V 12.láb:5V J2-2.láb:0,09V D1 szabadon: U3-8.láb:0,10V J2-1.láb:1,09V D1 földön: U3-8.láb:0,03V J2-1.láb:0,03V
Ez a hex file, egy PIC 16F676-ban fut, az ellene a kérdésem, hogy el lehet távolítani, vagy módosítani az üdvözlő feliratokat ez elejéről?
Vannak disasm programok amik a HEX-et visszaalakitjak ASM formara, ott at lehet irni, es a MPLAB ujra leforditja.
Melyikkel próbálkozzak?
Sziasztok. Elkészült a programozóm. Az lpt kábelemnél egy föld pontot nem találtam, de minden más pontosan kapcsolva van. Be dugtam a gépbe és előtte a picet ráraktam. Watt programját bekapcsoltam, mivel ugye WLPT-ről van szó. Minden úgy van beállítva. Kiválasztottam a PIC-emet, betöltöttem a hex fájlt, elindítottam az írást, és kiírta, hogy nincs észlelve a PIC.Vajon miért?
Ha találkozunk, lehet szóvá teszik...
Gyere ide: Bővebben: Link
Sziasztok!!
Egy repülési adatrögzítőt készítek, amiben van egy gyorsulásmérő, egy giroszkóp szenzor és egy GPS modul! A gyorsulásadatok és szögsebesség adatok teljesen jól a főprogramból jönnek, semmi gondom nincs velük. De a GPS modul megszívat!!! Egy adatszűrést csinálok egy megszakítás során, hogy csak a számomra szükséges adatokat kapjam! Ez a szűrés egy külön programban teljesen jól működik, szépen soronként jönnek is az általam beállított adatok! De amint a mellékelt programban akarom ugyanezt a szűrést elvégezni, szétesik a vett üzenet és tele lesz krikszkrakszokkal!!! Mi történhet? Találkozott már valaki ilyennel?
Ha jól látom karakterenként veszed és dolgozod fel az adatokat. Lehet, hogy nem tudod feldolgozni, majd elküldeni a vett bájtot addig, amíg a következő megérkezik, ez pedig torlódást okoz. Vagy egyenként jönnek a bájtok szünetekkel?
Ha csomagokban jönnek, akkor előbb venni kéne a csomagot, majd feldolgozni elküldeni. Ez utóbbit nem kell a megszakításban elvégezni, lehet kint is. A megszakításban csak egy jelzést állíts be, amikor beérkezett az egész csomag.
Szia!
Idézet: Ez a sor leállítja a vevőt, „RCSTA1bits.CREN=0;” Idézet: Ez meg újrainicializálja. Minden vett karakternél megteszi a program, pedig a soron következő karakter bitjeit már léptetheti be az uart shift regisztere. Továbbá az esetleges vételi hibák nincsenek lekezelve.„RCSTA1bits.CREN=1;” A másik probléma, hogy a putc2USART és a puts2USART gyári rutinok megvárják amíg az uart2 fogadja az új karaktert, aztán írják be. Az elsővel még nincs baj, de a második, stb már várakozik. Amennyiben a megszakítási rutinban várakozik, akkor a megszakítási rutin nem tud időben lefutni - máris kész a ráfutás hiba...
Nagyon szépen köszönöm! ÖRÖK hála!! De tényleg Ez a letiltom, újraindítom nem kell és már jó is!
NAGYON szépen köszönöm!
Szia!
Nem kell letiltanod és utána újra engedélyezni, csak ha ráfutás vagy keretezési hiba történt. |
Bejelentkezés
Hirdetés |