Created Wed, 22 Apr 2015 16:54:05 +0000 by GastonLagaffe
Wed, 22 Apr 2015 16:54:05 +0000
I use "The Github version for chipKIT" core to compile a library using OpenTimer1. This gives me the error:
In file included from C:\Data\UECIDE\libraries\LEDmatrix7219\LEDmatrix7219.cpp:37:0: C:\Data\UECIDE\libraries\LEDmatrix7219\/hardware/pic32/HW_PIC32.h: In member function 'void LEDmatrix7219::__start_interrupt()': C:\Data\UECIDE\libraries\LEDmatrix7219\/hardware/pic32/HW_PIC32.h:4:13: error: 'T1_ON' was not declared in this scope C:\Data\UECIDE\libraries\LEDmatrix7219\/hardware/pic32/HW_PIC32.h:4:21: error: 'T1_PS_1_64' was not declared in this scope C:\Data\UECIDE\libraries\LEDmatrix7219\/hardware/pic32/HW_PIC32.h:4:34: error: 'T1_SOURCE_INT' was not declared in this scope C:\Data\UECIDE\libraries\LEDmatrix7219\/hardware/pic32/HW_PIC32.h:4:53: error: 'OpenTimer1' was not declared in this scope ... similar errors removed ... Failed compiling libraries
When compiling with the "chipKIT" core, the code compiles and runs as expected. I use the chipkit DP32 board, UECIDE Version 0.8.7z36, Build number 565
Is this an error in the core or am I doing something stupid?
Wed, 22 Apr 2015 17:29:43 +0000
The "chipKIT" core is the "old" core with the "old" compiler. The github version, which is what is the default core in the newer UECIDE, and also what is in the latest test versions of MPIDE, uses the new compiler. That has some differences in its definitions.
It looks like they may be using some "plib" calls which are no longer supported in the chipKIT system. "plib" should not be used in the current system, full stop.
You will either have to re-write the library to not use the old "plib" crutch, or use a different library (there are two good ones currently - mine is at https://github.com/MajenkoLibraries/Timer - I forget where the other one is, but you can find it in a thread on here. Also, if you use the latest 0.8.8alpha of UECIDE the library repository has my library in it for simple installation).