Skip to content
GitLab
Menu
Projects
Groups
Snippets
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Menu
Open sidebar
card10
firmware
Commits
61c4faab
Commit
61c4faab
authored
May 18, 2019
by
schneider
Browse files
refact(display): Factor out display code
parent
33bf745e
Changes
20
Hide whitespace changes
Inline
Side-by-side
ips/Makefile
View file @
61c4faab
...
...
@@ -81,6 +81,7 @@ SRCS += font24CN.c
SRCS
+=
image.c
SRCS
+=
image2.c
SRCS
+=
card10.c
SRCS
+=
display.c
# Where to find source files for this test
...
...
@@ -105,13 +106,16 @@ VPATH += ../lib/bosch/BME680_driver
IPATH
+=
../lib/bosch/BMA400-API
VPATH
+=
../lib/bosch/BMA400-API
IPATH
+=
LCD
IPATH
+=
GUI_DEV
IPATH
+=
Fonts
IPATH
+=
../lib/gfx
IPATH
+=
../lib/gfx/LCD
IPATH
+=
../lib/gfx/GUI_DEV
IPATH
+=
../lib/gfx/Fonts
VPATH
+=
../lib/gfx
VPATH
+=
../lib/gfx/LCD
VPATH
+=
../lib/gfx/GUI_DEV
VPATH
+=
../lib/gfx/Fonts
VPATH
+=
LCD
VPATH
+=
GUI_DEV
VPATH
+=
Fonts
VPATH
+=
image
# Enable assertion checking for development
...
...
ips/main.c
View file @
61c4faab
...
...
@@ -41,15 +41,8 @@
*/
/***** Includes *****/
#include "mxc_config.h"
#include "led.h"
#include "board.h"
#include "tmr_utils.h"
#include "i2c.h"
#include "rtc.h"
#include "spi.h"
#include "gpio.h"
#include "LCD/LCD_Driver.h"
#include "GUI_DEV/GUI_Paint.h"
#include "Fonts/fonts.h"
#include "image/image.h"
...
...
@@ -61,78 +54,6 @@
#include <stdint.h>
#include <string.h>
// Parameters for PWM output
#define PORT_PWM PORT_0 // port
#define PIN_PWM PIN_28 // pin
#define FREQ 200 // (Hz)
//#define DUTY_CYCLE 75 // (%)
#define DUTY_CYCLE 20 // (%)
#define PWM_TIMER MXC_TMR4 // must change PORT_PWM and PIN_PWM if changed
/***** Definitions *****/
#define I2C_DEVICE MXC_I2C0_BUS0
#define SPI SPI2
#define SPI_SPEED 1000000 // Bit Rate
/***** Globals *****/
static
const
gpio_cfg_t
motor_pin
=
{
PORT_0
,
PIN_8
,
GPIO_FUNC_OUT
,
GPIO_PAD_NONE
};
//const gpio_cfg_t DEV_RST_PIN = {PORT_0, PIN_28, GPIO_FUNC_OUT, GPIO_PAD_NONE};
const
gpio_cfg_t
DEV_DC_PIN
=
{
PORT_1
,
PIN_6
,
GPIO_FUNC_OUT
,
GPIO_PAD_NONE
};
/***** Functions *****/
void
PWM_Output
()
{
// Declare variables
gpio_cfg_t
gpio_pwm
;
// to configure GPIO
tmr_cfg_t
tmr
;
// to congigure timer
tmr_pwm_cfg_t
tmr_pwm
;
// for configure PWM
unsigned
int
period_ticks
=
PeripheralClock
/
FREQ
;
unsigned
int
duty_ticks
=
period_ticks
*
DUTY_CYCLE
/
100
;
// Congfigure GPIO port and pin for PWM
gpio_pwm
.
func
=
GPIO_FUNC_ALT4
;
gpio_pwm
.
port
=
PORT_PWM
;
gpio_pwm
.
mask
=
PIN_PWM
;
gpio_pwm
.
pad
=
GPIO_PAD_PULL_DOWN
;
if
(
GPIO_Config
(
&
gpio_pwm
)
!=
E_NO_ERROR
)
{
printf
(
"Failed GPIO_Config for pwm.
\n
"
);
}
/*
Steps for configuring a timer for PWM mode:
1. Disable the timer
2. Set the prescale value
3. Configure the timer for PWM mode
4. Set polarity, pwm parameters
5. Enable Timer
*/
TMR_Disable
(
PWM_TIMER
);
TMR_Init
(
PWM_TIMER
,
TMR_PRES_1
,
0
);
tmr
.
mode
=
TMR_MODE_PWM
;
tmr
.
cmp_cnt
=
period_ticks
;
tmr
.
pol
=
0
;
TMR_Config
(
PWM_TIMER
,
&
tmr
);
tmr_pwm
.
pol
=
1
;
tmr_pwm
.
per_cnt
=
period_ticks
;
tmr_pwm
.
duty_cnt
=
duty_ticks
;
if
(
TMR_PWMConfig
(
PWM_TIMER
,
&
tmr_pwm
)
!=
E_NO_ERROR
)
{
printf
(
"Failed TMR_PWMConfig.
\n
"
);
}
TMR_Enable
(
PWM_TIMER
);
printf
(
"PWM started.
\n
"
);
}
// *****************************************************************************
int
main
(
void
)
...
...
@@ -142,18 +63,6 @@ int main(void)
card10_init
();
card10_diag
();
//GPIO_Config(&DEV_RST_PIN);
GPIO_Config
(
&
DEV_DC_PIN
);
PWM_Output
();
LCD_SetBacklight
(
500
);
LCD_Init
();
LCD_Clear
(
BLACK
);
Paint_NewImage
(
LCD_WIDTH
,
LCD_HEIGHT
,
0
,
WHITE
);
Paint_Clear
(
BLACK
);
Paint_SetRotate
(
180
);
Paint_DrawString_EN
(
0
,
0
,
"123"
,
&
Font24
,
0x000f
,
0xfff0
);
Paint_DrawString_EN
(
0
,
23
,
"ABC"
,
&
Font24
,
BLUE
,
CYAN
);
Paint_DrawString_CN
(
20
,
42
,
"΢ѩµç×Ó"
,
&
Font24CN
,
WHITE
,
RED
);
...
...
lib/card10/card10.c
View file @
61c4faab
#include "pmic.h"
#include "bosch.h"
#include "display.h"
#include "bhy_uc_driver.h"
#include "Bosch_PCB_7183_di03_BMI160_BMM150-7183_di03.2.1.11696_170103.h"
...
...
@@ -21,7 +22,6 @@
#include <stdint.h>
#include <string.h>
#define SPI SPI0
#define SPI_SPEED 1000000 // Bit Rate
void
card10_init
(
void
)
...
...
@@ -52,14 +52,22 @@ void card10_init(void)
spi17y_master_cfg
.
ss1
=
Disable
;
spi17y_master_cfg
.
ss2
=
Disable
;
if
(
SPI_Init
(
SPI
,
0
,
SPI_SPEED
,
spi17y_master_cfg
)
!=
0
)
{
if
(
SPI_Init
(
SPI
0
,
0
,
SPI_SPEED
,
spi17y_master_cfg
)
!=
0
)
{
printf
(
"Error configuring SPI
\n
"
);
while
(
1
);
}
if
(
SPI_Init
(
SPI2
,
0
,
SPI_SPEED
,
spi17y_master_cfg
)
!=
0
)
{
printf
(
"Error configuring SPI
\n
"
);
while
(
1
);
}
if
(
bhy_driver_init
(
bhy1_fw
))
{
printf
(
"Failed to init bhy
\n
"
);
}
display_init
();
}
static
uint32_t
ecg_read_reg
(
uint8_t
reg
)
...
...
ips
/Fonts/Release_Notes.html
→
lib/gfx
/Fonts/Release_Notes.html
View file @
61c4faab
File moved
ips
/Fonts/font12.c
→
lib/gfx
/Fonts/font12.c
View file @
61c4faab
File moved
ips
/Fonts/font12CN.c
→
lib/gfx
/Fonts/font12CN.c
View file @
61c4faab
File moved
ips
/Fonts/font16.c
→
lib/gfx
/Fonts/font16.c
View file @
61c4faab
File moved
ips
/Fonts/font20.c
→
lib/gfx
/Fonts/font20.c
View file @
61c4faab
File moved
ips
/Fonts/font24.c
→
lib/gfx
/Fonts/font24.c
View file @
61c4faab
File moved
ips
/Fonts/font24CN.c
→
lib/gfx
/Fonts/font24CN.c
View file @
61c4faab
File moved
ips
/Fonts/font8.c
→
lib/gfx
/Fonts/font8.c
View file @
61c4faab
File moved
ips
/Fonts/fonts.h
→
lib/gfx
/Fonts/fonts.h
View file @
61c4faab
File moved
ips
/GUI_DEV/DEV_Config.c
→
lib/gfx
/GUI_DEV/DEV_Config.c
View file @
61c4faab
File moved
ips
/GUI_DEV/DEV_Config.h
→
lib/gfx
/GUI_DEV/DEV_Config.h
View file @
61c4faab
File moved
ips
/GUI_DEV/GUI_Paint.c
→
lib/gfx
/GUI_DEV/GUI_Paint.c
View file @
61c4faab
File moved
ips
/GUI_DEV/GUI_Paint.h
→
lib/gfx
/GUI_DEV/GUI_Paint.h
View file @
61c4faab
File moved
ips
/LCD/LCD_Driver.c
→
lib/gfx
/LCD/LCD_Driver.c
View file @
61c4faab
File moved
ips
/LCD/LCD_Driver.h
→
lib/gfx
/LCD/LCD_Driver.h
View file @
61c4faab
File moved
lib/gfx/display.c
0 → 100644
View file @
61c4faab
#include "LCD/LCD_Driver.h"
#include "GUI_DEV/GUI_Paint.h"
#include "gpio.h"
#include "tmr.h"
#include <stdint.h>
#include <stdio.h>
/***** Globals *****/
static
const
gpio_cfg_t
motor_pin
=
{
PORT_0
,
PIN_8
,
GPIO_FUNC_OUT
,
GPIO_PAD_NONE
};
//const gpio_cfg_t DEV_RST_PIN = {PORT_0, PIN_28, GPIO_FUNC_OUT, GPIO_PAD_NONE};
const
gpio_cfg_t
DEV_DC_PIN
=
{
PORT_1
,
PIN_6
,
GPIO_FUNC_OUT
,
GPIO_PAD_NONE
};
// Parameters for PWM output
#define PORT_PWM PORT_0 // port
#define PIN_PWM PIN_28 // pin
#define FREQ 200 // (Hz)
//#define DUTY_CYCLE 75 // (%)
#define DUTY_CYCLE 20 // (%)
#define PWM_TIMER MXC_TMR4 // must change PORT_PWM and PIN_PWM if changed
/***** Functions *****/
void
PWM_Output
(
void
)
{
// Declare variables
gpio_cfg_t
gpio_pwm
;
// to configure GPIO
tmr_cfg_t
tmr
;
// to congigure timer
tmr_pwm_cfg_t
tmr_pwm
;
// for configure PWM
unsigned
int
period_ticks
=
PeripheralClock
/
FREQ
;
unsigned
int
duty_ticks
=
period_ticks
*
DUTY_CYCLE
/
100
;
// Congfigure GPIO port and pin for PWM
gpio_pwm
.
func
=
GPIO_FUNC_ALT4
;
gpio_pwm
.
port
=
PORT_PWM
;
gpio_pwm
.
mask
=
PIN_PWM
;
gpio_pwm
.
pad
=
GPIO_PAD_PULL_DOWN
;
if
(
GPIO_Config
(
&
gpio_pwm
)
!=
E_NO_ERROR
)
{
printf
(
"Failed GPIO_Config for pwm.
\n
"
);
}
/*
Steps for configuring a timer for PWM mode:
1. Disable the timer
2. Set the prescale value
3. Configure the timer for PWM mode
4. Set polarity, pwm parameters
5. Enable Timer
*/
TMR_Disable
(
PWM_TIMER
);
TMR_Init
(
PWM_TIMER
,
TMR_PRES_1
,
0
);
tmr
.
mode
=
TMR_MODE_PWM
;
tmr
.
cmp_cnt
=
period_ticks
;
tmr
.
pol
=
0
;
TMR_Config
(
PWM_TIMER
,
&
tmr
);
tmr_pwm
.
pol
=
1
;
tmr_pwm
.
per_cnt
=
period_ticks
;
tmr_pwm
.
duty_cnt
=
duty_ticks
;
if
(
TMR_PWMConfig
(
PWM_TIMER
,
&
tmr_pwm
)
!=
E_NO_ERROR
)
{
printf
(
"Failed TMR_PWMConfig.
\n
"
);
}
TMR_Enable
(
PWM_TIMER
);
printf
(
"PWM started.
\n
"
);
}
void
display_init
(
void
)
{
//GPIO_Config(&DEV_RST_PIN);
GPIO_Config
(
&
DEV_DC_PIN
);
PWM_Output
();
LCD_SetBacklight
(
500
);
LCD_Init
();
LCD_Clear
(
BLACK
);
Paint_NewImage
(
LCD_WIDTH
,
LCD_HEIGHT
,
0
,
WHITE
);
Paint_Clear
(
BLACK
);
Paint_SetRotate
(
180
);
}
lib/gfx/display.h
0 → 100644
View file @
61c4faab
#ifndef DISPLAY_H
void
display_init
(
void
);
#endif
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