I wanted to use the command digitalReadFast in order to get better results from my rotation encoder, but after I downloaded the zip file of the library from here:Google Code Archive - Long-term storage for Google Code Project Hosting. the dwf file, I tryed to add it to arduino then wrote the comman attach and the read comman but from some reaon it is not compiling.
Unless your encoder is high resolution/speed you don't really need to use fast read. Your problem is probably due to you calling the routine to quickly. Try increasing the delay from 1 to about 10 or 20.
If it is a high resolution/speed encoder then you would be better off using interrupts.
Renamed the demo code digitalWriteFastTestUno from pde to ino
Tried to compile. No changes anywhere. So many errors it overflowed the window. Here's some of them. They repeat over and over. Would really like to have digitalWriteFast working.
^
C:\Program Files (x86)\Arduino\libraries\digitalWriteFast/digitalWriteFast.h:153:35: note: in expansion of macro 'digitalPinToTimer'
bitClear(digitalPinToTimer(P), digitalPinToTimerBit(P));
^
digitalWriteFastTestUno.ino:1256:1: note: in expansion of macro 'pinModeFast2'
C:\Program Files (x86)\Arduino\hardware\arduino\avr\cores\arduino/Arduino.h:171:80: error: invalid type argument of unary '' (have 'uint8_t {aka unsigned char}') #define digitalPinToTimer(P) ( pgm_read_byte( digital_pin_to_timer_PGM + (P) ) )
^
C:\Program Files (x86)\Arduino\hardware\arduino\avr\cores\arduino/Arduino.h:105:32: note: in definition of macro 'bitClear' #define bitClear(value, bit) ((value) &= ~(1UL << (bit)))
^
C:\Program Files (x86)\Arduino\libraries\digitalWriteFast/digitalWriteFast.h:153:35: note: in expansion of macro 'digitalPinToTimer'
bitClear(digitalPinToTimer(P), digitalPinToTimerBit(P));
^
digitalWriteFastTestUno.ino:1262:1: note: in expansion of macro 'pinModeFast2'
C:\Program Files (x86)\Arduino\hardware\arduino\avr\cores\arduino/Arduino.h:171:80: error: invalid type argument of unary '' (have 'uint8_t {aka unsigned char}') #define digitalPinToTimer(P) ( pgm_read_byte( digital_pin_to_timer_PGM + (P) ) )
^
C:\Program Files (x86)\Arduino\hardware\arduino\avr\cores\arduino/Arduino.h:105:32: note: in definition of macro 'bitClear' #define bitClear(value, bit) ((value) &= ~(1UL << (bit)))
^
C:\Program Files (x86)\Arduino\libraries\digitalWriteFast/digitalWriteFast.h:153:35: note: in expansion of macro 'digitalPinToTimer'
bitClear(digitalPinToTimer(P), digitalPinToTimerBit(P));
^
digitalWriteFastTestUno.ino:1264:1: note: in expansion of macro 'pinModeFast2'
C:\Program Files (x86)\Arduino\hardware\arduino\avr\cores\arduino/Arduino.h:171:80: error: invalid type argument of unary '' (have 'uint8_t {aka unsigned char}') #define digitalPinToTimer(P) ( pgm_read_byte( digital_pin_to_timer_PGM + (P) ) )
^
C:\Program Files (x86)\Arduino\hardware\arduino\avr\cores\arduino/Arduino.h:105:32: note: in definition of macro 'bitClear' #define bitClear(value, bit) ((value) &= ~(1UL << (bit)))
^
C:\Program Files (x86)\Arduino\libraries\digitalWriteFast/digitalWriteFast.h:153:35: note: in expansion of macro 'digitalPinToTimer'
bitClear(digitalPinToTimer(P), digitalPinToTimerBit(P));
^
digitalWriteFastTestUno.ino:1269:1: note: in expansion of macro 'pinModeFast2'
C:\Program Files (x86)\Arduino\hardware\arduino\avr\cores\arduino/Arduino.h:171:80: error: invalid type argument of unary '' (have 'uint8_t {aka unsigned char}') #define digitalPinToTimer(P) ( pgm_read_byte( digital_pin_to_timer_PGM + (P) ) )
^
C:\Program Files (x86)\Arduino\hardware\arduino\avr\cores\arduino/Arduino.h:105:32: note: in definition of macro 'bitClear' #define bitClear(value, bit) ((value) &= ~(1UL << (bit)))
^
C:\Program Files (x86)\Arduino\libraries\digitalWriteFast/digitalWriteFast.h:153:35: note: in expansion of macro 'digitalPinToTimer'
bitClear(digitalPinToTimer(P), digitalPinToTimerBit(P));
^
digitalWriteFastTestUno.ino:1271:1: note: in expansion of macro 'pinModeFast2'
C:\Program Files (x86)\Arduino\hardware\arduino\avr\cores\arduino/Arduino.h:171:80: error: invalid type argument of unary '' (have 'uint8_t {aka unsigned char}') #define digitalPinToTimer(P) ( pgm_read_byte( digital_pin_to_timer_PGM + (P) ) )
^
C:\Program Files (x86)\Arduino\hardware\arduino\avr\cores\arduino/Arduino.h:105:32: note: in definition of macro 'bitClear' #define bitClear(value, bit) ((value) &= ~(1UL << (bit)))
^
C:\Program Files (x86)\Arduino\libraries\digitalWriteFast/digitalWriteFast.h:113:35: note: in expansion of macro 'digitalPinToTimer'
bitClear(digitalPinToTimer(P), digitalPinToTimerBit(P));
^
digitalWriteFastTestUno.ino:1277:1: note: in expansion of macro 'digitalWriteFast'
C:\Program Files (x86)\Arduino\hardware\arduino\avr\cores\arduino/Arduino.h:171:80: error: invalid type argument of unary '' (have 'uint8_t {aka unsigned char}') #define digitalPinToTimer(P) ( pgm_read_byte( digital_pin_to_timer_PGM + (P) ) )
^
C:\Program Files (x86)\Arduino\hardware\arduino\avr\cores\arduino/Arduino.h:105:32: note: in definition of macro 'bitClear' #define bitClear(value, bit) ((value) &= ~(1UL << (bit)))
^
C:\Program Files (x86)\Arduino\libraries\digitalWriteFast/digitalWriteFast.h:113:35: note: in expansion of macro 'digitalPinToTimer'
bitClear(digitalPinToTimer(P), digitalPinToTimerBit(P));
^
digitalWriteFastTestUno.ino:1279:1: note: in expansion of macro 'digitalWriteFast'
C:\Program Files (x86)\Arduino\hardware\arduino\avr\cores\arduino/Arduino.h:171:80: error: invalid type argument of unary '' (have 'uint8_t {aka unsigned char}') #define digitalPinToTimer(P) ( pgm_read_byte( digital_pin_to_timer_PGM + (P) ) )
^
C:\Program Files (x86)\Arduino\hardware\arduino\avr\cores\arduino/Arduino.h:105:32: note: in definition of macro 'bitClear' #define bitClear(value, bit) ((value) &= ~(1UL << (bit)))
^
C:\Program Files (x86)\Arduino\libraries\digitalWriteFast/digitalWriteFast.h:134:34: note: in expansion of macro 'digitalPinToTimer'
bitClear(*digitalPinToTimer(P), digitalPinToTimerBit(P)) ,
^