Matheus-Garbelini / PJON-C

3 stars 0 forks source link

Can't compile with provided code #1

Open celem opened 7 years ago

celem commented 7 years ago

Compile fails with errors of undefined 'pullDownFast'. Using grep I don't find 'pullDownFast' in PJON_C or the original 'PJON' and PJON_ASK repositories.

/home/ecomer/Arduino/libraries/PJON-C/C_SoftwareBitBang.cpp: In function 'uint16_t receive_byte(uint8_t, uint8_t)': /home/ecomer/Arduino/libraries/PJON-C/C_SoftwareBitBang.cpp:117:29: error: 'pullDownFast' was not declared in this scope pullDownFast(input_pin);

                         ^

/home/ecomer/Arduino/libraries/PJON-C/C_SoftwareBitBang.cpp: In function 'void send_response(uint8_t, uint8_t, uint8_t)': /home/ecomer/Arduino/libraries/PJON-C/C_SoftwareBitBang.cpp:156:30: error: 'pullDownFast' was not declared in this scope pullDownFast(output_pin);

                          ^
gioblu commented 7 years ago

CIao @celem pullDownFast has been renamed to avoid naming collisions with the standard digitalWriteFast library in: PJON_IO_PULL_DOWN in the PJON's master version, also if I do not think this is the actual problem. Could you please paste the code you are trying to compile (I do not see it)

celem commented 7 years ago

It is repository code. I cloned the Master repository (https://github.com/Matheus-Garbelini/PJON-C.git) and used the Arduino IDE to compile PJON_C_Transmitter_Example.ino

I made no changes to any of the code or repository - it is exactly as in the github repository.

gioblu commented 7 years ago

Ciao @celem I am sorry, I am not the owner of this repo, only wanted to help to clear out this issue.

celem commented 7 years ago

Sorry, I see that the owner is Matheus-Garbelini. I see that you are the author of PJON. Thanks for trying to help. Anyway, the code in the repository will not compile. I've grep'ed the repository for 'pullDownFast' used in the library but it is not defined therein. You said "pullDownFast has been renamed" - what is the new name?

I compared PJON to PJON_C and PJON replaces pullDownFast with a macro PJON_IO_PULL_DOWN in /PJON/utils/PJON_IO.h

define PJON_IO_PULL_DOWN(P) \

do { if(__builtin_constant_p(P)) { \
    PJON_IO_WRITE(P, LOW); \
    PJON_IO_MODE(P, INPUT); \
  } else \
    digitalWrite(P, LOW); \
    pinMode(P, INPUT); \
} while(0)

This didn't carry over to the PJON_C repository, which seems to be in an indeterminate state.