Looking for a MC Board with D/A capabilities

Thread Starter

Spek

Joined Feb 6, 2009
20
Hi,

A while ago I asked for help with searching a Microcontroller. I'm a little bit more familiar with the wonderfull Microcontroller world by now, but I still can't find a board that suits my needs.

I ordened an Arduino Mega. Great stuff and nice (free) development tool, but the main problem is that none of their boards have true Analog Outputs, only PWM outputs. I could connect a 'SPI -> DAC' board. But a nicer solution would probably be a Microcontroller board that has the DAC's directly connected. However, I can't find one. Lots of A/D, but no D/A. What I need:

- A complete "ready-to-use" board. I'm not able to solder loose components together myself
- 16 bit processor
- 2 Analog outputs (0..5 Volt or 0..10 Volt) with a high settle time (< 0.5 ms)
- 2 Analog inputs. Again with a very high reading ability: Each of them should be read at least 2000 times a second.
- 4 interrupts (on pulse)
- 4 digital in, 2 digital out

Does someone know such a board? Or how do you guys search? I have seen 15 billion chips and boards on dozens of websites, but most of them are just chips or starter-kit boards (without D/A). Maybe I'm looking wrong though.

Regards
Rick
 

Thread Starter

Spek

Joined Feb 6, 2009
20
That looks really nice, the complete package! Can you help me through the specs though, I'm not familiar with all the hardware-talk so I don't really know what I'm reading:

- What board / chip does that package exactly include? A "C8051F020TB"? Ifso,

- Analog inputs
Several tables in the PDF documents tell all kinds of things. For example: "ADC1: 16-bit, 2-ch, 1 Msps" and "ADC2: 10-bit, 8-ch, 200 Ksps". I guess it means 2 16-bit inputs, 8 10-bit inputs. But how fast is Ksps/Mspsp?

- Analog outputs
Output settling time = 10 us. This is the time required an output is "stabilized"? Ifso, that would be more than quick enough.

- Interrupts
5 16 bit timers. That means I could use 1 of them to quickly keep reading the analog inputs? (~4000 times a second for example). How about the interrupts that can be triggered in pulse? I need 4 of them, but I can't find any info about that.

[edit]
- The development software
I see you can download Silicon Labs IDE, but another manual says the software included a limited version of Keil (4kb ROM size limit). Can I do without Keil? And the 4kb limit... probably my program is small (read analog outputs in timed interrupt, measure peaks, send them to the analog output + some pulses, that's it).

Sorry for the stupid questions, but I'm a rookie when it comes to hardware so forgive me! Just want to make sure I'm buying the right thing.

Thanks!
Rick
 
Last edited:

nanovate

Joined May 7, 2007
666
The board has the C8051F060 device + 128 Kb SRAM

It has 3 ADCs, the 16-bit each have a dedicated channel and the 10-bit has 8 channels multiplexed. You wanted 2 ksps and this devices exceeds that.

It should meet your settling requirement

It has a window-detect on the analog input that can generate an interrupt or you can have a adc conversion complete generate an interrupt.

There is a SDCC compiler you can use for 8051 or the 4kb limited Keil compiler might work for you.
 

hgmjr

Joined Jan 28, 2005
9,027
Spek

You indicated in your original post that you were looking for a 16-pit processsor. I believe you will find that the C8051F060 is only an 8-bit processor.

I assume you are OK with that.

hgmjr
 

John Luciani

Joined Apr 3, 2007
475
Hi Rick,

I am about to introduce an Arduino compatible board with a 4 channel, 8 bits per channel
DAC and a battery backed-up RTC. The board is a 3.3V design with an 8-bit uC (ATmega168 or ATmega328). The DAC goes to apx 2.5V (2 * Vref).
Specifications are in the NB1A section at http://tinyurl.com/pg334s
It is a kit but I do build up some boards. Feel free to contact me off-list.

(* jcl *)
 

Thread Starter

Spek

Joined Feb 6, 2009
20
8 bits... Not really a problem I guess. There is always a workaround in case I would need bigger numbers.

I'll wait though. Instead of using analog data I can also use the UART to pass data. In that case I can just sample an array of values and send it on relative low speed. In that case I can do the job with our current Arduino. Nevertheless, a MC with analog outputs can still become usefull in the nearby future, so I'll keep this board in mind, and also yours John. I like the user-friendly environment and forums at Arduino so one of their boards with analog output is certainly a plus.

Thanks for helping everyone!
 

hgmjr

Joined Jan 28, 2005
9,027
When it comes to analog output, you can use an R2R ladder network and an opamp to create your own D/A. Another approach that is used is a PWM signal that is lowpass filtered. The beauty of the PWM approach is that it consumes only one output.

hgmjr
 

nanovate

Joined May 7, 2007
666
fully featured with in-built ADC, LCD, 7-segments, ISP, 5 & 12V regulators, Dip switches, Relays, Stepper motor Control, usb, serial & parallel ports
Is there a datasheet or userguide? Does it have a DAC? Does the AT89S52 really have built-in ADC?
 
Top