Hi to all, The following structure declaration for six arrays of integers for MSP430F1611 __no_init struct channel { int ch[50]; }ch0,ch1,ch2,ch3,ch4,ch5; for storing the ADC sample values for(k=0;k<50;k++) { ch0.ch[k] = ADC12MEM0; ch1.ch[k] = ADC12MEM1; ch2.ch[k] = ADC12MEM2; ch3.ch[k] = ADC12MEM3; ch4.ch[k] = ADC12MEM4; ch5.ch[k] = ADC12MEM5; } is working well. But, when I use the same declaration for the MSP430F149 to store ADC values, the arrays seem to be filled with some abnormal values after storing the ADC memory register values, especilly for last arrays, ch4 and ch5. Please help me in solving this problem for MSP430F149.
Problem of Structure array filling from ADC memory for MSP430F149
Started by ●January 3, 2006
Reply by ●January 3, 20062006-01-03
6 arrays * 50 elements/array * 2 bytes/element = 600 bytes. I assume your stack is crashing into the last two arrays as the 1611 has 10K of RAM, the 169 has 2K. -- Paul Curtis, Rowley Associates Ltd http://www.rowley.co.uk CrossWorks for MSP430, ARM, AVR and now MAXQ processors > -----Original Message----- > From: svijbhaskar [mailto:svijbhaskar@svij...] > Sent: 03 January 2006 05:41 > To: msp430@msp4... > Subject: [msp430] Problem of Structure array filling from ADC > memory for MSP430F149 > > Hi to all, > > > The following structure declaration for six arrays of integers for > MSP430F1611 > > > __no_init struct channel > { > int ch[50]; > }ch0,ch1,ch2,ch3,ch4,ch5; > > > for storing the ADC sample values > > for(k=0;k<50;k++) > { > ch0.ch[k] = ADC12MEM0; > ch1.ch[k] = ADC12MEM1; > ch2.ch[k] = ADC12MEM2; > ch3.ch[k] = ADC12MEM3; > ch4.ch[k] = ADC12MEM4; > ch5.ch[k] = ADC12MEM5; > } > > is working well. > > > But, when I use the same declaration for the MSP430F149 to > store ADC values, the arrays seem to be filled with some > abnormal values after storing the ADC memory register values, > especilly for last arrays, ch4 and ch5. Please help me in > solving this problem for MSP430F149. > > > > > > > > . > > > Yahoo! Groups Links > > > > > > > >
Reply by ●January 3, 20062006-01-03
>From: svijbhaskar <svijbhaskar@svij...> >Date: Mon Jan 02 23:41:14 CST 2006 >To: msp430@msp4... >Subject: [msp430] Problem of Structure array filling from ADC memory for MSP430F149 Svij, >The following structure declaration for six arrays of integers for >MSP430F1611 > > But, when I use the same declaration for the MSP430F149 to the 1611 has 10Kbytes of RAM, the 149 has only 2Kbytes. Without jumping into this too far, I would look at stack overflows, or at least if the stack grew big enough to meet up with your data arrays. Other things to check may include where these arrays are positioned in memory. Do they extend beyond allowable RAM space? When you switched processors, you may not have changed the memory model and the arrays may be put into invalid locations. Good Luck, and Let us know how things work out! Rachel Adamec Norristown, PA, USA
Reply by ●January 3, 20062006-01-03
Perhaps you're RAM use that works on 1611 is falling off the end of RAM on the 149. Be aware The 149 has 2Kb of RAM 0200-09FF. The 1611 has 10Kb of RAM 1100-38FF (where the lower 2Kb is mirrored 0200-09FF). Regards, Colin, -----Original Message----- From: msp430@msp4... [mailto:msp430@msp4...] On Behalf Of svijbhaskar Sent: 03 January 2006 05:41 To: msp430@msp4... Subject: [msp430] Problem of Structure array filling from ADC memory for MSP430F149 Hi to all, The following structure declaration for six arrays of integers for MSP430F1611 __no_init struct channel { int ch[50]; }ch0,ch1,ch2,ch3,ch4,ch5; for storing the ADC sample values for(k=0;k<50;k++) { ch0.ch[k] = ADC12MEM0; ch1.ch[k] = ADC12MEM1; ch2.ch[k] = ADC12MEM2; ch3.ch[k] = ADC12MEM3; ch4.ch[k] = ADC12MEM4; ch5.ch[k] = ADC12MEM5; } is working well. But, when I use the same declaration for the MSP430F149 to store ADC values, the arrays seem to be filled with some abnormal values after storing the ADC memory register values, especilly for last arrays, ch4 and ch5. Please help me in solving this problem for MSP430F149. . Yahoo! Groups Links
Reply by ●January 3, 20062006-01-03
RAM too small?
M.
On Tue, Jan 03, 2006 at 05:41:14AM -0000, svijbhaskar
wrote:
> Hi to all,
>
>
> The following structure declaration for six arrays of integers for
> MSP430F1611
>
>
> __no_init struct channel
> {
> int ch[50];
> }ch0,ch1,ch2,ch3,ch4,ch5;
>
>
> for storing the ADC sample values
>
> for(k=0;k<50;k++)
> {
> ch0.ch[k] = ADC12MEM0;
> ch1.ch[k] = ADC12MEM1;
> ch2.ch[k] = ADC12MEM2;
> ch3.ch[k] = ADC12MEM3;
> ch4.ch[k] = ADC12MEM4;
> ch5.ch[k] = ADC12MEM5;
> }
>
> is working well.
>
>
> But, when I use the same declaration for the MSP430F149 to
> store ADC values, the arrays seem to be filled with some
> abnormal values after storing the ADC memory register values,
> especilly for last arrays, ch4 and ch5. Please help me in
> solving this problem for MSP430F149.
>
>
>
>
>
>
>
> .
>
>
> Yahoo! Groups Links
>
>
>
>
>
>
Matthias