Issue #69 resolved
Francisco Malpartida
repo owner created an issue

Upgrade the library to support different processor architectures in particular the DUE.

Comments (5)

  1. Henning Marxen

    Hello Malpartida, Thank you for your wonderful library. It works great with my Uno. However, I can't get it to work with my Arduino 101 via I2C. Is support for the 101 planed? Thanks and best regards, Henning

    Arduino: 1.6.7 (Windows 10), Board: "Arduino/Genuino 101"

    Build-Optionen wurden verändert, alles wird neu kompiliert C:\Program Files (x86)\Arduino\libraries\NewliquidCrystal\LiquidCrystal_I2C_ByVac.cpp: In constructor 'LiquidCrystal_I2C_ByVac::LiquidCrystal_I2C_ByVac(uint8_t)':

    C:\Program Files (x86)\Arduino\libraries\NewliquidCrystal\LiquidCrystal_I2C_ByVac.cpp:41:14: warning: statement has no effect [-Wunused-value]

    _polarity == NEGATIVE;
    
              ^
    

    In file included from C:\Program Files (x86)\Arduino\libraries\NewliquidCrystal\LiquidCrystal_SR1W.cpp:35:0:

    C:\Program Files (x86)\Arduino\libraries\NewliquidCrystal\LiquidCrystal_SR1W.h:157:1: warning: multi-line comment [-Wcomment]

    // | | 0.1uF | \

    ^

    In file included from C:\Program Files (x86)\Arduino\libraries\NewliquidCrystal\LiquidCrystal_SR1W.cpp:35:0:

    C:\Program Files (x86)\Arduino\libraries\NewliquidCrystal\LiquidCrystal_SR1W.cpp: In member function 'uint8_t LiquidCrystal_SR1W::clearSR()':

    C:\Program Files (x86)\Arduino\libraries\NewliquidCrystal\LiquidCrystal_SR1W.cpp:77:24: error: invalid type argument of unary '*' (have 'fio_register {aka unsigned char}')

    SR1W_ATOMIC_WRITE_LOW(srRegister, srMask);

                        ^
    

    C:\Program Files (x86)\Arduino\libraries\NewliquidCrystal\LiquidCrystal_SR1W.h:293:79: note: in definition of macro 'SR1W_ATOMIC_WRITE_LOW'

    #define SR1W_ATOMIC_WRITE_LOW(reg, mask) ATOMIC_BLOCK(ATOMIC_RESTORESTATE) { *reg &= ~mask; }

                                                                               ^
    

    C:\Program Files (x86)\Arduino\libraries\NewliquidCrystal\LiquidCrystal_SR1W.cpp:86:22: error: invalid type argument of unary '*' (have 'fio_register {aka unsigned char}')

    fio_bit reg_val = *srRegister;

                      ^
    

    C:\Program Files (x86)\Arduino\libraries\NewliquidCrystal\LiquidCrystal_SR1W.cpp:95:5: error: invalid type argument of unary '*' (have 'fio_register {aka unsigned char}')

    *srRegister = bit_high;
    
     ^
    

    C:\Program Files (x86)\Arduino\libraries\NewliquidCrystal\LiquidCrystal_SR1W.cpp:96:5: error: invalid type argument of unary '*' (have 'fio_register {aka unsigned char}')

    *srRegister = bit_low;
    
     ^
    

    C:\Program Files (x86)\Arduino\libraries\NewliquidCrystal\LiquidCrystal_SR1W.cpp:101:4: error: invalid type argument of unary '*' (have 'fio_register {aka unsigned char}')

    *srRegister = bit_high;

    ^
    

    C:\Program Files (x86)\Arduino\libraries\NewliquidCrystal\LiquidCrystal_SR1W.cpp: In member function 'uint8_t LiquidCrystal_SR1W::loadSR(uint8_t)':

    C:\Program Files (x86)\Arduino\libraries\NewliquidCrystal\LiquidCrystal_SR1W.cpp:139:24: error: invalid type argument of unary '*' (have 'fio_register {aka unsigned char}')

     fio_bit reg_val = *srRegister;
    
                        ^
    

    C:\Program Files (x86)\Arduino\libraries\NewliquidCrystal\LiquidCrystal_SR1W.cpp:144:6: error: invalid type argument of unary '*' (have 'fio_register {aka unsigned char}')

     *srRegister = bit_low;
    
      ^
    

    C:\Program Files (x86)\Arduino\libraries\NewliquidCrystal\LiquidCrystal_SR1W.cpp:145:6: error: invalid type argument of unary '*' (have 'fio_register {aka unsigned char}')

     *srRegister = bit_high;
    
      ^
    

    In file included from C:\Program Files (x86)\Arduino\libraries\NewliquidCrystal\LiquidCrystal_SR1W.cpp:35:0:

    C:\Program Files (x86)\Arduino\libraries\NewliquidCrystal\LiquidCrystal_SR1W.cpp:151:26: error: invalid type argument of unary '*' (have 'fio_register {aka unsigned char}')

    SR1W_ATOMIC_WRITE_LOW(srRegister, srMask);
    
                          ^
    

    C:\Program Files (x86)\Arduino\libraries\NewliquidCrystal\LiquidCrystal_SR1W.h:293:79: note: in definition of macro 'SR1W_ATOMIC_WRITE_LOW'

    #define SR1W_ATOMIC_WRITE_LOW(reg, mask) ATOMIC_BLOCK(ATOMIC_RESTORESTATE) { *reg &= ~mask; }

                                                                               ^
    

    C:\Program Files (x86)\Arduino\libraries\NewliquidCrystal\LiquidCrystal_SR1W.cpp:158:27: error: invalid type argument of unary '*' (have 'fio_register {aka unsigned char}')

    SR1W_ATOMIC_WRITE_HIGH(srRegister, srMask);
    
                           ^
    

    C:\Program Files (x86)\Arduino\libraries\NewliquidCrystal\LiquidCrystal_SR1W.h:294:80: note: in definition of macro 'SR1W_ATOMIC_WRITE_HIGH'

    #define SR1W_ATOMIC_WRITE_HIGH(reg, mask) ATOMIC_BLOCK(ATOMIC_RESTORESTATE) { *reg |= mask; }

                                                                                ^
    

    exit status 1 Fehler beim Kompilieren.

    Dieser Report hätte mehr Informationen mit "Ausführliche Ausgabe während der Kompilierung" aktiviert in Datei > Einstellungen.

  2. Francisco Malpartida reporter

    Thanks for using the library. Please use the head of the repo, there are a few changes and updates. There are no plans for adding support for the 101, however if you don't use the fastIO it should work on supported AVR boards.

    I've seen that the ByVac is still buggy and it can be removed as it is a specific implementation of the i2c that doesn't add much value.

    I see that there is also a need to update the some castings for the 101 to compile the fastIO.

  3. Henning Marxen

    Thank you! I had thought that 1.3.4 was the latest version. Now that I have updated to the head of the repo it works great. Only the display update is slower than on the Uno but I don't need a fast display for my current project. Is fastIO turned off automatically on non avr chips?

  4. Log in to comment