lcd.c 1.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566
  1. #include "lcdc.h"
  2. #include "rtthread.h"
  3. #include "board.h"
  4. #include <rtgui/rtgui.h>
  5. #include <rtgui/driver.h>
  6. #include <rtgui/rtgui_server.h>
  7. #include <rtgui/rtgui_system.h>
  8. extern rt_err_t sep4020_lcd_init(void);
  9. extern unsigned long pVideoBuffer;
  10. struct rtgui_graphic_driver _rtgui_lcd_driver;
  11. void radio_rtgui_init(void)
  12. {
  13. rtgui_rect_t rect;
  14. // rtgui_color_t c=0xff;
  15. rtgui_system_server_init();
  16. /* register dock panel */
  17. rect.x1 = 0;
  18. rect.y1 = 0;
  19. rect.x2 = 320;
  20. rect.y2 = 25;
  21. rtgui_panel_register("info", &rect);
  22. rtgui_panel_set_nofocused("info");
  23. /* register main panel */
  24. rect.x1 = 0;
  25. rect.y1 = 25;
  26. rect.x2 = 320;
  27. rect.y2 = 240;
  28. rtgui_panel_register("main", &rect);
  29. rtgui_panel_set_default_focused("main");
  30. _rtgui_lcd_driver.name = "lcd";
  31. _rtgui_lcd_driver.byte_per_pixel = 2;
  32. _rtgui_lcd_driver.width = 320;
  33. _rtgui_lcd_driver.height = 240;
  34. _rtgui_lcd_driver.draw_hline = lcd_draw_hline;
  35. _rtgui_lcd_driver.draw_raw_hline = lcd_draw_raw_hline;
  36. _rtgui_lcd_driver.draw_vline = lcd_draw_vline;
  37. _rtgui_lcd_driver.get_pixel = lcd_get_pixel;
  38. _rtgui_lcd_driver.set_pixel = lcd_set_pixel;
  39. _rtgui_lcd_driver.screen_update = lcd_update;
  40. _rtgui_lcd_driver.get_framebuffer = lcd_get_framebuffer;
  41. sep4020_lcd_init();
  42. rt_memset((char*)pVideoBuffer,0xff,320*240*2);
  43. // rt_memcpy((char*)pVideoBuffer,pic,320*240*2); //TESTING IMAGE
  44. /* add lcd driver into graphic driver */
  45. rtgui_graphic_driver_add(&_rtgui_lcd_driver);
  46. info_init();
  47. }