Yahoo Groups archive

AVR-Chat

Index last updated: 2026-04-28 22:41 UTC

Message

Re: [AVR-Chat] AVR port pin verification help?

2006-11-22 by Ned Konz

luthjej wrote:
> Hi all,
>    I'm new to this group, predominantly because I've always used PIC's
> for control applications - but I've decided that it's time to give the
> AVR a whirl; the feature list on the mega series AVR's is just too
> good to pass up! :)
> 
> For my first design, I'm using a mega8 MCU for a closed loop
> automotive control circuit, nothing terribly fancy, but I'm just
> wondering about port allocations in terms of digital I/O's - I know
> that on the older MCU's (PIC12Fxx, HC11 etc) there were significant
> restrictions on what ports can be used for what function (i.e. PWM was
> restricted to only a few pins, some ports were input or output only etc).
> 
> So, just before I go and get the PCB printed up, I was just hoping
> that the knowledgable could cast their eye on my pin allocations that
> I'm not doing anything impossible (or anything that's a particularly
> bad idea! :).
> 
> I've read the data sheet cover to cover, and haven't come across
> anything yet, although I'm still a bit vague as to which pins can
> actually support PWM and whether different pins on different ports can
> be allocated to different functions at the same time (e.g ADC Port -
> can I do digital logic in, logic level out AND ADC conversion - all at
> the same time?
> 
Read the section starting at page 56 on I/O ports/Alternate Port 
Functions. For a given internal peripheral you typically have a limited 
set of choices; perhaps only one.

On the ADC ports, there is a discussion about combining ADC operation 
and digital operation (in the ADC section, I think). These (and maybe 
the analog comparator inputs?) are about the only case I can think of of 
being able to use a pin in multiple modes; typically with the digital 
functions the pins go through a multiplexer and you have to choose.

> PB0   - Out Piezo Buzzer Out (Direct Drive 20mA Max)

> PB1,2 - Out PWM Drive 1,2 (to FET driver IC)
If you want to use the hardware PWM outputs this is a sensible choice 
(PB1=OC1A, PB2=OC1B). But both will be running at the same frequency 
because they share the same timer counter.

> PD0,1 - In/Out RS232 Out via MAX232
Right.

> PD2-7 - LCD Display Out
OK, as long as you don't need the analog comparator or external 
interrupt pins.

> PB6   - Out SPI Device Slave Select
So the AVR is a SPI master here?

> PB7   - In Keyboard (switches via 1N914's across PD2-7)

> PC0   - 0-5v analogue in (for ADC use)
Assuming Vref is 5V, that's OK.

> PC1-3 - +12v logic in (direct connect via 1k resistor)
Nope. You'd be driving too much current through the input protection 
diodes. What's your VCC level? Why 1K? And if you mean "automotive 12V" 
you VERY MUCH NEED input protection circuitry! Remember that you can see 
voltages up to 60V here (if you have a loose battery cable, for 
instance) and even negative voltages! There is much information 
available on input signal conditioning for automotive voltages. Same 
thing goes for your 12V-to-5V power supply; you can't expect to safely 
connect just a 7805 and have everything survive!

> PC4   - 0-5v analogue in (for ADC use)
Assuming Vref is 5V, that's OK.

> PC5   - FET Drive (on/off) via FET Driver IC
OK

> MISO, SCK, MOSI - SPI Bus & ICP Header (Also LED via 500R resistor to
> indicate SPI activity)
Right:
PB4/MISO
PB3/MOSI
PB5/SCK
> 
> AREF,AVCC,VCC - Regulated +5v (no decoupling - direct connect)

If you want to use AVcc for AREF, you should do this internally and use 
AREF for a decoupling cap. And you might want to connect AVCC to VCC via 
an inductor/cap network.

> 
> Thanks in advance for your help.
> 
> 
> Jon
> 
> 
> 
> 
> 
>  
> Yahoo! Groups Links
> 
> 
> 
> 



-- 
Ned Konz
ned@bike-nomad.com
http://bike-nomad.com

Attachments

Move to quarantaine

This moves the raw source file on disk only. The archive index is not changed automatically, so you still need to run a manual refresh afterward.