[elektro] Pickit 2

hg12345 hg12345 at freemail.hu
Tue May 27 08:26:10 CEST 2008


Hi!

Kár a vitatkozni, azok a C forditók ahol optimalizálás van ott még 
kevésbe lehet megtudni (megtanulni) mit csinál a forditó és hogy kezeli 
a uC-t.
A kód HW vezérlés esetén csak optimalizáció után és egy halom volatile 
beirásával lesz egyáltalán használható. Kérdéses ez mennyire segíti a 
tanulást?

Aki tanulni akar és még a szükség is segíti annak mindegy min és 
hogyan tanul, elöbb utobb talán rájön a megoldásra.

Szerintem teljesen mindegy hogy kódolod a HW periféria kezelést és 
milyen nyelven írod! Ha nincsenek meg az elméleti alapjaid, és ezt nem 
tudod elolvasni ill, nem tudod valaki mellett megtanulni akkor még a 
legjobb kódoló is gyenge igen zavarérzékeny programot fog produkálni 
egy uC rendszerre.  (Ami nagyon nagy kár ilyen könyv vagy leírás nincs, 
vagy ami számomra szomorú talán csak én nem találkoztam vele :-(.

...........................

szerintem bármely C-ben minimum két féle képpen tudod a port bit 
definiciót megoldani
volatile struct {
            unsigned PA0:1;
           ..................
            unsigned  PA5:1;
} PORTA;

#define   PortABit5                    PORTA.PA5

#define   SetPortABit5()            PORTA.PA5=1


a felhasználás :

PortABit5=1;
vagy 
SetPortABit5();

Hogy a makrokat beépítették gyárilag a forditóba az kit zavar? (kicsit 
kellemetlen amikor esetleg valaha más C-re kell portolni...) Egy kezdő a 
gyári headereket ugyan úgy nem fogja elolvasni,mint a gépkönyvet, ha 
már olyan aki nem olvas. A CCS-t nem használtam, de megnéztem egy 
kezdő gyorsabban célt ér vale mint a GNU-val, nem kell linker script, 
nem kellenek bizonyos gyári headerek, vagyis az indulás gyorsabb.





> 2008/5/26 Acs Gabor <agabor at electrodesign.hu>:
> > Bocs, ennek a mondatnak semmi értelme:
> > "De
> > "továbbra is fenntartom, hogy CCS-el nem lehet megtanulni a
> > "kontrollerek használatát pont azért, mert nem szokás elolvasni a
> > "használati utasítást (vagy fórumot, levelez&#337;listát, stb.).
> Hogyhogy nincs értelme? Szerinted a kezd&#337;knek el szokásuk olvasni a
> fordítóhoz írt használati utasítást? Látnak a mintaprogramban 
valamit,
> ami ideális esetben m&#369;ködik. Nem ideális esetben nem m&#369;ködik, és 
akkor
> nem tudják, hogy mi a probléma. Ha nem látnak a felszín alá, akkor
> sosem fogják átlátni a m&#369;ködést.
> 
> 
> > Egy C-fordítóval nem a controller használatát kell megtanulni. Ez 
nem a CCS
> > sajátossága, hanem minden fordítóé.
> Mintha valami ilyesmit írtam volna én is. Nem olvastad? A többi C
> fordító legalább közelebb van a hardverhez _alapértelmezetten_ is.
> 
> 
> > Ha pedig ismered, hogyan kell használni a CCS-nél a portokat úgy, 
hogy ne
> > TRIS-eljen, akkor miért írod ezt:
> > "A CCS-t meg azért említettem, mert a példaprogramok függvényt
> > "használnak egy portláb magas szintre állításához is (pl.
> > "output_high(pin_b5)). Ez pedig nem csak egy BSF PORTB, 5 (vagy 
18F
> > "esetén BSF LATB, 5) utasításra fordul alapértelmezésben, hanem 
állítja
> > "a TRISB, 5 bitet is, ennek megfelel&#337;en bankváltást csinál, stb.
> >
> > Ha tudod, hogyan kell elérni a regisztereket közvetlenül, miért írod 
ezt:
> > "A regiszterek sem érhet&#337;k el közvetlenül, hanem szintén csak
> > "függvényekkel (persze meg lehet hekkelni, de ez már más téma). 
Ezen
> > "nem lehet megtanulni a kontroller használatát, mert nagyon el van
> > "rejtve a hardver.
> Ezek el&#337;l valóban kimaradt az, hogy alapértelmezetten fordítja így.
> 
> 
> > Ez nem hekkelés, és nincsenek elrejtve a regiszterek, meg a 
hardver.
> Ja, csak a példaprogramok valahogy nagyon úgy néznek ki, hogy
> igyekeznek elrejteni.
> >
> >
> > Szóval ezeknek az érveléseknek nincs semmi értelme, van egy 
olyan érzésem,
> > hogy Te nem vagy képes kimondani azt, hogy 'bocs, kicsit 
túlreagáltam
> > valamit' Vagy, hogy: 'nahát, ezt eddig nem is tudtam'. Ha valaki 
csak
> > izomból akar vitázni logikus érvelés helyett, na az a fölösleges 
szócséplés,
> > ami helyett akár értelmes dolgot is csinálhatnánk.
> Pedig pontosan tisztában voltam minden itt említettel.
> -----------------------------------------
>           elektro[-flame|-etc]
> 

_______________________________________________________
A 79. Ünnepi Könyvhét újdonságai! 
http://bookline.hu/control/news?newsid=1378&tabname=book&affiliate=freukhkar6060



More information about the Elektro mailing list