Fórum témák
» Több friss téma |
Ehhez minek kell c kód? Sima step dirrel kell vezérelni.
No, csak sikerült a motorvezérlő működtetése.
Most szükségem lenne PWM jelre. 628A PICet használok. Csinált már valaki ilyesmit? Egyáltalán a Flowcode-dal meg lehet ezt oldani, yagy ITT kell már a C kód? (ha jól tudom számlálóval és egy komparátorral lehet megoldani, de ez csak az elmélet, amit olvastam).
Szia! pwm-et kb 1 lappal visszább kb 5 példával szemléltetve olvashattad volna ha használod a keresőt vagy legalább a lapozást. És igen ha akarsz használhatsz c kódot de ehhez az egyszerű dologhoz elegendőek a beépített komponensek is..
Köszi. Valóban nem értem még oda az elejétől kezdtem olvasni.. de attól tartok ennyit képtelenség végig olvasni.
Kedves Hozzáértők!
Tapasztaltátok már az 5.2-ben hogy egy ADC (kb. az ötödik a sorban) felrakása után tönkremegy az INT1 működése? Befordítva, beírva csak azt látom hogy az INT1 folyamatosan lefut (növeli a változó értékét)... Brrr... Lehet hogy van erre is javítás... Egy hétig legeltem az ADC komponens javításának megtalálásán... ![]()
Szia Próbáld meg felfrissíteni 5.4 re, rengeteg frissítést tettek bele lehet hogy ez is javítva lett!
Bővebben: Link
Szerintem az ADC-el nem volt gond, a button makró volt hibás, annak van javítása.
Biztos nem vref alapu merest hasznaltal... Azert nem talalkoztal a hibaval.
18F4620-on kísérletezgetek.
Ebbe a hibába futottam bele... Lényeg: ha vref-et használó adc-nél ezen a vezérlősorozaton nem olvasta be rendesen az értéket, illetve nem számolta ki rendesen. Bővebben: Link És a megoldás... A hiba tehát ismert és javított lett az 5.2-ben csak lassan találtam meg. Az 5.4-ben meg már benne van az új és működő PIC_CAL_ADC.c. (#1280462)Ez a másik hiba szintén 4620-on jött elő nekem. Itt egy működő programhoz egy újabb db ADC komponenst hozzáadva az INT megbolondul és folyamatosan lefut. (hazaérek felteszem a kódot is) 5.4 re frissítve is produkálja a hibát - az INT1 az érintett és az AN1-AN2-AN6-AN5-AN4 felrakásáig működött helyesen majd a AN11 felrakása után kezdett folyamatosan lefutni. Persze szimulátorban jó.
Itt vannak a programok...
Hiba: Ha az AN11 bemenetet aktiválom akkor az INT1 aktívvá válásakor nem egyszer fut le a megszakításban meghatározott makró hanem folyamatosan. Amíg a kapcsoló lenyomva van. (Mindegy hogy leeső vagy felszálló ágra aktív az INT)
Bár most veszem észre hogy a jó verziónál is az INT hatására 2-ször fut le a makró egyszer mikor leesik a szint egyszer mikor felfut.
Amit megjavított hogy optót tettem a kapcsoló és a PIC közé
![]() Addig is milyen c kódot kellene beszúrnom hogy a jól működjön? Lessem ki a jól működőnek a c kódjából?
Mit lehet ilyenkor tenni?
Szőke kérdés de hát az vagyok.
Sziasztok kis segitségkérés ismételten. Szereztem egy 12f675-öt és szeretném az egyik lábat feszmérönek használni a töbit pedig ledkimenetelnek. A kérdés hogy hogyan állitsam be a bemenetelt a mésik pedig a fizikai rész hogy hogyan éitsem fel a bemenetet. Tudom hogy nem ezzel kéne kezdeni de a diszlexiám miatt a kész dolgokbol tudok tanulni.
Köszönettel Kovács G
Szia! Ha jól nézem ez valami autós feszmérő akar lenni.
Én úgy csinálnám hogy az autóban max 15 volt lehet de mivel bármi lehet így én 20 voltot vennék alapnak! a pic max 5 voltot tud mérni tehát kell elé egy fesz osztó 20/5=4 Tehát 4-es fesz osztó kell ami azt jelenti hogy a pozitív és a adc láb közé 3x értékű ellenállás kell az adc és a test közé 1x (x= az ellenállás értékével ami lehet 1k ohm) de ha kisebb akkor áramot kell számolni! A számításnál pedig 20=255 ekkor méri a maximumot a pic 8 bites módban, tehát 1 volt =12,75 egység 10 volt = 127,5.
Szia
Egy kicsit alakitottam a tiédet
Szia ez nem auto hanem egy etetöhajó és két 6V-os aksi van sorbakötve tehát a max fesz. 13.6V de igazábol nem baj ha negyobb feszt is tudok mérni mert legalább univerzálisabb. KÖSZÖNÖM
![]()
Köszi csak van egy kis bökkenö, nekem csak 4.akárhányas verziom van és nem tudom megnyitni
![]()
Az baj nekem meg csak ez van 5.4
Szia !
Vref+ így jó lett ! Köszi ![]()
Kedves Hozzáértők...
Az Uintegert ugyanúgy tárolom az eprom-ban mint az Integer-t? És a ULong-ot (Long-ot)?
Szia siker köszönöm
![]() ![]()
Hello!
Megakadtam. Azt hiszem értem az elméletét a Timer számlálónak, de a gyakorlatban nem működik nekem a dolog. A következőt szeretném: A Timer1 konkrét időnként (mondjuk legyen 1 ms) adjon nekem egy megszakítást. Ilyenkor egy váltózó növekszik, és ha az eléri a 1000-et, akkor folytatódik a program, így vártam 1 secet. Ugyanakkor ha valami másnak csak 0,1 sec kell, akkor az csak a 100at várja meg. Próbálom beállítani, de nagyon nem olyan időközönként villog, mint ahogy szeretném. (sokkal lassabb). Tudna nekem valaki segíteni, hogyan mit állítsak a Flowcode-ban, hogy a Timer1 pl 1ms-enkét fusson le?
a timer1-be nem a kiszámolt idő kell, hanem 65536- idő
Ugyanis ha nem annyit írsz, csak akkor megszakít, ha átfordul, azaz eléri a 65536-ot. A másik, hogy olyan megszakítást csinálj, ami 100 után megszakit, és az növel egy másik számlálót, ha az eléri a 10-et (1000) akkor mehet a másik rutin is.
Nos:
A valóságban kb 3-4et villog másodpercenként. A szimulációban ha elindítom akkor világít vagy 10-12-20 másodpercig (ki sem tudtam várni). A kód pedig úgy néz ki, hogy a project optionsban az van beállítva, hogy 4 Mhz. A kódban pedig ha jön amegszakítás, akkor a váltózó (most) 0-t számol (vagyis mindig elvégzi a led-cserét). Nem értem. Mondjuk nincs külső oszcillátorom, a belsőt szerettem volna használni. Ezért a Configure Chipben azt állítottam be, hogy INTOSC I/O-t állítottam be. Lehet hogy ezzel van a baj? Valamit nagyon benézhettem, mert most a projst beállításokban átraktam 1 Mhz-re, és nem lett lassabb villogás. Foxi63: ez csak egy 8 bites számláló, szóval csak 255ig megy. A váltózót számlálós dolgot pont így csinálom, ahogy írtad. Csak kéne tudnom pontosan mennyi idő alatt jár le a 255.
milyen pic?
A timer 1 mindegyikben 16 bites szerintem.. Ha a configben belső oszcillátor van beállítva , attól méfg ha jól tudom be kell állítami 8 vagy 4 Megára szoftverből is alapból 250kHz de tényleg kéne a száma is....
16F628A.
Hülyén írtam le. Az első TIMERt használom, ami a 0-dik persze (bocsi). [bár most kicsit elbizonytalanodtam....) A belső oszcillátort jól állítottam be? (erről sehol nem találtam infót, hoyg ha nem külsőt akarok használni, akkor mit kell). És az órajelet jó helyen piszkálgatom (a project optionsban)? |
Bejelentkezés
Hirdetés |