Hi there i decided to make my pcb in a uno type of configuration
however i wanted to use the small 32 pin surface mt
the problem i have is the pin configuration is different than the dil version
my question is how does the software know which chip it is using and can it adapt to the different chip
or do i have to make some alterations in the way i use this chip
i know it might seem a bit vague but if you have had to do this you will know what i 'm talking about
i have attached a 32 pin schematic from easy eda
you will see the osc is on pins 7, 8
also pin 4 is to vcc
on the dil package the the osc is pins 9,10
and the pin 4 is D2 which is used for spi connections any help on this would be appreciated
The software only knows it is running on an Atmega328P. It doesn't know whether the package is -PU (DIP) or -AU (SMD with leads) or -MU (SMD without leads).
It only knows for example that PORTD is D0 to D7 in an Uno (or other '328P based board) for example. It us up to you to make the physical connection from PORTD-0 to whatever pin in your PCB you are calling D0.
If you look at the schematic for a ProMini you can see the connections for an SMD part.
RonaldJKirby:
the problem i have is the pin configuration is different than the dil version
my question is how does the software know which chip it is using and can it adapt to the different chip
or do i have to make some alterations in the way i use this chip
Arduino pin numbers do not refer to the pin numbers of the MCU.
The software (core) should be fine with the different pin configuration as it works using port/pin names so for example RX (Arduino pin 0) on the DIP is pin 2 and on the 32MLF it is pin 30 but both of them refer to the pin as PD0
ok thankyou i didnt realise that , this will make my life better i am new to arduino although i have been doing electronics since 1960 when i was a kid
cheers Ron
Please also note that the 328PB is different enough to the 328P, that the IDE doesn't natively support it. You can still use it, you'll just need to install MiniCore.