pu2clr / SI5351

Multipurpose signal generator with SI5351
MIT License
19 stars 12 forks source link

error compiling "si5351_signal_generator2.ino" #1

Open rakhmatvaris opened 1 year ago

rakhmatvaris commented 1 year ago

I'm using Arduino 1.8.15. In the "si5351wire.cpp" section I get an error when compiling "si5351_signal_generator2.ino" ....... ....... Si5351wire::Si5351wire(uint8_t i2c_addr, uint8_t i2c_sda, uint8_t i2c_scl) { i2c_bus_addr = i2c_addr; xtal_freq[0] = SI5351wire_XTAL_FREQ; Wire.begin(i2c_sda, i2c_scl); <------- in this line a get "RED LINE" ...... ...... ......

Arduino: 1.8.15 (Windows 10), Board: "Arduino Uno"

D:\hobi\RF Signal Generator\Multipurpose Sigen pu2clr\SI5351-master\source\si5351_signal_generator2\si5351wire.cpp: In constructor 'Si5351wire::Si5351wire(uint8_t, uint8_t, uint8_t)':

si5351wire.cpp:40:29: error: no matching function for call to 'TwoWire::begin(uint8_t&, uint8_t&)'

Wire.begin(i2c_sda, i2c_scl);

                         ^

In file included from D:\hobi\RF Signal Generator\Multipurpose Sigen pu2clr\SI5351-master\source\si5351_signal_generator2\si5351wire.cpp:28:0:

C:\Users\Kalila\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.8.5\libraries\Wire\src/Wire.h:53:10: note: candidate: void TwoWire::begin()

 void begin();

      ^~~~~

C:\Users\Kalila\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.8.5\libraries\Wire\src/Wire.h:53:10: note: candidate expects 0 arguments, 2 provided

C:\Users\Kalila\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.8.5\libraries\Wire\src/Wire.h:54:10: note: candidate: void TwoWire::begin(uint8_t)

 void begin(uint8_t);

      ^~~~~

C:\Users\Kalila\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.8.5\libraries\Wire\src/Wire.h:54:10: note: candidate expects 1 argument, 2 provided

C:\Users\Kalila\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.8.5\libraries\Wire\src/Wire.h:55:10: note: candidate: void TwoWire::begin(int)

 void begin(int);

      ^~~~~

C:\Users\Kalila\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.8.5\libraries\Wire\src/Wire.h:55:10: note: candidate expects 1 argument, 2 provided

C:\Users\Kalila\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.8.5\libraries\Wire\src/Wire.h: In member function 'uint8_t Si5351wire::si5351wire_read(uint8_t)':

C:\Users\Kalila\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.8.5\libraries\Wire\src/Wire.h:69:13: note: candidate 1: uint8_t TwoWire::requestFrom(int, int, int)

 uint8_t requestFrom(int, int, int);

         ^~~~~~~~~~~

C:\Users\Kalila\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.8.5\libraries\Wire\src/Wire.h:66:13: note: candidate 2: uint8_t TwoWire::requestFrom(uint8_t, uint8_t, uint8_t)

 uint8_t requestFrom(uint8_t, uint8_t, uint8_t);

         ^~~~~~~~~~~

si5351_signal_generator2:116:1: error: 'Si5351' does not name a type; did you mean 'Si5351wire'?

Si5351 si5351;

^~

Si5351wire

D:\hobi\RF Signal Generator\Multipurpose Sigen pu2clr\SI5351-master\source\si5351_signal_generator2\si5351_signal_generator2.ino: In function 'void setup()':

si5351_signal_generator2:159:3: error: 'si5351' was not declared in this scope

si5351.init(SI5351_CRYSTAL_LOAD_8PF, 0, 0);

^~

si5351_signal_generator2:159:15: error: 'SI5351_CRYSTAL_LOAD_8PF' was not declared in this scope

si5351.init(SI5351_CRYSTAL_LOAD_8PF, 0, 0);

           ^~~~~~~~~~~~~~~~~~~~~~~

D:\hobi\RF Signal Generator\Multipurpose Sigen pu2clr\SI5351-master\source\si5351_signal_generator2\si5351_signal_generator2.ino:159:15: note: suggested alternative: 'SI5351wire_CRYSTAL_LOAD_8PF'

si5351.init(SI5351_CRYSTAL_LOAD_8PF, 0, 0);

           ^~~~~~~~~~~~~~~~~~~~~~~

           SI5351wire_CRYSTAL_LOAD_8PF

si5351_signal_generator2:161:44: error: 'SI5351_PLL_INPUT_XO' was not declared in this scope

si5351.set_correction(CORRECTION_FACTOR, SI5351_PLL_INPUT_XO);

                                        ^~~~~~~~~~~~~~~~~~~

D:\hobi\RF Signal Generator\Multipurpose Sigen pu2clr\SI5351-master\source\si5351_signal_generator2\si5351_signal_generator2.ino:161:44: note: suggested alternative: 'SI5351wire_PLL_INPUT_XO'

si5351.set_correction(CORRECTION_FACTOR, SI5351_PLL_INPUT_XO);

                                        ^~~~~~~~~~~~~~~~~~~

                                        SI5351wire_PLL_INPUT_XO

si5351_signal_generator2:162:18: error: 'SI5351_PLL_FIXED' was not declared in this scope

si5351.set_pll(SI5351_PLL_FIXED, SI5351_PLLA);

              ^~~~~~~~~~~~~~~~

D:\hobi\RF Signal Generator\Multipurpose Sigen pu2clr\SI5351-master\source\si5351_signal_generator2\si5351_signal_generator2.ino:162:18: note: suggested alternative: 'SI5351wire_PLL_FIXED'

si5351.set_pll(SI5351_PLL_FIXED, SI5351_PLLA);

              ^~~~~~~~~~~~~~~~

              SI5351wire_PLL_FIXED

si5351_signal_generator2:162:36: error: 'SI5351_PLLA' was not declared in this scope

si5351.set_pll(SI5351_PLL_FIXED, SI5351_PLLA);

                                ^~~~~~~~~~~

D:\hobi\RF Signal Generator\Multipurpose Sigen pu2clr\SI5351-master\source\si5351_signal_generator2\si5351_signal_generator2.ino:162:36: note: suggested alternative: 'SI5351wire_PLLA'

si5351.set_pll(SI5351_PLL_FIXED, SI5351_PLLA);

                                ^~~~~~~~~~~

                                SI5351wire_PLLA

si5351_signal_generator2:163:29: error: 'si5351_clock' was not declared in this scope

si5351.set_freq(vfoFreq, (si5351_clock) currentClock); // Start CLK0 (VFO)

                         ^~~~~~~~~~~~

D:\hobi\RF Signal Generator\Multipurpose Sigen pu2clr\SI5351-master\source\si5351_signal_generator2\si5351_signal_generator2.ino:163:29: note: suggested alternative: 'si5351wire_clock'

si5351.set_freq(vfoFreq, (si5351_clock) currentClock); // Start CLK0 (VFO)

                         ^~~~~~~~~~~~

                         si5351wire_clock

si5351_signal_generator2:166:24: error: 'SI5351_CLK1' was not declared in this scope

si5351.output_enable(SI5351_CLK1, 0);

                    ^~~~~~~~~~~

D:\hobi\RF Signal Generator\Multipurpose Sigen pu2clr\SI5351-master\source\si5351_signal_generator2\si5351_signal_generator2.ino:166:24: note: suggested alternative: 'SI5351wire_CLK1'

si5351.output_enable(SI5351_CLK1, 0);

                    ^~~~~~~~~~~

                    SI5351wire_CLK1

si5351_signal_generator2:167:24: error: 'SI5351_CLK2' was not declared in this scope

si5351.output_enable(SI5351_CLK2, 0);

                    ^~~~~~~~~~~

D:\hobi\RF Signal Generator\Multipurpose Sigen pu2clr\SI5351-master\source\si5351_signal_generator2\si5351_signal_generator2.ino:167:24: note: suggested alternative: 'SI5351wire_CLK2'

si5351.output_enable(SI5351_CLK2, 0);

                    ^~~~~~~~~~~

                    SI5351wire_CLK2

D:\hobi\RF Signal Generator\Multipurpose Sigen pu2clr\SI5351-master\source\si5351_signal_generator2\si5351_signal_generator2.ino: In function 'void loop()':

si5351_signal_generator2:300:5: error: 'si5351' was not declared in this scope

 si5351.set_freq(vfoFreq, (si5351_clock) currentClock);

 ^~~~~~

si5351_signal_generator2:300:31: error: 'si5351_clock' was not declared in this scope

 si5351.set_freq(vfoFreq, (si5351_clock) currentClock);

                           ^~~~~~~~~~~~

D:\hobi\RF Signal Generator\Multipurpose Sigen pu2clr\SI5351-master\source\si5351_signal_generator2\si5351_signal_generator2.ino:300:31: note: suggested alternative: 'si5351wire_clock'

 si5351.set_freq(vfoFreq, (si5351_clock) currentClock);

                           ^~~~~~~~~~~~

                           si5351wire_clock

exit status 1

no matching function for call to 'TwoWire::begin(uint8_t&, uint8_t&)'

This report would have more information with "Show verbose output during compilation" option enabled in File -> Preferences.

Fildingo commented 3 months ago

Hi, I am using nano board and have exact same issue. Can somebody help please ?