Fórum témák
» Több friss téma |
OK
Mivel kezdő (vagy még az sem) vagyok, nekem tök mindegy hogy az a C CCS, vagy HITEC, ezért pont a ti tanácsaitok hatására úgy döntöttem, hogy felteszem a HITEC-et. Amiért nyögvenyelős mégis az egész: A (többször több helyről letöltött rar file sérült.) A próbapanelhoz is HITEC C-t küldött a kis kínai, amihez telepítő segítséget is adott videón - szó szerint kínaiul. Egyiket sem sikerült felraknom- tegnap éjfélkor adtam fel - egyenlőre.
Azt hiszem néha túl sokat írok és kérdezek.
Akkor most leírom rövidítve: - link (élő, jól működő C fordító) - letöltöm, behegesztem - [/b]működik - Köszönöm
Szia!
Etetni akarod a macskát, és a farkához nyomkodod a kaját Ha feltelepítetted az Mplab-ot, azzal majdnem teljes értékű assembler és c fordító is települ. A korlátozás kimerül az optimalizáció és az extended módú parancsok (remélem jól írtam, ha nem javítsatok ki!) használatánál. Mivel a támogatottsága nagyon jó, némi hibától és félkész programtól eltekintve, mást csak akkor érdemes használni ha bele akarsz nyúlni a programkódba! Legtöbbször a kezdők(mint én is) először utánépítenek, ilyenkor nem szükséges a kód megváltoztatása, csak beégeted a hexet és kész.
Ha az autós hasonlatnál arra gondolsz, hogy én tanulok nehezen, akkor lehet, hogy igazad van, mert már nem vagyok fiatal...
De itt másról van szó - 45 nap helyett 2 nap - rar file hibás - felugró semmit sem csináló másik program - egy működő programra, hibaüzenet ezek szerintem nem olyan bonyolult dolgok, de egy sorozatban bosszantóak. - és igen- türelmetlen vagyok, mert már indulnék.
Szia!
Nem akarlak lelombozni, de valami nálad nem gömbölyű a telepítéssel kapcsolatban. Talán túl hosszú és esetleg ékezetes karaktereket vagy szóközt tartalmazó állományneveket, elérési utakat használsz. Jó lenne látni, mit csinál / nem csinál. Nekem még debuggolni is sikerül az MpLab 8.84 alól...
Neked milyen C fordítód van?
Én is gondolom, hogy a telepítés során van valami gond, csak lövésem sincs, hogy mi. A file nevekkel nem hiszem, hogy gond lenne, mivel rövid ékezet nélkülieket használok : proba00, proba01 ... az elérési utam C:\pic\c-tanulas Hiába vettem le az egészet és tettem fel újra, az MPLAB működik, a C beágyazása nem. 2008 eleje vagyok regisztrált olvasója ennek a fórumnak, mégis csak most vannak az első kérdéseim. (Én ebből gondolom, hogy gond van ) Most kipihenem magam, este újult erővel folytatom. Addig is mindenkinek köszönöm a segítséget.
Neked milyen C fordítód van?
Én is gondolom, hogy a telepítés során van valami gond, csak lövésem sincs, hogy mi. A file nevekkel nem hiszem, hogy gond lenne, mivel rövid ékezet nélkülieket használok : proba00, proba01 ... az elérési utam C:\pic\c-tanulas Hiába vettem le az egészet és tettem fel újra, az MPLAB működik, a C beágyazása nem. 2008 eleje vagyok regisztrált olvasója ennek a fórumnak, mégis csak most vannak az első kérdéseim. (Én ebből gondolom, hogy gond van ) Most kipihenem magam, este újult erővel folytatom. Addig is mindenkinek köszönöm a segítséget.
A legbiztosabb, ha nem az MPLab telepítésébe nem szólsz bele, nem változtatod meg a könyvtárakat. Azt jó tudni, hogy az autoexec.nt-be, vagy config.nt-be többször is belekerülhetett a path bővítése, ezt ellenőrizd.
Természetesen nem szóltam bele a telepítésbe, amit javasoltál azt este megnézem.
Köszönöm Idézet: pl. ez is lehet hibás... a kötőjeleket és egyéb speciális karaktereket, ékezeteket kerüld !„C:\pic\c-tanulas” Ha már régen olvasod a fórumot, akkor ezt is olvashattad, mert már volt róla szó! Az autós hasonlattal élve: egy LEXUS-nál ( 'C' fordító ' ) azért nem árt elolvasni a gépkönyvet, mielőtt beülünk és nyomjuk neki, mert akkor nem biztos, hogy az autó lesz a hibás, ha nem teljesen úgy működik, ahogy Te várod! A HITECH 'C'-t nem tudom, honnan töltötted le több példányban, amelyek nem működtek: miért nem a Microchip honlapjáról töltötted le az eredetit ?! A nem működésnek azért lehetnek más okai is ( a windows azért ott van a háttérben, Te is a több C fordító és beállításai közül ki tudja mit hagytál meg alapértelmezettnek és ezek akár össze is akadhatnak... gondolod, hogy felhasználók ezrei ( akik esetleg nem is kezdők!) nem reklamálnának, ha egy program alapvetően nem működik jól ?! Szerintem próbáld meg leszedni a telepített C fordítókat, töltsd le a Microchiptől, telepítsd fel, próbálj ki egy demót vagy nagyon egyszerű programot ( nem LCD-s, SPI buszos rakétavezérlőt, hanem egy LED bekapcsolását!), ha nem megy próbáld meg kiküszöbölni a hibákat és majd utána kérdezz, ha már a Te oldaladról minden lehetségest megtettél! Jó lenne esetleg ilyenkot, ha feltennéd a projektedet, hogy akinek van fent HITECH C, az ki tudja próbálni és megmondja, hogy a hiba a projektben, vagy a telepítésben van ! Steve Idézet: „A HITECH 'C'-t nem tudom, honnan töltötted le több példányban, amelyek nem működtek...” Nem kell semmit sem külon letölteni, az újabb MpLab telepítéskor felkínálja a legfrissebb telepítését. Pl.: MpLab 8.84 a picc-9.83-win.exe -t tartalmazza.
Van egy par C fordito. MCHP XC, HiTech C, MikroC, CC5X, es....
Azt nem ertem, hogy pl a CCS C sajat IDE feluleten is fut. Ezt kellene kiprobalni. Felraktam egy par mintepeldat, talan azokkal kellene elkezdeni az ismerkedest. Vagy a CCS C telepito konytarban leledzo mintapeldakat kellene gorcso ala venni. Eleg komoly gyujtemeny van. A masik. Latom bevasaroltal komoly fejlesztorendszert. Na ez nagyon jo egy cegnel, ahol gyakorlott fejlesztok dolgoznak, es komoly projecteket kell kifaragni, de egy kezdonek akinek nincs gyakorlata inkabb a PK2 melle adott "Debug Express" (16F887) valo. Vagy pl a demo paneljeim kozul a 20 labas demo, mert abba hasznalhatod a 12Fxxx 8 labasokat, a 16FXXX 14 es 20 labas PIC-eket. Ezzel lehet probalgatni egyszeru projekteket, amig hozzaszoksz a PIC-ek kezelesehez, programozasahoz. Talan nem egy Ethernet kezelessel, vagy kamera jel feldolgozassal kellene elkezdeni. Ezek azert egy gyakorlott versenyzonek is feladjak a lecket. Majd ha mar tudsz analog jelet feldolgozni, megy az UART, USB, SPI, I2C vonalak kezelese, tudsz vezerelni egy LCD kijelzot, es mindezt meg is ertetted, utana lehet elkezdeni pislogni egy komolyabb project fele.
[OFF] Ő írta:
Idézet: Én nem használom, a régebbi MPLAB-okhoz úgy tudom külön kellett letölteni ( nem láttam vagy nem figyeltem, hogy milyen MPLAB-ot használ )! „A (többször több helyről letöltött rar file sérült.) A próbapanelhoz is HITEC C-t küldött a kis kínai, amihez telepítő segítséget is adott videón - szó szerint kínaiul.” Steve[/code] Idézet: „- 45 nap helyett 2 nap - rar file hibás” Itt kezdodik a hiba! A gyarto soha nem pakolja ezt be RAR-ba, ugyhogy nem tudom akkor milyen RAR file-rol beszelsz? Nyilvan valami crackelt valtozat az -- azaz megbizol valami ismeretlen hackerben aki megvaltoztatta valoszinuleg a binaris allomanyt -- lehet meg egy jo kis virust is hozza csatolt!!! Azt surgosen el kellene takaritani a merevlemezrol, a registry-bol es a directory strukturabol manualisan kiradirozni az osszes hivatkozast, majd a legalis valtozatot leszedni a hivatalos helyrol es azt feltelepiteni. Ha az MPLAB is ilyen crackelt valtozat volt, akkor azzal is meg kell ugyanezt csinalni. De ez igy amugy mar elegge off tema itt...
Sziasztok!
16bitre tudnátok ajánlani szaturációhoz valami egyszerű megoldást? Nézegettem ezt (16-bit saturating arithmetic) de nem teljesen értem, ráadásul a működés sem garantált mert nincs letesztelve. Előjeles megoldás kellene és az értékek ugrásszerűen változnak, de nem lenne szabad, hogy negatív értékből pozitívba menjen át a változó értéke. De persze -1-ből át mehet +1-be, csak -1-ből nem mehet "-38000-be" ami ugye már pozitív szám lenne. Az is jó lenne ha csak a logikáját letudná valaki írni.
A lenyeg, hogy kivonja a maximumot a szambol, ha tulcsordulas volt (magyaran a szam nagyobb a maximumnal), akkor a kulonbozetet kivonja a szambol (magyaran a szam egyenlo lesz a maximummal). Ugyanez az elv a minimumra is...
Én csináltam valami hasonlót, csak én a maximumból vontam ki a számot és az előjelet figyeltem (15.bit), de az nem akart működni rendesen.
Most akkor megpróbálom úgy ahogy írtad, ez egyszerűbbnek hangzik, remélem működik is. Bár a linkelt honlapon xor-olgat is meg valamit a temp-be is irkál, szóval nem tudom mit csinál. De akkor megpróbálom a te módszereddel, köszi.
Elolvastam Hp41C ajánlott rövid cikkét amit tegnap ajánlott. Majdnem világos ezek szerint a PCL-hez hozzáadni csak úgy nem lehet mert elrontja a visszatérési címet ha lapohatáron van? Az ami 256Byte? Ez majdnem világos, csak a megoldást nem sikerült értelmeznem, hogy ha a PCH-t nem követi a PCLATH akkor hogyan tudnám ezt az akárhonnan hívott táblámat, ami egy értékkel tér vissza pontosítani, hogy ne random jöjjön valahova vissza, mert eddig ilyen kiszámíthatatlan programot nem írtam.
A fejlesztő rendszeremben most is at általad javasolt 16F877A PIC van.
Azért vásároltam be- mert így egyben nem kerül többe, mint ha egyenként megvenném a chipcad-tól az alkatrészeket. Programozással szeretnék foglalkozni , nem panelek készítésével. Oshon basicban már ment az SPI, I2C, LCD, és Rs 232 vezérlése is. Nem a kamera jelét akarom feldolgozni, hanem a kamera mozgató motorjai RS 485-ös vonalon kapják a vezérlő jeleket. Ennyi amit szeretnék elérni. Az Ethernet kezelés távolabbi cél.
Talán túl sok tanácsit is kapok
- 16 ... -os Pic-el kezdd mert egyszerű - 18....-as Pic-el kezdd, mert ott egyszerűbb a memóriakezelés, és a 16-os elavult és drágább. -CCS C a jó -Hitec C a nyerő -hivatalos helyről szedd le a programot, mert az a tuti - máshonnan szedd le mert az 45 nap után is működik - talán béna vagy h. nem tudod máshonnan leszedni. - béna vagy, mert a máshonnan leszedett tuti vírusos Továbbra is mindenkinek Köszönöm
Szia!
Valami nem jött át: - A return / retlw / retfie az összes bitet visszatölti a stack -ről, nem használja a PCLATH -t. - Ha ugrani vagy eljárárst hívni szeretnél, elő kell készíteni a PCLATH regiszterben a cím felső részét. A felső rész attől függ, milyen utasítást szeretnél használni. call vagy goto a két legfelső bitet veszi a PCLATH 4. ill 3. bitjeiből, a PCL regiszterrel való műveletvégzés 5 bitet vesz a PCLATH regiszter 4..0 bitjeiből. - Ha már elvégezte a kontroller az ugrást a PCLATH értéke megmarad tvábbra is. A return / retlw / retfie sem módosítja a PCLATH értékét. - Ha egy táblázat átnyúlik azon a bizonyos 256 byte -os laphatáron, az alsó 8 biten elvégzett művelet átvitelét kezelni kell. Erre nem jó az utólagos megoldás, hiszen a PCL írása után már meg is történik az ugrás. Előre kell kiszámolni, hogy lesz-e átvitel, ettől függően beállítani vagy módosítani a PCLATH -ba írt értéket, aztán írni a PCL -t. A táblázat elemek retlw utasítást használnak a visszatérésre azomban többféle értékkel térhetnek vissza, így célszerű a visszatérés után közvetlenül (az első ugrás / eljárás hívás előtt) a PCLATH értékét újra beállítani. - A másik dolog, hogy a megszakítás mentse és állítsa vissza a PCLATH értékét. A mentés után a kiszolgáló program lapjának megfelelően kell beállítani.
Valaki tudna nekem segíteni abban , hogy a Microchip oldalán hol található meg a Microchip USB Bootloader telepítője?Köszönöm a segítséget!
Idézet: „...és a 16-os elavult és drágább....” Ha jók az értesüléseim, a Microchip most költ rengeteg pénzt az Advanced Midrange családra... Egy 16F1503 például 179 Ft +Áfa, egy 16F1938 500 Ft+Áfa "megfizethetetlennek" tűnő áron vásárolható. A 10F200 pl. 52 Ft +Áfa - olcsóbb, mint egy TTL LS kapu IC.
Én is látom az új híreket..., és árakat
- csak leírtam milyen tanácsokat kaptam. Kezdőként nem mindenben olyan egyszerű dönteni, mint pl. ebben az esetben.
Na jó, akkor én is mondok valamit:
Kezdésnek teljesen jó a PIC16 is - szerintem. Ha nem programoztál korábban nagyobb (pl. 32-bites) procit, akkor nem fogod úgy érezni (mint én) hogy túl korlátozott.
Akkor az én elgondolásom:
Vettem egy pici (8 lábú) olcsó PICet, aminek van belső oszcija és AD bemenete. Ezen ki tudtam próbálni az első lépéseket. (I/O kezelése, oszcillátorok konfigurációja, AD mérés és kijelzés, kapcsoló és potméter kezelés, megszakítások, LED villogtatás, piezo hangszóró csipogtatás, I2C, UART, kipróbálása- megértése) Amikor már ment, vettem egy nagyobb (PIC16F886) és olcsó PICet, aminek van beépített perifériája (PWM). Erre már LCD-t és több kapcsolót is rá lehetett kötni. Mikor ezt is kinőttem, vettem egy komolyabb 18F2423-mat, majd 18F452-t. (A memória és I/O-k miatt). Aztán 18F2550-et az USB kezelés miatt. Úgy gondolom, hogy ha valaki nagyon kezdő, ne vegyen nagyobb PICet. Nem kell fejlesztő panel sem. Elég egy dugdosós panel, amin villámgyorsan össze lehet állítani egy próba áramkört és ICSP-n lehet progizni. Egy ledet vagy kapcsolót, pillanatok alatt rá lehet dugni. Ha már valami komolyabb projekt van kinézőben, ahhoz úgyis kell nyák és/vagy nagyobb PIC. Ekkor az alapok már viszont megvannak és sima lesz az átállás. Szerintem :gumicsirke:
Köszi a tanácsokat.
Megnéztem az oldalad. Na az én dugdosós próbapanelom is úgy nézett ki, mint a tied, csak nekem még a programozó is rajta volt, (van) panelen. Csak én nem akartam szétbontani a panelt, és az egyszerűen betelt, ezért vásároltam a fejlesztőpanelt. ehhez van egy 16F877A pic és egy 18F4520as PIC. Ezek már megvannak, tehát hogy mit miért ne vegyek, ezen a kérdésen pedig túl vagyok. (Ráadásul, mint említettem alkatrészekben az egész itthon drágább lenne.) Egyébként nagyon jó a C kurzusod, csak így kezdődik Idézet: Legyen a mappa neve, pl.: "proba-1". Célszerű ha NEM használunk ékezetes betüket.„Na, akkor indítsuk el a CCS C programot és kezdjünk írni! Ha sikeresen újratelepítem, akkor a te útmutatód alapján kezdek. Egyébként: ” Egy előző hozzászóló, nekem éppen a kötőjelet tartotta lehetséges hibaforrásnak. Erről ennyit.
Sziasztok! Nincs valakinek egy I2C-t kezelő asm program részlete felkommentezve, valami kezdeti gyakorlati projektjéből ? Sokat olvastam a soros kommunikációról, és elméleti szinten világos, de legtöbb példában C-ben kezelik mert kénylemesebb (C-ben csak futófényt írtam) Előre is köszi!Üdv!
|
Bejelentkezés
Hirdetés |