Zápisník experimentátora
Hierarchy: ATtiny85
Pri čítaní knihy o Adafruit Trinket, čo je vlastne len miniatúrna doska s mikrokontrolérom ATtiny85 ma zaujala zmienka o tom, ako robili USB komunikáciu na pinoch 3 a 4 a narazili na problém podivnej hodnoty napätia na pine po zapnutí interného pull-up rezistora. Znelo to divne. Prečo by práve na jednom porte bola iná hodnota než Vcc?
Preto vznikol tento miniatúrny program, ktorý na všetkých dostupných portoch zapne interný pull-up. A potom som zobral multimeter a overoval, či je to naozaj tak. Na mojom ATtiny85 som však na všetkých pinoch nameral správnu hodnotu. Otázka preto znie. Urobili pri meraní chybu, alebo je naozaj nimi popisované správanie možne?
// ATMEL ATTINY85
//
// +-\/-+
// (D 5) PB5 1| |8 Vcc
// (D 3) PB3 2| |7 PB2 (D 2)
// (D 4) PB4 3| |6 PB1 (D 1)
// GND 4| |5 PB0 (D 0)
// +----+
///
/// Setup ports
///
void setup() {
pinMode(0,INPUT_PULLUP);
pinMode(1,INPUT_PULLUP);
pinMode(2,INPUT_PULLUP);
pinMode(3,INPUT_PULLUP);
pinMode(4,INPUT_PULLUP);
}
///
/// Nothing to do
///
void loop() {
}
Ja som testoval na DIP verzii mikrokontroléra, oni na SMD. Možno je rozdiel v tých verziách púzdra, alebo ich várka mikrokontrolérov vykazovala nejaký defekt. SMD verziu ale môžem o pár dní otestovať a tak uvidíme, či nájdeme na SMD verzii popisovanú vlastnosť, o ktorej sa v datasheete nikde nedočítate.
10.08.2015