This is an old revision of the document!
void setup() {
//All pins are capable of Digital output, though P5 is 3v at HIGH instead of 5v
pinMode(0, OUTPUT); //0 is P0, 1 is P1, 2 is P2, etc - unlike the analog inputs, for digital outputs the pin number matches
}
void loop() {
digitalWrite(0,HIGH); //turn the pin HIGH (5v)
delay(1000);
digitalWrite(0,HIGH); //turn the pin LOW (GND)
delay(1000);
}
NOTE: The internal pull-up (turned on by calling digitalWrite(0) after setting the pin to output, where 0 is the pin number) are much weaker (about 25k ohm) on an attiny then on an Arduino so the onboard LED interferes with them. If you need them you can use a different port, change your circuit to not need the internal pull-up, or cut the LED trace. For Model A this would apply to P1 for Model B this would apply to P0.(Model Identification)
int sensorValue = 0;
void setup() {
//All pins are capable of Digital input
pinMode(0, INPUT); //0 is P0, 1 is P1, 2 is P2, etc - unlike the analog inputs, for digital inputs the pin number matches
}
void loop() {
sensorValue = digitalRead(1); //returns HIGH or LOW (true or false / 1 or 0)
}
int sensorValue = 0;
void setup() {
//You need not set pin mode for analogRead -
//though if you have set the pin to output and later want to read from it then you need to set //pinMode(0,INPUT); where 0 is the physical pin number not the analog input number.
//see below for the proper pinMode statement to go with each analog read
}
void loop() {
// The analog pins are referenced by their analog port number, not their pin number and are as follows:
sensorValue = analogRead(1); //read P2
//to set to input: pinMode(2,INPUT);
//THIS IS P2, P2 is Analog Input 1, so when you are using analog read you refer to it as 1
//sensorValue = analogRead(2); //read P4
//to set to input: pinMode(4,INPUT);
//THIS IS P4, P2 is Analog Input 2, so when you are using analog read you refer to it as 2
//sensorValue = analogRead(3); //read P3
//to set to input: pinMode(3,INPUT);
//THIS IS P3, P3 is Analog Input 3, so when you are using analog read you refer to it as 3
//sensorValue = analogRead(0); //read P5
//to set to input: pinMode(5,INPUT);
//THIS IS P5, P5 is Analog Input 0, so when you are using analog read you refer to it as 0
}
void setup() {
//P0, P1, and P4 are capable of hardware PWM (analogWrite)
pinMode(0, OUTPUT); //0 is P0, 1 is P1, 4 is P4 - unlike the analog inputs, for analog (PWM) outputs the pin number matches
}
void loop() {
analogWrite(0,255); //turn the pin on full (100%)
delay(1000);
analogWrite(0,128); //turn the pin on half (50%)
delay(1000);
analogWrite(0,0); //turn the pin off (0%)
delay(1000);
}