Fórum témák
» Több friss téma |
Fórum
Gondolom ki is mérted őket, tehát marad a szoftveres debug. Joystick-ek középértékeit vizsgáló kapuk kimenetét szintén kapuzd össze, és tedd rá egy kimenetre, dobj rá egy led-et, akkor megtudod, hogy a uC is úgy látja-e induláskor, hogy minden középen van..
Szia, igen közép állásban vannak! Nem találtam hibát benne! Lassan 10 éve ketyeg az eredeti nyák, csak most összetörték a dobozát, így új nyákot csináltattam hozzá! Elindul a proci rendesen, mert elkezd villogni a led is és az lcd is elindul!
Szóval tanácstalan vagyok!
HW-el nincs hiba? Proteus alatt is rendben a szimuláció, ha az ADC-k középállásban vannak induláskor.
A hozzászólás módosítva: Aug 12, 2018
Sziasztok!
Szeretnék egy kis segítséget kérni. Készítettem egy vezérlést, ami 4 joystick állását figyeli, 8 db relét kapcsol és egy PWM kimenetet. A lényege az, hogy 4 hidraulika munkahengert működtet. Eltolok egy joystickot, meghúz az adott irány relé, és a PWM elkezdi zárni a söntágat. Ez működik is már jó pár éve. Egy olyan probléma van azonban vele, hogy a PWM-nek 1023-on tehát teljes magas szinten kellene indulnia amikor feszt kap a vezérlő panel.. Nekem akkor ugrik magas szintre ha hozzáérek bármelyik joystickhoz egy pillanatra, és utána már tökéletesen működik. Szimuláció közben is jónak tűnik. Ha az ADCket átírom 512-re akkor szépen beáll a PWM magas szintre tehát 1023-ra. Ha szimuláció közben beállítom mind a négy ADC bemenetet 512-re akkor is jól indul. Nagyon sokat gondolkoztam, nézegettem, de nem tudom mit ronthatok el. Valami ötlet kellene, hogy merre lehet a hiba. V4. parsiccal csinálom most, de annó 3.56-al készült. Előre is köszönöm a segítséget. Peti
Új verzió:
4.18.7.21 (21.07.2018) ---------------------- - New: - DS3231 added to the I2C-devices. (Extremely Accurate Integrated RTC/TCXO/Crystal) - Fixes: - Incorrect display of macros, if several inputs and/or outputs have been deleted. A copy block óta az elmúlt kér évben az egyetlen érdemi fejlesztés. Hiába sírok nekik a custom block lehetősége miatt, válaszra sem méltatnak.
Nálam 10 en is fut, valami más lesz a probléma .
Üdv. Szükségem lenne egy kis program elkészítésére. A Parsic 3.56 viszont ebbe a gépembe még nem volt feltelepítve. (Win 8.1)
Gond nélkül feltelepíti, viszont ha már indítanám a programot, nem történik semmi, egyszerűűen nem nyillik meg, de nem is ír semmilyen hibát. Lehet hogy 8.1en már nem fut?
Bevallom, nem gondoltam erre (tudáshiány
)... Eddig csak a 16f628-at használtam, mert elég volt a ki/bemenet száma és az MCLR-t mindig bemenetként használtam. A program így már működik...
Csak egy apró megjegyzés mert most látom, hogy félreérthető a hozzászólásom.
Idézet: Ezt áltlánosságban a bemenetekre értettem, nem az MCLR-re. „A felhúzás mindig jobban bírja a zavart, mint a GND-re lehúzás.”
Igen, jól emlékszel! Ismét köszönöm!
Nem zavarja, Reset állapotban tartja a kontrollert. Most nem tudom megnézni de ha jól emlékszem, a 16F628A esetén bemenetként is lehet használni az MCLR lábat. Ha minden igaz, 16F873A-nál a láb csak és kizárólag MCLR-ként üzemel.
Ez gátolná a működést? A 16f628A zavar nélkül működött ilyen környezetben.
Az MCLR lábat +5 V-ra kell húzni, nem GND-re. A felhúzás mindig jobban bírja a zavart, mint a GND-re lehúzás.
Sziasztok!
Segítséget kérnék Tőletek, egy Pic873A parsicos programmal kapcsolatban. A programot hiba jelzés nélkül lefordítja, be tudom írni a vezérlőbe mégsem működik. Az áramköri környezetet amibe került, már sikeresen használtam (ugyan 16F628A vezérlőnél belső oszcillátorral). Miden be és kimenet testen 1k-val, 4Mhz kvarc + 2X22pF. A 4X20 karakteres LCD az 1. és a 3. sorba négyzeteket ír ki, a többi üres. Olyan mintha a PIC el sem indulna. Felteszem a PARSIC programot és a NYÁK tervet, hátha tud valaki segíteni. A nyák alsó része BAKMAN hőfokkülönbség kapcsolója működik. A NYÁK-terv - felhasználói kérésre - törölve. A hozzászólás módosítva: Ápr 26, 2018
Moderátor által szerkesztve
Működni eddig is jól működött, csak a kiegészítéssel nem próbáltam még, mert nem fért a pic-be, ahogy kibővítetem, már nagy lett. De holnap kipróbálom, mert már belefér bőven a 628-ba.
Oké, de a "jó működés" nem kizárólag a UC program függvénye, hanem a feladathoz kitalált logikai megoldásé nagyrészt..
Közben, már megoldódott, csak nem írtam még le. Igen,a számláló 8 bit-en maradt.Átállítottam mind a kettőt 16bit-re és már nem is írta a hibát. Gondolom, ha hiba nélkül megcsinálja az Asm fájlt, akkor jó lesz, működni fog.
A hozzászólás módosítva: Ápr 3, 2018
Igen lehet használni, csak következesen. Ha az IF2 komparátor bemenetén 400 van (nem látom jól), akkor nyilván a ZV3 számlálónak is 16 bitesnek kell lenni. Ha az IF2 bemenetén 100 van, akkor az belefér a 8 bitbe, tehát az IF2 és a ZV3 is lehet 8 bites.
Jelenleg azért jön elő a hoba, mert a számláló 8 bitre van állítva, a komparátor pedig 16 bitre. Így a program "nem állítja elő" ( nem definiálja) a ZV3 számláló felső "ZV3_HI" byte-ját a memóriában. Így a 16 bites komparátornak ez a változó hiányozni fog. Meg lehet adni a felső byte-ot a DAT modullal, ha annak név megadásakor ZV3_HI nevet adsz. Így lefoglal a program egy ilyen nevű változót és az IF2 nem reklamálna, csak abban mindig nulla lenne. Tehát nem tudná elérni a 400-at a számláló, hiszen nyolc bit esetén az maximum 255. Remélem így érthető. A hozzászólás módosítva: Ápr 3, 2018
Beállítottam az összeset 8 bit-re, csak a két relé közti időt nem, ami 400-ig számol és a mágneskapcsoló, ami 700-ig számol., de ezzel hibával szembesültem. Erre írtad, hogy a dat fájllal ki lehet védeni? Azt hogyan kell?
Egy programon belül lehet 8 és 16 bites számlálókat is használni, ha csak kebeset számol? Ezt úgy értem, hogy ha csak 20-ig számolok, akkor 8 bites, ha pedig 700-ig akkor 16bit-es?
A hozzászólás módosítva: Ápr 3, 2018
Lehet a modulokat 8 és 16 bites módban működtetni. Azért javasolják a 16 bites módot, hogy ne legyen gond. Mert pld. egy 8 bites számláló kimenetét egy 16 bites komparátorral dolgozzuk fel, akkor annak hiányozni fog a számláló felső byte-ja.
De amúgy ez is megkerülhető, ha tudjuk a változó nevét. Pld. ZV1 számláló alsó byte-ja ZV1 néven van, (felső ami nincs ha 8 bites) ZV1_HI nevű. De ha ezt definiáljuk a DAT modullal, meg fogja találni. A lényeg, hogy nem szabad keverni a 8 és 16 bites modulokat. De ha nincs egymásra hivatkozás, nincs gond. Viszont nyilván 16 bites műveleteket végezni egy 8 bites procival, hosszabb asm file-t hoz létre. A hozzászólás módosítva: Márc 29, 2018
Erről a 16 bites dologról kicsit mesélnél? Még nem nagyon tudom hogyan kell kezelni. Mostanában kezdtem el próbálkozni és valaki az egyik programnál azt javasolta állítsam át mindet 16 bites re. Van olyan számláló ami 700 ig számlál. Az ismételt jeleket pedig majd megnézem. Eddig is sokat segítettél ,ezt köszönöm .
Indokolatlanul használsz 16 bites számlálókat és komparátorokat, miközben 2-ig vagy 20-ig számolsz csak. Ha ezt kiveszed, már is belefértél a PIC-be.
Van amit kétszer képezel ugyan azt a jelet. Pld. a "szélerősség mérő" felirat alatt a P1:AUTO MOD és P1:TOTAL RESET az LG35 kapuban, majd ugyan ez alatta az LG37 kapuval. Minek? A hozzászólás módosítva: Márc 29, 2018
Köszi. Igazad van az XOR-t ki is szedtem belőle mind,így nyertem elég sokat. Most 2053-nál járok és 2048-ig kellene levinni. Az ONE-SHOT-ból viszont csak egy van, ami le van húzva gnd-re. Valamivel tudom.még egy kicsit lejjebb vinni?
A hozzászólás módosítva: Márc 29, 2018
Hello! Én pld. látok egy halom XOR kaput, aminek egyik bemenetén logikai magas szint van. Viszont így az nem több mint egy sima inverter. Vagy is a következő kapu bemenetét negáltra állítva ugyan az az a eredmény jön ki.
Egyébként én azzal sem értek egyet, hogy egy csomó ONE-SHOT van beépítve, aminek bemenete a GND-n van, így törli bekapcsoláskor a számlálókat. Mert ha megnézem a generált ASM programot, az inicializálásként a változók törlésével kezdődik. Márpedig egy számláló kimenete is egy változó, ami törölve épp olyan mint ha Reset-ből indulna. (Lehet hogy ez ellen lesznek ellenvélemények, de én így látom..)
Sziasztok. Csináltam egy parsic programot,ami jól is működik,de közben bővítettem egy kicsit és így már nincs elég memória a 16f628-ban és nem tudom rátenni. Szereztem egy 16f648-at, de a parsic 3.56 nem ismeri, csak a parsic 4. Az lenne a kérdésem, hogy hol tudnék spórolni a memória területnél, vag y van e valakinek parsic 4,aki át tudná nekem írni Asm-be,vagy hex-be.
Majd ha hazajön az én rendszergazdám(ua mint nálad) majd megnézi.A másik linket megfúrta a gugli. Azért köszönöm a fáradozásodat.Üdv.klaszlo
Azt én sem tudom mit rontottál el , a rendszergazdám (a fiam) a 3.6 os verziót linkelte
Letöröltem az előzőt,letöltöttem a p-zippet ,kicsomagolás után setup 356.exe és feltelepíti a 3.5.6.15 öt ? nem tudom mit csinálok rosszul ? Mára ennyi megyek É-műszakba.Köszönöm a segítséget.
Igen kicsomagolás után használható , elvileg nem kell telepíteni
|
Bejelentkezés
Hirdetés |



)... Eddig csak a 16f628-at használtam, 
