Skip to content
GitLab
Menu
Projects
Groups
Snippets
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Menu
Open sidebar
ruanhaishen
Nodemcu Firmware
Commits
8bd3d7d2
Commit
8bd3d7d2
authored
Jul 19, 2015
by
devsaurus
Browse files
introduce lua_api_name parameter when building the display table
keeps the API as before and gets rid of hw_spi vs sw_spi topics
parent
1bc156e4
Changes
5
Hide whitespace changes
Inline
Side-by-side
app/include/u8g_config.h
View file @
8bd3d7d2
...
...
@@ -23,14 +23,14 @@
// Stick to the assignments to *_I2C and *_SPI tables.
//
// I2C based displays go into here:
#define U8G_DISPLAY_TABLE_ENTRY(device, display)
#define U8G_DISPLAY_TABLE_ENTRY(device, display
, lua_api_name
)
#define U8G_DISPLAY_TABLE_I2C \
U8G_DISPLAY_TABLE_ENTRY(ssd1306_128x64_i2c, ssd1306_128x64)
U8G_DISPLAY_TABLE_ENTRY(ssd1306_128x64_i2c, ssd1306_128x64
, ssd1306_128x64_i2c
)
// SPI based displays go into here:
#define U8G_DISPLAY_TABLE_SPI \
U8G_DISPLAY_TABLE_ENTRY(ssd1306_128x64_hw_spi, ssd1306_128x64
)
\
// U8G_DISPLAY_TABLE_ENTRY(pcd8544_84x48_hw_spi, pcd8544_84x48)
U8G_DISPLAY_TABLE_ENTRY(ssd1306_128x64_hw_spi, ssd1306_128x64
, ssd1306_128x64_spi)
\
// U8G_DISPLAY_TABLE_ENTRY(pcd8544_84x48_hw_spi, pcd8544_84x48
, pcd8544_84x48_spi
)
#undef U8G_DISPLAY_TABLE_ENTRY
//
// ***************************************************************************
...
...
app/modules/u8g.c
View file @
8bd3d7d2
...
...
@@ -986,9 +986,9 @@ static int lu8g_close_display( lua_State *L )
//
// I2C based devices will use this function template to implement the Lua binding.
#undef U8G_DISPLAY_TABLE_ENTRY
#define U8G_DISPLAY_TABLE_ENTRY(device, display
)
\
#define U8G_DISPLAY_TABLE_ENTRY(device, display
, lua_api_name)
\
uint8_t u8g_dev_ ## display ## _fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg); \
static int lu8g_ ##
devic
e( lua_State *L )
\
static int lu8g_ ##
lua_api_nam
e( lua_State *L ) \
{ \
unsigned addr = luaL_checkinteger( L, 1 ); \
\
...
...
@@ -1015,9 +1015,9 @@ U8G_DISPLAY_TABLE_I2C
//
// SPI based devices will use this function template to implement the Lua binding.
#undef U8G_DISPLAY_TABLE_ENTRY
#define U8G_DISPLAY_TABLE_ENTRY(device, display
)
\
#define U8G_DISPLAY_TABLE_ENTRY(device, display
, lua_api_name)
\
uint8_t u8g_dev_ ## display ## _fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg); \
static int lu8g_ ##
devic
e( lua_State *L )
\
static int lu8g_ ##
lua_api_nam
e( lua_State *L ) \
{ \
unsigned cs = luaL_checkinteger( L, 1 ); \
if (cs == 0) \
...
...
@@ -1110,7 +1110,7 @@ static const LUA_REG_TYPE lu8g_display_map[] =
const
LUA_REG_TYPE
lu8g_map
[]
=
{
#undef U8G_DISPLAY_TABLE_ENTRY
#define U8G_DISPLAY_TABLE_ENTRY(device, display) { LSTRKEY( #
devic
e ), LFUNCVAL ( lu8g_ ##
devic
e ) },
#define U8G_DISPLAY_TABLE_ENTRY(device, display
, lua_api_name
) { LSTRKEY( #
lua_api_nam
e ), LFUNCVAL ( lu8g_ ##
lua_api_nam
e ) },
U8G_DISPLAY_TABLE_I2C
U8G_DISPLAY_TABLE_SPI
...
...
lua_examples/u8glib/u8g_bitmaps.lua
View file @
8bd3d7d2
-- ***************************************************************************
-- Bitmaps Test
--
-- This script executes the bitmap features of u8glib to test their Lua
-- integration.
--
-- Note: It is prepared for SSD1306-based displays. Select your connectivity
-- type by calling either init_i2c_display() or init_spi_display() at
-- the bottom of this file.
--
-- ***************************************************************************
-- setup I2c and connect display
function
init_i2c_display
()
...
...
@@ -20,7 +31,7 @@ function init_spi_display()
local
res
=
0
-- GPIO16
spi
.
setup
(
1
,
spi
.
MASTER
,
spi
.
CPOL_LOW
,
spi
.
CPHA_LOW
,
spi
.
DATABITS_8
,
0
)
disp
=
u8g
.
ssd1306_128x64_
hw_
spi
(
cs
,
dc
,
res
)
disp
=
u8g
.
ssd1306_128x64_spi
(
cs
,
dc
,
res
)
end
...
...
lua_examples/u8glib/u8g_graphics_test.lua
View file @
8bd3d7d2
-- ***************************************************************************
-- Graphics Test
--
-- This script executes several features of u8glib to test their Lua bindings.
--
-- Note: It is prepared for SSD1306-based displays. Select your connectivity
-- type by calling either init_i2c_display() or init_spi_display() at
-- the bottom of this file.
--
-- ***************************************************************************
-- setup I2c and connect display
function
init_i2c_display
()
...
...
@@ -20,7 +30,7 @@ function init_spi_display()
local
res
=
0
-- GPIO16
spi
.
setup
(
1
,
spi
.
MASTER
,
spi
.
CPOL_LOW
,
spi
.
CPHA_LOW
,
spi
.
DATABITS_8
,
0
)
disp
=
u8g
.
ssd1306_128x64_
hw_
spi
(
cs
,
dc
,
res
)
disp
=
u8g
.
ssd1306_128x64_spi
(
cs
,
dc
,
res
)
end
...
...
lua_examples/u8glib/u8g_rotation.lua
View file @
8bd3d7d2
-- ***************************************************************************
-- Rotation Test
--
-- This script executes the rotation features of u8glib to test their Lua
-- integration.
--
-- Note: It is prepared for SSD1306-based displays. Select your connectivity
-- type by calling either init_i2c_display() or init_spi_display() at
-- the bottom of this file.
--
-- ***************************************************************************
-- setup I2c and connect display
function
init_i2c_display
()
...
...
@@ -20,7 +31,7 @@ function init_spi_display()
local
res
=
0
-- GPIO16
spi
.
setup
(
1
,
spi
.
MASTER
,
spi
.
CPOL_LOW
,
spi
.
CPHA_LOW
,
spi
.
DATABITS_8
,
0
)
disp
=
u8g
.
ssd1306_128x64_
hw_
spi
(
cs
,
dc
,
res
)
disp
=
u8g
.
ssd1306_128x64_spi
(
cs
,
dc
,
res
)
end
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment