Fórum témák
» Több friss téma |
Ha nonblocking style kódolsz, nem kellene problémát jelentsen a késleltetés sem. Sajnos az a programozási stílus 10x-esnél nagyobb erőfeszítés, és gyakorolni kell. Az olcsó végleges hardverhez az előzetes szoftver fejlesztés lesz a több.
Példának okáért egy késleltetés, ami mondjuk annyi volt, hogy "delay(10);", ezután timer feltöltés lesz, interruptban folyamat kiolvasás, gépóra nyilvántartás, külön esemény végrehajtási blokkok, és idő limitnél a tényleges végrehajtás - időlimit előtt csak sima skip. A hozzászólás módosítva: Jan 26, 2017
Hogyan lehet egy 32 bites float változót 8 bites "csomagokra" bontani? ( lehetőleg CCS-C-ben ... de ha csak az elvét tudja valaki lehet az is segít)
Eepromba szeretnék letárolni egy 32 bites float változót, de a memóriát csak 8 bitenként tudom írni és olvasni. CCS-C-ben vannak a make8, make32 függvények, ezekkel szét tudok darabolni és összerakni egy 32 bites integert, de hogyan lehet egy float-tal megycsinálni ugyan ezt? 24C32 külső I2C eepromról lenne szó. A hozzászólás módosítva: Jan 26, 2017
Ha jól emlékszem, akkor az union a kulcsszó. Előnye függvényekkel szemben, hogy nem műveletet végez, hanem újra definiálja a tárterületet, más néven.
Valahogy pointerezéssel is meg lehet kapni indirekt a lebegő pontos szám tartalmát csak már nem emlékszem rá, holnap utána olvasok, vagy egy fórumtárs hátha tudja
![]()
Köszönöm a választ, megoldotta a problémát. Mondjuk szerettem volna elkerülni, mivel a c1, c2 portokra kell kötni a motort, ami miatt módosítani kell a panelt, de ettől függetlenül jól kezeli program most már. Még egyszer köszönöm!
![]()
Sziasztok!
Adott egy PIC18F65k40 kontroller, ami 3 különböző UART modulon keresztül fog kommunikálni. Ezen kívül egy előlapi enkódert kellene kezelni vele. Hogyan lenne célszerű kivitelezni, hogy megfelelően kezelje a kommunikációk mellett az enkódert is? Köszönöm előre is a segítséget.
Aszinkron állapotgépekkel egyetlen főciklusban - hogyan máshogyan?
Ennyi perifériát csak megszakítással szabad kezelni.
Például a soros portokat FiFo pufferbe írod, ha van rá ideje a processzornak, oda/onnan mazsolázhat. Az enkóder szintén kezelhető megszakítással. A hozzászólás módosítva: Jan 27, 2017
Köszönöm! Most már tudom merre induljak... Át kell néznem az union-os és a mutatós témákat! Tudtam, hogy előbb utóbb szükségem lesz rájuk!
![]()
Szisztok. Még régebb (6 éve) építettem egy digitális órát hőmérővel amit egy pic 16F628A vezérel. Most nagy bajban vagyok mert az óra egyszer csak nem akar egyetlen 5 számot sem kíírni bárhol is legyen az. Tehát pl 05:56-nél csak azt jelzi ki, hogy 0 : 6. A többi számot rendesen kíírja csak az 5 nem. Mi lehet a baj? Válaszokat előre is köszönöm.
Idézet: „Mi lehet a baj?” Elromlott? Viccet félretéve: nem értem, hogyan akarsz segítséget kapni, ha minimális információkat sem osztatsz meg. Kapcsolási rajz, kód, stb.
Gyanúsan szoftverhibának tűnik pedig...
![]()
Ez lenne. Itt van minden rajz, program stb. Éhttps://www.hobbielektronika.hu/cikkek/digitalis_ora_homerovel.html
Idézet: Első nekifutásra próbáld meg újra rátölteni a programot. A külső hardver elemek nem tudnak ilyen hibát előidézni. „A többi számot rendesen kíírja csak az 5 nem. Mi lehet a baj?”
Első lépésként olvasd ki a kontrollerből a programot és hasonlítsd össze azzal, ami az oldalon van.
Vagy még inkább első lépésben egy kérdés: mióta működik folyamatosan az eszköz? Volt az kikapcsolva az elmúlt 6 évben?
Ha valami ciklusváltozója átbillenhetett, és hibát okozhatott, rövid távon egy sima újraindítás megoldja. Aztán majd javítani a programot, ha kiderült, hogy tényleg olyasmiről van szó, és frissíteni majd valamikor.
Fejtsük vissza a hex-et?
Ezért nem értem soha ezt a titkos a forrás dolgot a cikkekben lévő "jelentéktelen" programoknál. Már 6 éve meglátta volna valaki a hibát és szólt volna, ha van forrás is. A hozzászólás módosítva: Jan 28, 2017
Nem biztos, hogy azért titkos, amire gondolsz. Lehet, hogy a fejlesztőnek ciki a forrás, mert olyan megoldások vannak benne, amit szégyell.
morbi és a többiek!
Köszönöm a válaszokat. Még egy kicsit bajlódnom kell a mechanikával. A "csúszka" nem tökéletes, pedig egy párat már kipróbáltam. Az ablaktörlő motor kiválasztása ill. megvétele után állok rá annak méricskélésére. Fotocellás-tárcsás megoldás nekem is eszembe jutott, de azzal legalább annyi meló lenne, mint a végálláskapcsolókkal. A komparátoros megoldás szimpatikus (ADC nincs), ebbe az irányba fogok elindulni. Ha majd meg lesz a motor, pajti2 bejegyzését is még egyszer alaposabban átolvasom majd. Addig is mindenkinek köszönöm a hozzászólását. Üdv picipic
Hát a hiba az elég hihetetlen. HW hiba nem valószínű, mert a kapcsolásnak fogalma nincs az 5-ös és mondjuk a 6-os különbségéről.
Ez lenne az első számomra ismert hiba, ahol egy PIC megbutul, de következetes marad. Egy dolgot azért el tudok képzelni, ha pl az EEPROM-ban tárolgat az számokkal (pl 5-össel) kapcsolatosan valamit, az a hely nagyon rendszeresen írva van és elöregedett. Persze lehet SW hiba is, állítsd vissza a dátumot tavalyra, hátha ... A működés és nem működés között volt valami (Villámcsapás, földrengés, áramszünet, évváltás, gyerek általi gombnyomogatás ![]() Teljes tanácstalanság esetén pedig új PIC, új égetés, megint hátha... A hozzászólás módosítva: Jan 28, 2017
Sziasztok!
Most kezdtem PIC-elni és felmerültek olyan problémák hogy..... -sok próbálgatás árán rájöttem hogy MPLAB X IDE -vel hogy kel lefordítani a programot hex-re és hogy tudom írni, olvasni a PIC-et MPLAB IPE-vel irtam is bele egy alap led villogtató programot többszöri módosítás után is tudtam írni aztán egyszer csak nem... -honnan tudom hogy tönkrement egy PIC? mert a beleírt programot futtatja de nem tudom írni? ilyen hibákat ír: Idézet: „Target Device ID (0x3fe0) is an Invalid Device ID. Please check your connections to the Target Device. Target has invalid calibration data (0x3f).” PICkit3 clonnal programozom-nám a 12F675-met, egy gyári próbapanelon csücsül és ICSP kivezetésen keresztül írnám tápot usbn keresztül kap a panel a szg-től , csatlakoztatásnál ír valami feszültség problémát is? Ez mi lehet? A hozzászólás módosítva: Jan 29, 2017
Azt még írd le, hogy milyen Pic-et használsz és mit , hogy csinálsz mert ezt fogják legelőször megkérdezni tőled a hozzáértők.
A PICkit3 alaesetben nem ad ki tápfeszültséget a programozandó kontroller számára. Innen a "csatlakoztatásnál ír valami feszültség problémát". Külön ben kell állítani, de 4.75V -ot kell beállítani 5.00V helyett, mert 5.00V -ot nem képes kiadni.
Az nem jó ha cél áramkör saját tápja be van kapcsolva?
Én így tudtam írni, de most már így sem...
Csak arra figyelmeztet, hogy győződj meg róla, hogy az a PIC van-e csatlakoztatva fizikailag, mint ami a programozónál ki van választva. Mert ha egy 3,3V-os PIC kap 5V-ot, akkor annak kampec.
Én cmd tool-al használom a pk3-at, és mindig target powered opciót használok, valahol az mplab x-nél is kellene legyen rá opció.
Sziasztok,
Most ismerkedem a pic32-es családdal eddig csak kisebbekkel volt dolgom, egyenlőre csak egy lcd-t szeretnék vele meghajtani és próbálgatni, viszont a programozó sehogyan sem ismeri fel. Elkezdtem utána olvasni és lehet hogy elkövettem egy szamár hibát, miszerint a Vcap lábra nem kötöttem semmit, ez okozhatja azt a hibát, hogy az író nem látja a pic-et? (Pickit3) |
Bejelentkezés
Hirdetés |