Autor Tema: problema al compilar 2 librerias  (Leído 3460 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado johenrod

  • PIC18
  • ****
  • Mensajes: 276
problema al compilar 2 librerias
« en: 14 de Agosto de 2023, 13:34:14 »
cordial saludo,
estoy tratando de hacer un control de velocidad con un modulo de cruce por cero y me trabaja bien pero quiero agregarle una libreria para medir las "rpm" y me sale error al compilar en arduino uno, si compilo en tarjeta mega compila bien, sera que ambas librerias comparten algo?
Gracias de antemano.

sale este error
Citar
libraries\FreqCount\FreqCount.cpp.o (symbol from plugin): In function `FreqCountClass::begin(unsigned int)':
(.text+0x0): multiple definition of `__vector_7'
libraries\RBDDimmer-master\avr\RBDmcuAVR.cpp.o (symbol from plugin):(.text+0x0): first defined here
collect2.exe: error: ld returned 1 exit status
exit status 1
Error compilando para la tarjeta Arduino Uno.

Código: C
  1. #include <RBDdimmer.h>//
  2. #include <FreqCount.h>
  3.  
  4.  
  5. void setup() {
  6.  
  7.   FreqCount.begin(9600);
  8.  
  9. }
  10.  
  11. void loop()
  12. {
  13.     if (FreqCount.available())
  14.     {
  15.       unsigned long count=FreqCount.read();
  16.     }
  17.    
  18.  
  19. }
Si algo parece complicado... es por que esta mal explicado.

Desconectado Eduardo2

  • PIC24H
  • ******
  • Mensajes: 1004
Re:problema al compilar 2 librerias
« Respuesta #1 en: 14 de Agosto de 2023, 17:07:23 »
Cuando compilás para Mega, RBDDimmer te usa la interrupción  _TIMER4_COMPA_VECTOR, pero cuando es para Nano o Uno la _TIMER2_COMPA_VECTOR que también la usa FreqCount.

Probá editar RBDmcuAVR.h  cambiando  #define DIMMER_TIMER 2  por el timer 0 o 1 .   Pero como NO son todos iguales NI controlé si los programas te dejan alguno libre, puede que no funcione.

Desconectado johenrod

  • PIC18
  • ****
  • Mensajes: 276
Re:problema al compilar 2 librerias
« Respuesta #2 en: 17 de Agosto de 2023, 13:35:29 »
Cuando compilás para Mega, RBDDimmer te usa la interrupción  _TIMER4_COMPA_VECTOR, pero cuando es para Nano o Uno la _TIMER2_COMPA_VECTOR que también la usa FreqCount.

Probá editar RBDmcuAVR.h  cambiando  #define DIMMER_TIMER 2  por el timer 0 o 1 .   Pero como NO son todos iguales NI controlé si los programas te dejan alguno libre, puede que no funcione.

Gracias "Eduardo2" por tu respuesta, imaginaba que algo asi pasaba voy a mirar como se abre la libreria y tratar de hacer los cambios que me sugieres.
Si algo parece complicado... es por que esta mal explicado.


 

anything