Loading...
Pages: [1]   Go Down
Author Topic: [Urgente] Mappatura ADC6 ADC7 in atmega328 32pin  (Read 328 times)
0 Members and 1 Guest are viewing this topic.
0
Offline Offline
Sr. Member
****
Karma: 0
Posts: 412
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Ho un grosso problema, dopo aver fatto la scheda di un prototipo che avevo fatto tempo fa, mi sono accorto che l'atmega328p TQFP (SMD) che mi hanno montato dispone di due ingressi analogici in più, ovvero ADC6 e ADC7.

Sapete se per caso, io li possa già usare o se non sono mappati dall'IDE?
Cioè, se scrivo:

Code:
valore = analogRead(A7);

funziona lo stesso?
Ho provato a compilare e non mi da errori, ma vorrei capire se poi effettivamente, a livello hardware, utilzzerebbe l'ADC7 o meno.

Se non sono mappati, dovrei forse abilitare qualcosa nel file boards.txt?
Logged

Cagliari
Offline Offline
Faraday Member
**
Karma: 49
Posts: 3001
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Li torvi mappati nel file pins_arduino.h nella cartella arduino-1.0.1\hardware\arduino\variants\standard.
Logged

IDE 1.0.4 - Arduino UNO R3 - Ethernet Shield R3 - DCF77 Module - Adafruit Data Loggin Shield - LCD 16x2 RGB positive backlight - i2c LCD backpack - RTC 1307 Board - Saleae Compatibile Logic Analyzer 8ch 24Mhz - ATtiny2313 ProtoBoard - Xino Board - ATtiny 4313 - Arduino 2009 - Arduino USB Serial Ligth - DS18B20 - LM35DZ - ShiftRegister - TL431 - ATtiny 85
Ultimi acquisti:
CodeBender: http://codebender.cc/register/?referrer=PaoloP

0
Offline Offline
Sr. Member
****
Karma: 0
Posts: 412
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset


Però io gli ADC7 e ADC6 li ho sulla porta 22 e 19 dell'atmega328p-PU mentre qui, se ho ben capito, sono da tutt'altra parte:

Code:
#define NUM_DIGITAL_PINS            20
#define NUM_ANALOG_INPUTS           6
#define analogInputToDigitalPin(p)  ((p < 6) ? (p) + 14 : -1)

#if defined(__AVR_ATmega8__)
#define digitalPinHasPWM(p)         ((p) == 9 || (p) == 10 || (p) == 11)
#else
#define digitalPinHasPWM(p)         ((p) == 3 || (p) == 5 || (p) == 6 || (p) == 9 || (p) == 10 || (p) == 11)
#endif

static const uint8_t SS   = 10;
static const uint8_t MOSI = 11;
static const uint8_t MISO = 12;
static const uint8_t SCK  = 13;

static const uint8_t SDA = 18;
static const uint8_t SCL = 19;
static const uint8_t LED_BUILTIN = 13;

static const uint8_t A0 = 14;
static const uint8_t A1 = 15;
static const uint8_t A2 = 16;
static const uint8_t A3 = 17;
static const uint8_t A4 = 18;
static const uint8_t A5 = 19;
static const uint8_t A6 = 20;
static const uint8_t A7 = 21;

posso stare tranquillo o la mappatura è totalmente diversa dall'atmega328p DIP ?
Forse mi sbaglio ancora ma vi è dichiarato #define NUM_ANALOG_INPUTS  6, ma non dovrebbero essere 8?
« Last Edit: July 24, 2012, 01:55:00 pm by marcus barnet » Logged

Pages: [1]   Go Up
Print
 
Jump to: