Fórum témák
» Több friss téma |
Fórum » PIC - Miértek, hogyanok haladóknak
Szerintem cseréld ki a C1-et elektrolitra.
Kivettem a C1-et teljesen, mert csak úgy nem füstölt el a BAV70.
A c1 polaritása jó? Nem volt véletlenül fordítva betervezve vagy csak beültetve? Mert amúgy annak jónak kellene lenni, esetleg a BAV közös lába és a kondik közé lehetne tenni egy áramkorlátozó, párzíz ohm-os ellenállást.
polaritás helyesen raktam be. De szerintem máshol kellene lennie a hibának, mert ha lehúzom tápról, az óra nem megy tovább az elemről. Pedig pont az lenne a lényeg.
Elvileg ha minden nélkül direktbe rákötném a 3V elemet az órára, akkor tökéletesen működnie kellene, nem?
Az óra Vdd-je el van szeparálva az áramkör többi részének a Vdd-jétől?
Nem egészen értem mire gondolsz.
A Bav70 felől kapja a VDD-t, máshonnan nem. A Dióda egyik lába Vcc-n van, a másik meg az elem pozitívján és a közpéső közös láb meg az órához.
Nalam is megtortent az MCLR megnyomasa Hiaba volt GIE torles, kenytelen voltam felebredni
Szoval ha megnezed ezt: Idézet: „MAC W4*W5, A, [W8]+=6, W4, [W10]+=2, W5 ; Multiply W4*W5 and add to ACCA ; Fetch [W8] to W4, Post-increment W8 by 6 ; Fetch [W10] to W5, Post-increment W10 by 2 ; CORCON = 0x00C0 (fractional multiply, normal saturation)” Akkor egyertelmu ebbol itelve, hogy a szorzas eredmenyet hozza adja az accumulatorhoz! Ezzel szemben a: Idézet: „MPY W4*W5, A, [W8]+=2, W6, [W10]-=2, W7 ; Multiply W4*W5 and store to ACCA ; Fetch [W8] to W6, Post-increment W8 by 2 ; Fetch [W10] to W7, Post-decrement W10 by 2 ; CORCON = 0x0000 (fractional multiply, no saturation)” eltarolja a szorzas eredmenyet. Nem lehet, hogy ez az ami picit megtevesztett? Mert amugy en is ugy latom sehol mashol ezt az "aprosagot" nem emliti...
Csak egy kicsit belekontárkodom, mivel én nem foglalkoztam még egyáltalán a dsPIC-ekkel, pedig beszereztem egy 30F-et már erre a célra:
A beidézettek "fractional multiply"-t írnak mindenhol, aminél az eredmény igazítása a legfelső bithez történik, nem a legalsóhoz. Lehet, hogy pont emiatt az igazítás (és a 17 bit) miatt történik egy eltolás is a szorzás után. De mondom, ez csak egy kósza ötlet, lehet, hogy semmi alapja nincs.
Az a BAV 200mA-es. 1usec-ig elvisel 2A. Nagyon nagy gebasznak kellett ott lennie, ha az elfüstölt! Valamit nagyon elnéztél ott szerintem.
Szilva által ajánlott áramkorlátozó ellenálást(pl. 33ohm) nyugodtan beteheted, mert olyan mint ha ott se lenne, ha az óra áramfelvételét nézem, viszont megvédi a diódát a túl nagy lökésszerű áramtól. Mert csakazt tudom elképzelni, hogy a bekapcsolás pillanatában a kondi 2A-nél nagyobb áramot vett fel és ez átszúrta a diódát. A másik meg az elem. 1,7V-tól ennek az órának mennie kell. Ha a Vss közös és nincs más galvanikus kapcsolat, akkor is simán. Ha van, akkor is, de akkor nagyobb a zavarérzékenysége. A doksi leválasztott tápot ajánl, ami szerintem túlzás, de legalább a külön stabilizátor jár neki.
Erre gondoltam. Ha a dióda elfüstöl, akkor ott elég nagy áram lép fel. Ezt egy soros ellenállással lehet korlátozni, de mondjuk a korlátozás mellett érdemes lenne meg is mérni, hogy mennyi az annyi. Ha tényleg irreálisan nagy, és nem csak a bekapcsoláskori áramlökés, amit a kondi feltöltése okoz, akkor annak az okát ki kell deríteni (pl. meg lehetne próbálni, hogy az óra SDA/SCL lábait leválasztani az áramkörről).
Idézet: „Hiaba volt GIE torles” Érzékeltem, jó poén volt! A MAC röviden ennyit csinál: A = A + (x*y), azaz A = A + (W4*W5) Ha A = 0 kezdéskor, akkor: 0+(2*2)=4 Ezzel szemben az eredmény A-ban a szimuláció és az adatlap szerint is(csak ott más számokkal)..: 0+(2*2)=8 !!!!! Mondom ott a 2*17bites szorzó egység és a 16bites regiszterek közötti shift lehet a titok. Délután jobban rámozdulok, mert tegnap iskolakezdési bevásárlás volt.
Azt hiszem neked van igazad! Más megoldás nincs. Még megpróbálom áttölteni az A-t külső regiszterbe, és meglátom mi kerül ki!
Köszönöm a tippeket. Kipróbálom a kondi bekötésével és majd beírom a fejleményeket!
Üdv.
Alátámasztásképpen itt van - ez - a doksi, ahol jobban bemutatják a szorzó modult. (régebben benne volt minden az adatlapban, ma már úgy kell összevadászni. Persze nem akartak 1000 oldalas doksit írni, nehogy elriasszanak bennünket! )
Ha jól látom akkor a CORCON-al lehet valamit vakarni a módokon, majd kipróbálom...
Nem ez kell neked?
Idézet: „Register 2-2: CORCON, Core Control Register (Continued) bit 1 RND: Rounding Mode Select bit 1 = Biased (conventional) rounding enabled 0 = Unbiased (convergent) rounding enabled bit 0 IF: Integer or Fractional Multiplier Mode Select bit 1 = Integer mode enabled for DSP multiply operations 0 = Fractional mode enabled for DSP multiply operations” Meg szerintem a ProgRef pdf-ben a 4.12, a 4.16 es 4.17 is ide vag.
De szinte biztos. De itt nincs most MPLAB, majd otthon...
Úgyvan! Végre azt csinálja amit akartam!
Már megszoktam, hogy sok vezérlőbitet kell beállítani egy PIC-ben, de ezekben a 16bites példányokban aztán van lehetőség! Ja igen, a megoldás hátha érdekel valakit: (#DEFINE MPASM => .macro ASM30. Így értelmezzétek)
Helló!
Eljött ismét a pillanat, hogy PIC-hez kelljen nyúlnom. Egy Rádió vezérelt vizi járművön dolgom, aminek a távirányítójába az enkóder PIC-el dolgozik (az rf rész már megvan az OK) A baj az, hogy van pic-em, van égetőm, használtam is mindkettőt együtt másik projekthez, és hibátlanul felprogramozódott és működött, most egy másik programmal akartam felprogramozni a a mcu-t, de mindig égetési hibával rinyál az IC prog. "Verify failed at adress ......." A pic típusa 16f877A. A programot Basic-ben írták, Proton complier-el fordítottam hex-be. Mi lehet az oka annak, hogy nem tudom felprogramozni? üdv
Most nem ertem mi a hiba? Nem programozodik fel a chip, nem? Azt irtad masik szoftverrel szeretted volna ezt elkovetni, holott az elozo szoftverrel mar sikerult, az ujjal meg nem - akkor a regivel meg mindig kepes vagy azt a programozast sikeresen veghez vinni?
Amugy milyen programozo hw? Es milyen sw-ekrol van szo?
Üdv
Hogyan tudnám legegyszerűbben megoldani azt hogy egy PIC jelére egy 240V-os (hálózati) mágneskapcsoló meghúzzon? Ha egy 240V-os (vagy 800V-os) kapcsoló tranzisztor bázisára kötöm a PIC jelét akkor az zárja az áramkört a nagyfeszes relének? Mert jelenleg úgy működik hogy a PIC egy 5V-os kapcsoló tranzisztor vezérel ami zár egy 5V-os relét ami zár egy 24V-osat ami zárja a 240-est... Van vmi egyszerűbb? Köszi
Egy relét (a 24 V-osat) ki lehet hagyni, mert léteznek olyan relék, amiknek a vezérlőfeszültsége 5 V, de 250 V AC kapcsolására alkalmasak. Közvetlenül (én legalábbis) nem kötném rá a PIC-re azt a tranzisztort vagy fetet, ami a nagyfeszültséget kapcsolja.
Szilárdtest relével lehetne a legjobban egyszerűsíteni, csak azok elég drágák.
A hálózattól a PIC-es részt galvanikusan mindenképpen el kellene választani!
Az elválasztott vezérlést szilárdtest-relével, vagy pl. optotriakkal lehet megoldani. Ha az optotriak teljesítménye túl kicsi, akkor egy nagyobb triakot kell kapcsolni vele.
Szia!
Szeretnék egy kis segítséget kérni. Összeraktam egy kis panelt a mellékelt bekötéssel FT232 felhasználásával. Kipróbáltam, a PC rendesen felismerte és feltelepítettem a drivert. Majd próbáltam a terminálon keresztül nézni, hogy a PIC-től milyen adat jön. Sajnos a terminálon nem az az adat jött amit vártam. Néhány zavaros karakteren kívül mást nem kaptam (<00>). Nincs ötletetek esetleg, hogy mi lehet a baj? Esetleg az MPROG-al kell valamit beállítani, amit nem tettem meg? A PIC oldali kód szerintem jó, mert amikor csak sima Max232-őt kötöttem be, akkor az adatok szépen megjelentek a pc-n. Lenne esetleg valami ötletetek? Köszönettel: Zoli
Az a hiba, hogy nem íródik bele a program a chipbe mert égetési hibát említ az ic pro. Ezzel programoztam régebben is meg msot is, hardver is ugyanaz (3bmi JDM).
Tegnap uyganezzel a felállással programoztam fel egy 16f876-ot az simán ment. DE ezt a 16f877a-t is programoztam már fel ezzel a HW- el akkor simán ment, most már ezt sem lehet. Remélem most érthetőbben fogalmaztam. üdv
Mivel tesztelted?
Az ilyet én mindig úgy tesztelem, hogy először a TTL szintű RX és TX lábakat kötöm össze, pl. ha foglalatban vannak, akkor IC2-t és IC3-at kivéve, és egy darab ellenálláslábbal összekötve a foglalatok megfelelő lábait. A teszt pedig pl. a hyperterm-mel történik, a soros portot megnyitva a leütött billentyűt kell visszakapni. Ha a TTL szintű teszt rendben van, akkor a szintillesztők után is csinálok egy ugyanilyen visszahurkot, ugyanazt kell látni, amit leütök, az megjelenik a hyperterm-ben. Ha mindkét teszt OK, akkor az illesztő jó, ha mégsem megy valami, akkor már csak a bitsebességgel lehet gond, vagy az ellenoldali szintillesztővel.
Sziasztok!
Nem tud véletlenül valaki digitális hőfokmérő rajzot? LED kijelzőset szeretnék építeni !
Dehogynem, a kapcsolások között van , egy ledsoros.
Szia,
Ertem, szoval ezt a programot amit mellekeltel be szeretted volna programozni. Nem ismerem ezt a programozot amit hasznalsz, de nem latok a forras kodban config biteket, nem tudom hogy a code vedelem nincs-e veletlen beallitva mikor programozol? ill az afordito nem pakolja-e bele, nincs-e neked az beallitva a fejlesztoi kornyezetedben, hogy code protection? Amugy megnezheted, hogy programozaskor a Vdd es Vpp jelszintek mekkorak, ha lehet mericskelni a programozodat akkor a PGD / PGC jeleket is le lehetne talan merni. Azonkivul nem tudom milyen a kapcs rajz, de gondolom van egy hidegito (100nF) kozvetlen a PIC Vdd es Vss labain?
Googli azert nagyon jo, mert beir az ember nehany kulcsszot es a kovetkezo masodpercben ilyen oldalakon talalja magat az ember:
Digital Thermostat with LED Temperature Display Homemade temperature LED display for PC
Köszönöm az ötletet, ellenőrzöm.
Egyébként ha az USB csatlakozónál a középső két vezetéket esetleg felcseréltem, az okozhat ilyesmi problémát? Vagy akkor a portot sem ismerte volna fel? |
Bejelentkezés
Hirdetés |