Arduino & I2CLCD & LCD_button 5
Nem baj, úgy nézem, hogy a wiznetshield a portD-ből csak 1 portot használ el, így bőven van elegendő szabad portom az eredeti elképzelésemhez.
2x20 LCD, 5db gomb, NET, és szobák hőmérséklete (1-wire)
1-es gomb háttérvilágítás, 2-es gomb weather.com időjárás (pillanatnyi), 2-es gomb ua, de előrejelzés, 3 gomb hálószobák, 4-es nappali és külső hőmérséklet, 5 nem tudom, talán reset.
2x20 LCD, 5db gomb, NET, és szobák hőmérséklete (1-wire)
1-es gomb háttérvilágítás, 2-es gomb weather.com időjárás (pillanatnyi), 2-es gomb ua, de előrejelzés, 3 gomb hálószobák, 4-es nappali és külső hőmérséklet, 5 nem tudom, talán reset.
Mivel az ebben levő vezérlőt kicsit másképpen kel címezni:
16-Bit I/O Expander with Serial Interface
MCP23017 – I2C interface
http://ww1.microchip.com/downloads/en/D ... 21952b.pdf
És a 2. port bemenet lenne
Tudsz hozzá Lib-et is? Vagy átkel írni az előzőhöz meglevőt?
16-Bit I/O Expander with Serial Interface
MCP23017 – I2C interface
http://ww1.microchip.com/downloads/en/D ... 21952b.pdf
És a 2. port bemenet lenne
Tudsz hozzá Lib-et is? Vagy átkel írni az előzőhöz meglevőt?
Az INT kezelést nem oldottam meg egyedül. Pollingozással van megoldva a gombfigyelés....
Az inicializálás és egyebek is megvannak a rutinokban:)
Ami nekem még hiányzik (majd ha sok időm lesz ) a 4x4 gombmátrix kihelyezését a MCP23017-re....
Mintaként az I2C_key.lib-ben van pár ötlet.... (PCF8574P-re)
Az inicializálás és egyebek is megvannak a rutinokban:)
Ami nekem még hiányzik (majd ha sok időm lesz ) a 4x4 gombmátrix kihelyezését a MCP23017-re....
Mintaként az I2C_key.lib-ben van pár ötlet.... (PCF8574P-re)
Tanulmányozom de még nagyon az elején vagyok, hogy átlássam az egészet!
Rögtön ERROR!
Ha az : $lib "#lcd_i2c-bl_mcp23017.lbx" –et befordítom!
Error : 105 Line 126 StoreBit error [0] , in File : G:\I2CLCD-02.BAS
Line 126 a program vége (END)
Mi ez a 105 StoreBit error? A Lib-ben!
Az eredetivel is ugyan az a hiba: $lib "#lcd_i2c-bl.lbx" ?
Bascom 1.11.9.5
Rögtön ERROR!
Ha az : $lib "#lcd_i2c-bl_mcp23017.lbx" –et befordítom!
Error : 105 Line 126 StoreBit error [0] , in File : G:\I2CLCD-02.BAS
Line 126 a program vége (END)
Mi ez a 105 StoreBit error? A Lib-ben!
Az eredetivel is ugyan az a hiba: $lib "#lcd_i2c-bl.lbx" ?
Bascom 1.11.9.5
A lib-ben a háttérvilágítást adod meg, hogy menjen vagy sem.
Ehhez egy konstanst kell definiálni, ami _lcd_bl vagy _i2c_lcd_bl névre hallgat.
const _lcd_bl=1 akkor van háttérvilágításod
A következő rész használja:
_send_3_times:
*BASIC: I2cstart
*BASIC: I2cwbyte _I2c_lcd_address_w
*BASIC: I2cwbyte &H0A
*BASIC: _temp1.6=_lcd_bl
*BASIC: I2cwbyte _temp1
*BASIC: I2cstop
Ehhez egy konstanst kell definiálni, ami _lcd_bl vagy _i2c_lcd_bl névre hallgat.
const _lcd_bl=1 akkor van háttérvilágításod
A következő rész használja:
_send_3_times:
*BASIC: I2cstart
*BASIC: I2cwbyte _I2c_lcd_address_w
*BASIC: I2cwbyte &H0A
*BASIC: _temp1.6=_lcd_bl
*BASIC: I2cwbyte _temp1
*BASIC: I2cstop
Benne van:
Viszont a : _Temp1 létrehozását nem találom sehol? Igaz nem is segített!
OK!
Ez kellett: Const _i2c_lcd_bl = 1 'Backlight yes/no
És ezt hól találom: "Mintaként az I2C_key.lib-ben van pár ötlet.... (PCF8574P-re)"
Kód: Egész kijelölése
$lib "#lcd_i2c-bl.lbx"
'$lib "#lcd_i2c-bl_mcp23017.lbx" 'My compiled i2c driver for the LCD
Const _i2c_lcd_address_w = &B01001110
Const _lcd_bl = 1 'Backlight yes/no
Viszont a : _Temp1 létrehozását nem találom sehol? Igaz nem is segített!
OK!
Ez kellett: Const _i2c_lcd_bl = 1 'Backlight yes/no
És ezt hól találom: "Mintaként az I2C_key.lib-ben van pár ötlet.... (PCF8574P-re)"
Az MCP_duo megnevezésű az amit én inkább használok. Ez a MCP23017 és a MCP23008-as chipet is egyben, egyszerre kezeli:).
Nálam a &h40 címen a MCP23008 és a &h4E címen a MCP23017 van. Így nem kell csereberélnem a LCDvezérlőt attól függően, h melyik vezérkőt használom. Sőt, egyszerre 2 LCD is lehet a rendszerben (azonos kijelzéssel )
Nálam a &h40 címen a MCP23008 és a &h4E címen a MCP23017 van. Így nem kell csereberélnem a LCDvezérlőt attól függően, h melyik vezérkőt használom. Sőt, egyszerre 2 LCD is lehet a rendszerben (azonos kijelzéssel )