Forum: ARM programming with GCC/GNU tools STR912FW44X pre buy questions?

 Author: Raed Abusanad (raedbenz) Posted on: 2008-10-07 13:58

Rate this post
 0 ▲ useful ▼ not useful
Hello everybody!

1-  Is there a suitable GNU ARM Toolchain available for this Controller
(STR912FW44X). Where can i found out if there is a Toolchain either for
Linux  or Windows? .

2- Do u know where can i find good support for this board? like code

4- where to get header and start up files?

Greetings

 Author: Damien Hoyen (damien) Posted on: 2008-10-07 16:06

Rate this post
 0 ▲ useful ▼ not useful
Hi,

I bought this board for a project.

1st) AN IMPORTANT limitation :
On this board, you will find a STR912FW44X6 (note: the A is missing)
-> This silicium has some limitation -> impossible to clock the ADC by
the timer0, for example...

Bref, can i suggest you to have a look on the ST website for these
limitation?

Note: You can always move the processor for a FA version, if you have

2nd) I use Yagarto and GCC (for windows, without CygWin),
with Eclipse and Open OCD and an olimex JTAG probe,

My feedback, after 6 months :

working very well, really simple of installation, bref :
Something easily usable, really well documented (www.yagarto.de and this
forum)
A really good work has been done.

The 2 only limitations i could find were:(these limitations are normal
according to the fact this chain must be usable on really light micro
controller):

--> No support of floating point in printf function

--> No support about the hardware integer unit - instruction, specific
to the ARM966-E core (I received error during linkage, with the newlib,
maybe it's easily fixable, but in my case, that's not a problem, but if
somebody knows how to, it's clearly welcome;-) )

Noe, if you ae looking for something running on Windows as Linux, take a
look at : http://www.codesourcery.com and ARM-EABI-GCC.
I don't know this compiler, I tried but my feedback is you need to
invest a important time before be able to produce your 1st compilation
(regarding to Yagarto)

3rd) I have a bad news for you, this is no LED embedded on the board ;-)
Anyway, to find a working project, You can have a look from ST,
They have plenty of sample code, compiled for IAR and another IDE, i
forget the name, but i m fairly sure this IDE use a GCC compiler.
Also Hitex and the STr9 ComStick (i started with it)
Take also a look at Freertos.org

Regards.

Damien Hoyen

> Hello everybody!
>
> I'm thinking about buying the Olimex STR-E912 wit the NOKIA LCD..
>
>
> 1-  Is there a suitable GNU ARM Toolchain available for this Controller
> (STR912FW44X). Where can i found out if there is a Toolchain either for
> Linux  or Windows? .
>
> 2- Do u know where can i find good support for this board? like code
>
> 4- where to get header and start up files?
>
>
> Greetings

 Author: Raed Abusanad (raedbenz) Posted on: 2008-10-08 10:01

Rate this post
 0 ▲ useful ▼ not useful
Gi Damien

I would like to know what else limitations has this processor?
Actually i need the board to build a small mp3 player, so du reccomend
to use it ? what else do u recommend?
The speaker on Olimex STR-E912 is connected to PWM not DAC like LPC2378
from olimex. Do u think this adds complication to the work?

> Noe, if you ae looking for something running on Windows as Linux, take a
> look at : http://www.codesourcery.com and ARM-EABI-GCC.
> I don't know this compiler, I tried but my feedback is you need to
> invest a important time before be able to produce your 1st compilation
> (regarding to Yagarto)

Because i work with Linux, i have usedcodesourcery. But i would like to
know if there are any flashing programs working under Linux instead of
Windows in order to program the microcontroller?

thanks

 Author: Damien Hoyen (damien) Posted on: 2008-10-08 11:08

Rate this post
 0 ▲ useful ▼ not useful
Hi,

Well

According to the no-avaibility of a embedded CODEC IC i deduct you will
uncompress the MP3 stream with the STR912. I think he could do it, but i
don't know the mathematical heaviness of this decoding. But 1 guy inside
another forum (freeRTOS.org) said me he was using a STR912 as a MP3
player, means could be possible.

For the PWM, and the Olimex board I had a look on the schematic page
the analog filter (R56 : 1.2K ,C76 : 33nF) and the following filter, to
do a cheap 2nd order (R53-C75)
will cut at a frequency = (1/(2*Pi*R*C)) = 4 Khz
(by doing aproximation the current going inside R53 = 0 mA, which is not
correct, especially with this kind of stage).
A good simulation with a more powerful tool (pspice) should give you an
idea, but if you can reproduce a sound with a frequency better than 4
KHz (voice phone quality, more or less)... he will be: Rubbish...
In all case, you can always change 2 resistors on the board by yourself
;-)

For the UP side, it's not a problem, just set your PWM frequency at a
speed superior to frequency filter, and also superior to the 22KHz limit
of a normal ear. 100Khz could be a good beginning.
Then just change the duty cycle from 0 to 100 %, according to the level
you want to produce. The double 1st order filter will integrate your PWM
as a "constant" (constant during a really short time) value.
Anyway, completely the same as a normal DAC if the filter is correctly
chosen

For the programming tools, hum, i can't help you for a NON windows
tools.
The only tool i know for free is OpenOCD, but he seems he is able to be
run under Linux (TBC). Take a look here.
From my side, the JTAG Olimex USB OCD work really well (under Windows),
I don't know if the FT232 (the internal chip used to convert USB frame
in numerical signal used for JTAG) is supported by Linux

Good luck.
Regards.

Damien HOYEN

> Gi Damien
>
>
> I would like to know what else limitations has this processor?
> Actually i need the board to build a small mp3 player, so du reccomend
> to use it ? what else do u recommend?
> The speaker on Olimex STR-E912 is connected to PWM not DAC like LPC2378
> from olimex. Do u think this adds complication to the work?
>
>
>> Noe, if you ae looking for something running on Windows as Linux, take a
>> look at : http://www.codesourcery.com and ARM-EABI-GCC.
>> I don't know this compiler, I tried but my feedback is you need to
>> invest a important time before be able to produce your 1st compilation
>> (regarding to Yagarto)
>
> Because i work with Linux, i have usedcodesourcery. But i would like to
> know if there are any flashing programs working under Linux instead of
> Windows in order to program the microcontroller?
>
> thanks

 Author: Damien Hoyen (damien) Posted on: 2008-10-08 11:51

Rate this post
 0 ▲ useful ▼ not useful
Ok,

I just did few measurement on the board, with an oscilloscope and a
synthesizer :

Well, my 1st really quick evaluation was right : You will not be able to
reproduce sound with a frequency superior to 4Khz.
For a same  amplitude signal applied at 500 Hz and 5Khz (pure sinus),
the gain will be reduce of 60-70% for the 5KHz frequency (signal
filtered).

You can try to change the filter, but my point of view is the actual
filter has been badly designed for quality voice reproduction.
You can also ask Olimex, about the characteristic of the audio output
stage, keep me in touch if you choose this way. Maybe they have a simple

If somebody has experienced already this board with analog out,
Could you confirm ?

Regards.

Damien HOYEN

 Author: Raed Abusanad (raedbenz) Posted on: 2008-10-08 13:40

Rate this post
 0 ▲ useful ▼ not useful
Thank u very much for ur help.
cheers

 Author: Raed Abusanad (raedbenz) Posted on: 2008-10-08 14:27
Attached files:

Rate this post
 0 ▲ useful ▼ not useful
Damien Hoyen wrote:
> Ok,
>
> I just did few measurement on the board, with an oscilloscope and a
> synthesizer :
>
> Well, my 1st really quick evaluation was right : You will not be able to
> reproduce sound with a frequency superior to 4Khz.
> For a same  amplitude signal applied at 500 Hz and 5Khz (pure sinus),
> the gain will be reduce of 60-70% for the 5KHz frequency (signal
> filtered).
>
> You can try to change the filter, but my point of view is the actual
> filter has been badly designed for quality voice reproduction.
> You can also ask Olimex, about the characteristic of the audio output
> stage, keep me in touch if you choose this way. Maybe they have a simple
>
> If somebody has experienced already this board with analog out,
> Could you confirm ?
>
> Regards.
>
>
> Damien HOYEN

hi,
what do u think of this speaker connection in terms of amplification,
check the attachment plz (left upper corner). coz i found this board
here http://futurlec.com/ARM2368_Controller.shtml with reasonable price

 Author: Damien Hoyen (damien) Posted on: 2008-10-10 11:08

Rate this post
 0 ▲ useful ▼ not useful
Well

He seems this line (Port2 line8) is not connected to your DAC converter,
isn't it ? You will have to drive it in PWM. Is your Port2 line 8 has
this possibility ? (i read VERY quickly the datasheet, i m not sure).

In all case, my feeling is:
this board, again is not really what you are looking for, this board has
not been designed to produce high fidelity sound and just some BEEP -
BEEP (mode ON - OFF according to the transistor used in: ALL/NOTHING),
maybe with a little bit of PWM, could produce something... but...
clearly rubbish
i prefer not recommend you this board for this job.

Take a look for a baord with a real audio amplifier output stage :
Class A amplification (not the most efficient, but the simplest) or
Class B amplification (in this case, you need 2 transistors) (you could
also have the D and other exotic mix like A-B) Or a specific audio
amplifier IC (LM386).
Or look for a board with a Embedded codec, this codec will uncompress in
hardware for you MP3 stream, and also could contain a embedded
amplification

Take a look at this board from Olimex :
LPC-2378STK DEVELOPMENT PROTOTYPE BOARD WITH LPC2378 Ethernet, USB, 2x
CAN, 2xRS232, ETHERNET, SD/MMC, AUDIO IN-OUT

Just check the capability of the ARM7 for this job, especially
pin port 0 line 26 (called A-OUT in the schematic).
I haven't look imitation on the hardware side, and this board should be
able to reproduce a "correct" sound".
Seems some example are prodided, including 1 for sound reproduction,
look source code, maybe priceless information, for your application, is
present here.

Damien HOYEN.

• $formula (LaTeX syntax)$