.... for a beginner?
And what's the difference, anyway, between the AVR and the ATxxxxxxxx
series of chips?
TIA
Michael
And what's the difference, anyway, between the AVR and the ATxxxxxxxx
series of chips?
TIA
Michael
[email protected] said:... for a beginner?
And what's the difference, anyway, between the AVR and the ATxxxxxxxx
series of chips?
linnix said:AVR is so simple, you don't need a book. Just get a development kit
and go through some examples on line and off line.
Which AT? Generally speaking, ATtiny, ATmega and AT90 are similiar
AVRs.
Ah, so the AT90Sxxxx series is also an AVR... thought it was something
completely different.
So, about that book... ;-)
Joerg said:Hello Michael,
Seriously, as Linnix wrote, you may not need one. I started with the TI
MSP430, thought about buying a book but after taking a look at one I
realized how fast some of the contents become obsolete. By the time it's
printed there is a slew of new uC variations that are now used by everyone.
Main things to get started: Learn the design environment, play around,
try to make the blinky-LED work, try to change blink rates or pattern,
load again and so on. Then study the family guide and the data sheet for
a long, long time. After that you know all the assembler words the uC of
choice understands and what they mean. Even if you never do assembler
you need to become familiar with the peripherals on board and how they
can affect or impair each other.
If you really want a book recommendation I'd post again at
comp.arch.embedded where among many uC experts there is also Ulf
Samuelsson from Atmel. I am sure he'd know which books are good. Ulf is
very responsive, I wish TI and others would participate as well.
Hello Michael, [snip...snip...]
Seriously, as Linnix wrote, you may not need one. I started with the TI
MSP430, thought about buying a book but after taking a look at one I
realized how fast some of the contents become obsolete. By the time it's
printed there is a slew of new uC variations that are now used by everyone.
Main things to get started: Learn the design environment, play around,
try to make the blinky-LED work, try to change blink rates or pattern,
load again and so on. Then study the family guide and the data sheet for
a long, long time. After that you know all the assembler words the uC of
choice understands and what they mean. Even if you never do assembler
you need to become familiar with the peripherals on board and how they
can affect or impair each other.
If you really want a book recommendation I'd post again at
comp.arch.embedded where among many uC experts there is also Ulf
Samuelsson from Atmel. I am sure he'd know which books are good. Ulf is
very responsive, I wish TI and others would participate as well.
Ah ok. (Actually until you mentioned it I didn't even notice linnix
had replied inline to my first question. Sorry 'bout that, linnix.
Was browsing over at amazon.com and was getting worried about some of
the comments the users said...
the TI >> MSP430, thought about buying a book but after taking a lookHello Michael, [snip...snip...]
Seriously, as Linnix wrote, you may not need one. I started with
at one I >> realized how fast some of the contents become obsolete.
By the time it's >> printed there is a slew of new uC variations that
are now used by everyone.around, >> try to make the blinky-LED work, try to change blink rates
or pattern, >> load again and so on. Then study the family guide and
the data sheet for >> a long, long time. After that you know all the
assembler words the uC of >> choice understands and what they mean.
Even if you never do assembler >> you need to become familiar with
the peripherals on board and how they >> can affect or impair each
other.Ulf is >> very responsive, I wish TI and others would participate as
well.Ah ok. (Actually until you mentioned it I didn't even notice linnix
had replied inline to my first question. Sorry 'bout that, linnix.
Was browsing over at amazon.com and was getting worried about some
of the comments the users said...
The AT90-series were the (AFAIK) "original" processors in the AVR
family. That family recently split into the ATmega-series with an
enhanced instruction set (and, generally, larger processors) and the
ATtiny family that is, well, tiny by comparison.
There is some slop-over, with the relatively new AT90CAN128 chip being
an almost identical twin to the ATmega128.
All you really need to get started is, say, an ATmega8, an AVRISP
programmer or the STK500 (if you don't have breadboards and bench
power supplies handy), a copy of the free AVR Studio, and the device
manual. The individual chapters in the manual do a good job of
explaining how to tickle the various peripherals. The on-line help in
AVR Studio handles the assembler and instruction set.
Like Joerg, I typically approach a new processor with the embedded
equivalent of "Hello, world!": get one pin to toggle at an intended
rate using one of the chip's timers and an interrupt service routine.
That's enough to validate that I grok the toolchain, can create a
runnable image and get it loaded, and can sling around the necessary
bits to handle ISRs and I/O. From there, the rest is just coding ...
Simon said:I Agree with the others, but If you still want a reference book for
programming in C the AVRs, I can recomend you this one:
Embedded C Programming and the Atmel AVR
Authors are Barnett, Cox &Ocull
you can get it from B&N
2) Let's say I want to make a simple AA battery tester (0 to 1.5 VDC
range), and interface it to the PC via serial port. I know I'll need
an ADC, and I can probably get away with using the one on the chip
(comparator, right?). Anyone have any schematic for building such an
AVR-to-Serial interface?
linnix said:Yes, a Max232
Here is a battery charger with RS232 and LED read out. The LEDs are
time multiplexed and maintain a rather constant brightness across
voltage range of 2.4V to 2.8V (two NiMH cells). It's using the
Atmega169, but should work with 165 (cheaper) as well. The basic
components are:
165/169
Max232 w/ 5 Cs
Analog power filter (L, C and 2 R)
LM317
SMPS is optional
Analog multiplexer is not needed.
http://linnix.com/proto
[email protected] said:A Maxim part? From previous threads, I think I should stay away from
those...
Pretty neat! You used a drive bay, huh.
I couldn't find the schematics on your site though.
I'm mostly interested in the serial
output circuitry. Is yours a bit-banger?
Ah, I think I'm starting to get it. Use a dedicated RS-232 chip. And
here I was banging my head against a wall trying to figure out how to
build my own.
Well, surprisingly, Mouser actually seems to have a few MAXIM 232s in
stock...
Hmm... if I'm going to use an output chip to control my computer
interfaces, maybe I should just bite the bullet and look for a USB
output chip... any suggestions? ;-)
linnix said:The AT90USB128 is almost pin compatible with the 165/169/329/649.
Unfortunately, you have to rewire pin 2 to 5 for USB and RS232 to other
pins. Actually, we simply bring out the pins to vias and wire them for
either chip. This is a lousy design by Atmel. I wish there is a
AT90USB128/Atmega649 combo.
Looks like the AT90USB128 is about $14 from Digikey. A (Texas
Instruments!) MAX232 is about $0.90. For a beginner, I think I'll
stick with RS-232. (Should be easier to write the software for the PC
side too.)
I think I'll try and build my own programmer. I'll try the
ATTINY11-6PC: $0.53 each at Mouser. What a deal! At this rate I can
buy more than one, in case I burn it out.
2) Let's say I want to make a simple AA battery tester (0 to 1.5 VDC
range), and interface it to the PC via serial port. I know I'll need
an ADC, and I can probably get away with using the one on the chip
(comparator, right?). [...]
[...] Anyone have any schematic for building such an
AVR-to-Serial interface?
fwiw, I went over to Borders last night, and even the PIC books didn't
discuss in much detail how to interface with the PC. Just only how to
interface the programmer with the PC. Sheesh.
Tim said:In sci.electronics.design [email protected] wrote:
-=snip=-
Best advice for a hobbyist: Buy big. Considering the cost of shipping,
it's a false economy to buy the really low-end chips. You'll end up
making another order very soon when you find your first project is
larger than you expect. What you though was a saving ends up as being
more profit for FexEx.
I'd suggest an ATmega8 (or two) and a few matching sockets - you can
then swap the chip from project to project (no need for the sockets if
you don't plan to solder stuff together yet, a breadboard is one big
socket!). The ATmega8 has a UART, which means it has hardware to make
talking to a PC's serial port easier[1]. It has a good amount of RAM
and flash, which means you can use things like C's printf function to
make life easier (printf and associated gubbins takes up around 2.5K of
flash). It has multiple timers, plenty of pins, PWM and a bunch of other
stuff you'll soon find you want.