- .................... lcd_putc('A');
- 012C: MOVLW 41
- 012D: MOVWF 22
- 012E: CALL 0ED
- .................... lcd_putc("Line Number 2");
- 012F: CLRF 21
- 0130: MOVF 21,W
- 0131: CALL 00C
- 0132: IORLW 00
- 0133: BTFSC 03.2
- 0134: GOTO 139
- 0135: INCF 21,F
- 0136: MOVWF 22
- 0137: CALL 0ED
- 0138: GOTO 130
- ....................
Fórum témák
» Több friss téma |
Fórum » PIC - Miértek, hogyanok haladóknak
pff
Az ilyeneken ki tudok akadni (mar bocsanat!) Idézet: „Az ilyeneken ki tudok akadni (mar bocsanat!)” Olyan érzése van az embernek, mintha csak akkor olvasnák a témát, amikor valami problémájuk akad? Link
A flex_lcd20x4.c elég tömör kódra sikeredett! (0 bytes)
Akkor viszont nyugodtan lehet include-olni...
Elnézést ha vitát kavartam, de elég régóta olvasom a különböző témákat, csak eddig nekem nem volt mondanivalóm. Mindenki más és más stílusú írásmódot (lásd kisbetű-nagybetű) használ, és másképp gondolkodik. Remélem én is elérem azt, hogy olyan vérprofi legyek a témában, hogy oszthassam az észt a kezdőknek. De addig légyszi nézzétek el a hibáimat majd igyekszem felnőni hozzátok.
Semmi gond! Nem ugrottunk a torkodnak, csak viccelődünk.
Igen, a többiek is az várják már, hogy "vérprofi" legyél és Te adj tanácsot. Addig is olvass a C nyelvről magyar könyveket. Sok-sok alap dolog fog a helyére kerülni!
Szivesen vennék egy-két ebook-ot a témában ha van neked. Egyébként agyrémnek tűnik pc programozásból pic-re áttérni. Itt a egy kicsit (sokkal) alacsonyabb szinten kell gondolkodni. A kézi vezérelt regiszter buzera meg az, hogy egy "varázsló" nem rendezi le teljessen a portokat is meg mindent ami működőképessé teszi, na ezt megszokni mókás lesz de nem lehetetlen. Kezdtem ellustulni, de ez felébreszt a tespedésből itt gondolkodni is kell
Idézet: „Egyébként agyrémnek tűnik pc programozásból pic-re áttérni.” Ez azért van, mert ez egy elektronikai alkatrész.
Háááát, biztos van ebook is... Én anno elbattyogtam a könyvtárba és kértem magyar nyelvű könyvet a C programozásról,- kezdőknek. Otthon meg szépen kipróbáltam a mintafeladatokat. (és örültem, mint majom a méteres farkának...) Az alapok elsajátításához elégséges egy ANSI-s C könyv. Egyébként, ha szimpatikus a CCS C, akkor innen tölthetsz dokut.:
Bővebben: Link Bővebben: Link2 Ez pedig egy C tutor: Bővebben: Link3 Idézet: „Szivesen vennék egy-két ebook-ot a témában” "Kérjetek és adatik néktek, keressetek és találtok" Bauer P.: C programozás elektronikus jegyzet PIC programozás C nyelven - CCS
Igy mar jobb .
Udv Vili
Hali
Mar bocs, de ha megnezed a CCS peldajait sokban igy van includolva a masik C file. Ezt a peldat a CCS forumrol masoltam be 1 az 1-ben. Masik En meg nem sokat fordultam a forumhoz a problemajaimmal legfeljebb akkor irok ha segiteni tudok valamiben. Udv Vili
Már csak azt nem értem, hogy a void lcd_putc(char c) {} deklarációval hogy fér össze ez a hívás?
Na, most megzavartál. Pusztán valamiféle programozási perverzióból fakadóan kérdezem meg, hogy ennek a sornak mi értelme lenne...? (Taníts mester!)
Ránézésre nem passzol, de mégis működik, de hát tudjuk, hogy a ccs másban sem "szabványos".
Nos nem tudom mi a különbség az általatok vitatott dolgokban, de tény, hogy tegnap este ez a példa egy az egybe kimásolva működött. Pont azon vagyok, hogy kielemezzem és megértsem az egésszet. Egyébként most ti olyan dologról vitatkoztok aminek elvileg nem kéne működni?
Nem hiszem, hogy vita lenne, csak értekezés...
És valóban, a char c-hez nem illik az a paraméterként megadott sok karakter, mégis működik, de csak ccs-ben.
Mert mi lenne az "elegáns" megoldás ami szintén működik esetleg és nem csak a ccs-ben?
Alapvetően a függvény megadásánál olyan bejövő adattipust kell neki megadni, ami majd valójában jönni is fog. Az emlíett lcd_putc(char c) {} megadás szerint a függvény egyetlen karaktert vár, miközben a használatakor egy pointert fog kapni, ami egy karaktersor kezdő (nulladik) elemére mutat. Ezért ennek elméletileg nem lenne szabad működnie, a fordítónak hibajelzést kellene adnia.
A megoldás az, hogy csinálni kell olyan függvényt, ami ezt a pointert várja, és a karaktersort írja ki. Pl lcd_puts(char *c) {} azért puts, mert stringet ír ki és a csillag jelenti azt, hogy pointert jön majd ba. És azért char *c, mert amire a pointer mutat, azok karakterek.
Mondjuk így jobb lenne?
Ez érdekes, mert nálam le sem fordul! Valami #device sort hiányol az
sor előtt, csak nem tudom, hogy abban milyen opciót vár.
Az eredetit fordítottad amit tegnap néztünk?
Pl lcd_puts(char *c) {}
MCC18-nál kínlódtam ilyesmivel, s külön bonyodalom volt, hogy az lcd_puts("Hello world!\n")-ben szereplő szöveg a programmemóriában tárolódik, emiatt ott lcd_puts(const rom char c*)-nak kellett deklarálni. (én nem LCD-re írtam, de ez most mindegy-...)
Sziasztok
Az szeretném kédezni ,hogy a Pic16LF88-at be lehet programozni PicKit2-vel? Probáltam utána nézni de én csak pic16f88-at találta. Segitségeteket elöre is köszönöm! Idézet: „Az eredetit fordítottad amit tegnap néztünk?” Természetesen! Közben megoldódott a probléma, a CCS és az MPLAB között nem volt zavartalan az együttműködés (technikai okok miatt MPLAB alól futtatom a CCS fordítót). Most lefordult, s a listából látható, hogy hol történik a trükközés. Tulajdonképpen arra voltam kíváncsi, hogy hol kerül be az iterálás, hiszen az lcd_putc() úgy van megírva, hogy csak egy bájtot küld ki. Nos, az iterálás a főprogramban, az lcd_putc() hívásakor kerül bele, a fordító, úgy tűnik, kitalálja a programozó gondolatát... Az összehasonlításhoz módosítottam az első hívást, így jobban látszik a különbség, ha összevetjük a második hívással: Idézet: „a Pic16LF88-at be lehet programozni PicKit2-vel?” A Microchip honlapja szerint igen! PICkit 2 Device Support List Midrange Devices ‘LF’ versions of all devices are also supported * PIC16F84A, 87, 88 Bővebben: Link
Biztos már volt szó róla, de most megláttam ezt az LF verziós kérdést, és azt szeretném kérdezni hogy mit jelent az L betű az LF-ben? Low power?
Az F-et tudom hogy FLASH-et jelent, de az L-et nem.
Alapvetően alacsonyabb feszültségről is működik. De a pontos eltérések az adatlapban megvannak, keresd az LF jelzést az electrical characteristics táblázataiban.
|
Bejelentkezés
Hirdetés |