MPLAB C30 a smerniky na funkcie

Marek Pavlu pavlu@HWserver.cz
Pátek Červen 15 23:58:25 CEST 2007


No a co to udelat jinak? 
Napriklad tak, ze ty funkce, ktere chci volat pres pointer proste doporucim
linkeru, 
aby je nasypal do nizsich 64kB? 

C18 takovou direktivu mel, hadam, ze ji bude znat i C30... 

Pokud jsou prilis velke, tak udelat jen male funkce, ktere budu pointerovat
a tyto funkce by zavolaly jiz spravnou koncovou funkci.

Je to samozrejme takove ochc*ni problemu, ale umoznuje to vyresit problem
okamzite a nasledne se trebas mesic hrabat s vlastnim problemem :).

Marek Pavlu 

>>  -----Original Message----- 
>>  From: hw-list-bounces@list.hw.cz [mailto:hw-list-bounces@list.hw.cz] 
>>  On Behalf Of andrej jancura 
>>  Sent: Friday, June 15, 2007 11:36 PM 
>>  To: HW-news 
>>  Subject: RE: MPLAB C30 a smerniky na funkcie 
>>  
>>  Ahoj, 
>>  
>>  > >Pokud vim, handle je ukazatel na ukazatel. Jaky efekt potrebujete 
>>  > >pomoci ukazatele na funkci docilit? Neda se to udelat i jinak? 
>>  > > 
>>  > > 
>>  > > 
>>  > Potrebujem vsetky poznat 3 bajty adresy, nic viac. Plnia sa potom 
>>  do 
>>  > zasobnika. Neviem ako sa k nim dostat. 
>>  
>>  Teda pravdu povediac, 3 byty nie su 4 byty, a potom ako to ma ten 
>>  kompilator 
>>  vediet, to by musel mat specialny typ na pointer 24 bitov... A to je 
>>  ten 
>>  filozoficky problem, on ma len 16bitov. 
>>  
>>  Na zaciatok by som jednoducho napisal kod v asm, nieco ako 
>>  
>>  movlw upper(Adresa) 
>>  push 
>>  movlw high(Adresa) 
>>  push 
>>  movlw low(Adresa) 
>>  push 
>>  
>>  > S tym co odporuca microchip je to zhruba tak, ze sa vytvori pole 
>>  > "handlerov" v spodnej casti pamati. Fakticky su to gota na funkcie, 
>>  lebo 
>>  > goto obsahuje kompletnu adresu. Mozno by sa to dalo nejako pouzit, 
>>  ale 
>>  > nie je mi jasne ako to zadeklarovat. 
>>  
>>  Isty nemenovany kompilator C pre PIC to na predpotopnych PIC-och 
>>  robil 
>>  rovnako, vygeneroval tabulku s goto na funkciu. Kod v C bol 
>>  standardny, 
>>  funkcia sa volala tusim nasledovne 
>>  
>>  p_funkcia = funkcia; 
>>  *p_funkcia(); 
>>  
>>  Ako to presne je, to by som musel pohladat vo svojich tips&tricks... 
>>  
>>  A. 
>>  
>>  p.s. ja by som si stiahol demo toho isteho nemenovaneho kompilatora a 
>>  pozrel 
>>   ako volanie funkcii riesi on, pripadne ako sa deklaruje pole funkcii 
>>  v C. 
>>  Ale to co potrebujes Ty pojde urcite vyriesit cez asm. 
>>  
>>  
>>  
>>  --- reklama ----------------------------------------------------- 
>>  Ako si píše každý druhý človek na Slovensku? 
>>  Cez Zoznam ICQ - http://icq.zoznam.sk/ 
>>  _______________________________________________ 
>>  HW-list mailing list  -  sponsored by www.HW.cz 
>>  Hw-list@list.hw.cz 
>>  http://list.hw.cz/mailman/listinfo/hw-list 



  _____  

avast! Antivirus <http://www.avast.com> : Odchozi zprava cista. 


Virova databaze (VPS): 000749-1, 15.06.2007
Testovano: 15.6.2007 23:58:23
avast! - copyright (c) 1988-2007 ALWIL Software.






Další informace o konferenci Hw-list