Re: C szintaxis kérdés, avagy dsPIC33 AD scannelés

hg12345 hg12345 at freemail.hu
Sun Feb 4 09:40:02 CET 2007


Hi!

Mivel volatile-nek van dekrarálva cim (így kiveszik az optimalizálás alol), 
a warning figyelmeztetne erre. Neked is így kell eljárnod.

volatile unsigned int *ADC16Ptr;




Kovács Árpád <arpad.kovacs at vipmail.hu> írta:

> 
> Sziasztok!
> 
> dsPIC33-al adódott egy kis problémám, AD scannelést kellene 
csinálnom, és akkor nem kellene nekem multiplexelni a vonalakat, 
hanem megcsinálná azt automatikusan a periféria és az eredményeket 
a 16 szavas bufferben helyezi el a RAM-ban, melynek báziscímét 
ADC1BUF0 -nak hívják.
> 
> A problémám az, hogy csak a nulladik elemhez tudok hozzéférni, az 
utána következőkhöz nem, mert az ADC1BUF1, 2, 3... nincs külön 
deklarálva.
> A proci egyik példaprogramjában így oldják meg:
> 
> ADC16Ptr = &ADCBUF0;         // Értékadás a pointernek címképző 
operátorral
> 
> ADCValue = *ADC16Ptr++;      // hozzáférés a buffer második 
eleméhez indirekcióval
> 
> Na jó, gondoltam akkor így jó lesz, deklarálom a mutatót az elején:
> 
> unsigned int *ADC16Ptr;
> 
> Erre a fordító az értékadás sornál warning-ol egyet, és persze nem 
működik a dolog:
> 
> warning: assignment discards qualifiers from pointer target type
> 
> 
> Akkor most hogyan? :) Megnézve további példaprogramokat azt 
láttam, hogy úgy kerülik meg még ezt a dolgot, hogy vagy DMA kezelés 
van, vagy minden AD konverzióra megszakítás van és akkor nem kell 
csak a nulladik elemhez hozzáférni. Ha nem jön össze akkor maradok 
én is ennél.
> 
> Ha valaki tud segíteni, köszönöm előre is
> 
> Árpi
> 
> 
> 
> -----------------------------------------
>           elektro[-flame|-etc]
> 

_______________________________________________________
Filmszemle díjas filmek ingyen a 38. Filmszemle alatt!  
http://teka.t-online.hu/kodolatlan.html 



More information about the Elektro mailing list