;Tinyblink3: can I blink an ATTINY85 and use pot input for speed? ;picked off the internet and changed/cleaned up ; ;18-10-2024 MP .include "tn85def.inc" ; setup the registers and their names for this program .def mask = r16 ; mask register (OUT can only work with registers :-( ) .def ledR = r17 ; led register .def oLoopR = r18 ; outer loop register .def work = r19 ; work register for setups in registers .def iLoopR = r24 ; inner loop register .def sLoopR = r25 ; super loop register ;setup my local constants and their names .equ oVal = 0xFF ; outer loop value .equ iVal = 0xFF ; inner loop value .equ sVal = 0x20 ; super loop value ;indicate start of code segment and originating address .cseg .org 0x00 ;setup the analog input for free running use ; We're going to use ADC1 on PB2 on pin 7 of the ATTINY85 ; ADMUX: REFS1 REFS0 ADLAR REFS2 MUX3 MUX2 MUX1 MUX0 ; 0 0 1 0 0 0 0 1 single ended, 5V ref, input single ended on pb2 on pin7, left aligned ldi work,0b00100001 out ADMUX,work ;Now setup the ADCSRA register: 128 prescaler, enabled, free running ; ADCSRA: ADEN ADSC ADATE ADIF ADIE ADPS2 ADPS1 ADPS0 ; 1 1 1 0 0 1 1 1 ldi work,0b11100111 out ADCSRA,work ; make sure ADCSRB is cleared to make the thing really free running clr work out ADCSRB,work ; Setup the DIDR0 register: disable the digital pin 2 (ADC1) to be used as analog ; DIDR0: --- --- ADCD ADC2D ADC3D ADC1D AIN1D AIN0D ; x x 0 0 0 1 0 0 ldi work,(1<