wanniu
Published © Apache-2.0

Draw Images on Your RePhone

This project shows how to upload images to the LCD display of your RePhone.

BeginnerFull instructions provided2 hours56
Draw Images on Your RePhone

Things used in this project

Hardware components

RePhone Kit Create
Seeed Studio RePhone Kit Create
×1

Software apps and online services

Eclipse IDE for RePhone
LinkIt Assist 2502 SDK

Story

Read more

Code

Draw image on RePhone.txt

C/C++
#include "vmsystem.h"
#include "vmlog.h"
#include "vmcmd.h"
#include "vmtimer.h"
#include "ldisplay.h"
#include "ldlcgpio.h"
#include "stdio.h"
#include "ResID.h"
#include "Draw Image on RePhone.h"

#define RLED_GPIO     17
#define GLED_GPIO     15
#define BLED_GPIO     12
VM_TIMER_ID_PRECISE sys_timer_id = 0;
unsigned char sys_blink = 0;
unsigned char pic_number = 1;
void sys_timer_callback(VM_TIMER_ID_PRECISE sys_timer_id, void* user_data)
{
    if(sys_blink)digitalWrite(GLED_GPIO, 1);
    else digitalWrite(GLED_GPIO, 0);
    sys_blink = !sys_blink;
    lcd_image_draw(pic_number++);
    if(pic_number > 2)pic_number = 1;
}
void sys_gpio_init(void)
{
    pinMode(RLED_GPIO,OUTPUT);
    pinMode(GLED_GPIO,OUTPUT);
    pinMode(BLED_GPIO,OUTPUT);
    digitalWrite(RLED_GPIO, 0);
    digitalWrite(GLED_GPIO, 1);
    digitalWrite(BLED_GPIO, 0);
}
void handle_sysevt(VMINT message, VMINT param)
{
    switch (message) {
        case VM_EVENT_CREATE:
            vm_res_init(0);
            lcd_backlight_level(50);
            sys_timer_id = vm_timer_create_non_precise(1000, sys_timer_callback, NULL);
            break;
        case VM_EVENT_PAINT:
            lcd_screen_set(0);
            digitalWrite(RLED_GPIO, 1);
            digitalWrite(BLED_GPIO, 1);
            break;
        case VM_EVENT_QUIT:
            vm_res_release();
            break;
    }
}
void vm_main(void)
{
    sys_gpio_init();
    lcd_init();
    lcd_init_font();
    vm_pmng_register_system_event_callback(handle_sysevt);
}

Credits

wanniu
88 projects • 13 followers
Contact

Comments

Please log in or sign up to comment.