luat_conf_bsp.h 5.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163
  1. /*
  2. * Copyright (c) 2022 OpenLuat & AirM2M
  3. *
  4. * Permission is hereby granted, free of charge, to any person obtaining a copy of
  5. * this software and associated documentation files (the "Software"), to deal in
  6. * the Software without restriction, including without limitation the rights to
  7. * use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
  8. * the Software, and to permit persons to whom the Software is furnished to do so,
  9. * subject to the following conditions:
  10. *
  11. * The above copyright notice and this permission notice shall be included in all
  12. * copies or substantial portions of the Software.
  13. *
  14. * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
  15. * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
  16. * FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
  17. * COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
  18. * IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
  19. * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
  20. */
  21. #ifndef LUAT_CONF_BSP
  22. #define LUAT_CONF_BSP
  23. #define LUAT_BSP_VERSION "V0004"
  24. #define LUAT_USE_FS_VFS 1
  25. #define LUAT_USE_VFS_INLINE_LIB 1
  26. #define LUAT_USE_UART 1
  27. #define LUAT_USE_GPIO 1
  28. #define LUAT_USE_I2C 1
  29. #define LUAT_USE_SPI 1
  30. #define LUAT_USE_ADC 1
  31. #define LUAT_USE_PWM 1
  32. #define LUAT_USE_WDT 1
  33. // #define LUAT_USE_PM 1
  34. #define LUAT_USE_MCU 1
  35. // #define LUAT_USE_HWTIMER 1
  36. #define LUAT_USE_RTC 1
  37. // #define LUAT_USE_SDIO 1
  38. #define LUAT_USE_KEYBOARD 1
  39. #define LUAT_USE_DAC 1
  40. #define LUAT_USE_OTP 1
  41. // #define LUAT_USE_CRYPTO 1
  42. #define LUAT_USE_CJSON 1
  43. #define LUAT_USE_ZBUFF 1
  44. #define LUAT_USE_PACK 1
  45. //#define LUAT_USE_GNSS 1
  46. #define LUAT_USE_FS 1
  47. #define LUAT_USE_SENSOR 1
  48. #define LUAT_USE_SFUD 1
  49. #define LUAT_USE_SFD 1
  50. // #define LUAT_USE_STATEM 1
  51. // #define LUAT_USE_COREMARK 1
  52. // #define LUAT_USE_FDB 1
  53. // #define LUAT_USE_ZLIB
  54. #define LUAT_USE_CAMERA 1
  55. #define LUAT_USE_FATFS 1
  56. //----------------------------
  57. // 高通字体, 需配合芯片使用
  58. // #define LUAT_USE_GTFONT 1
  59. // #define LUAT_USE_GTFONT_UTF8
  60. //----------------------------
  61. // 高级功能, 其中shell是推荐启用, 除非你打算uart0也读数据
  62. #define LUAT_USE_SHELL
  63. #define LUAT_USE_DBG
  64. //---------------------
  65. // UI
  66. #define LUAT_USE_LCD
  67. #define LUAT_LCD_CMD_DELAY_US 7
  68. #define LUAT_USE_EINK
  69. //---------------------
  70. // U8G2
  71. #define LUAT_USE_DISP
  72. #define LUAT_USE_U8G2
  73. #define U8G2_USE_SH1106
  74. #define U8G2_USE_ST7567
  75. /**************FONT*****************/
  76. /**********U8G2&LCD FONT*************/
  77. // #define USE_U8G2_UNIFONT_SYMBOLS
  78. // #define USE_U8G2_OPPOSANSM12_CHINESE
  79. // #define USE_U8G2_OPPOSANSM16_CHINESE
  80. // #define USE_U8G2_OPPOSANSM24_CHINESE
  81. // #define USE_U8G2_OPPOSANSM32_CHINESE
  82. /**********LVGL FONT*************/
  83. // #define LV_FONT_OPPOSANS_M_8
  84. // #define LV_FONT_OPPOSANS_M_10
  85. #define LV_FONT_OPPOSANS_M_16
  86. //---------------------
  87. // LVGL
  88. #define LUAT_USE_LCD
  89. #define LUAT_USE_LVGL
  90. #define LV_DISP_DEF_REFR_PERIOD gLVFlashTime
  91. extern unsigned int gLVFlashTime;
  92. #define LUAT_LV_DEBUG 0
  93. #define LV_USE_LOG 1
  94. #define LV_MEM_CUSTOM 1
  95. #define LUAT_USE_LVGL_INDEV 1
  96. #define LUAT_USE_LVGL_ARC //圆弧 无依赖
  97. #define LUAT_USE_LVGL_BAR //进度条 无依赖
  98. #define LUAT_USE_LVGL_BTN //按钮 依赖容器CONT
  99. #define LUAT_USE_LVGL_BTNMATRIX //按钮矩阵 无依赖
  100. #define LUAT_USE_LVGL_CALENDAR //日历 无依赖
  101. #define LUAT_USE_LVGL_CANVAS //画布 依赖图片IMG
  102. #define LUAT_USE_LVGL_CHECKBOX //复选框 依赖按钮BTN 标签LABEL
  103. #define LUAT_USE_LVGL_CHART //图表 无依赖
  104. #define LUAT_USE_LVGL_CONT //容器 无依赖
  105. #define LUAT_USE_LVGL_CPICKER //颜色选择器 无依赖
  106. #define LUAT_USE_LVGL_DROPDOWN //下拉列表 依赖页面PAGE 标签LABEL
  107. #define LUAT_USE_LVGL_GAUGE //仪表 依赖进度条BAR 仪表(弧形刻度)LINEMETER
  108. #define LUAT_USE_LVGL_IMG //图片 依赖标签LABEL
  109. #define LUAT_USE_LVGL_IMGBTN //图片按钮 依赖按钮BTN
  110. #define LUAT_USE_LVGL_KEYBOARD //键盘 依赖图片按钮IMGBTN
  111. #define LUAT_USE_LVGL_LABEL //标签 无依赖
  112. #define LUAT_USE_LVGL_LED //LED 无依赖
  113. #define LUAT_USE_LVGL_LINE //线 无依赖
  114. #define LUAT_USE_LVGL_LIST //列表 依赖页面PAGE 按钮BTN 标签LABEL
  115. #define LUAT_USE_LVGL_LINEMETER //仪表(弧形刻度) 无依赖
  116. #define LUAT_USE_LVGL_OBJMASK //对象蒙版 无依赖
  117. #define LUAT_USE_LVGL_MSGBOX //消息框 依赖图片按钮IMGBTN 标签LABEL
  118. #define LUAT_USE_LVGL_PAGE //页面 依赖容器CONT
  119. #define LUAT_USE_LVGL_SPINNER //旋转器 依赖圆弧ARC 动画ANIM
  120. #define LUAT_USE_LVGL_ROLLER //滚筒 无依赖
  121. #define LUAT_USE_LVGL_SLIDER //滑杆 依赖进度条BAR
  122. #define LUAT_USE_LVGL_SPINBOX //数字调整框 无依赖
  123. #define LUAT_USE_LVGL_SWITCH //开关 依赖滑杆SLIDER
  124. #define LUAT_USE_LVGL_TEXTAREA //文本框 依赖标签LABEL 页面PAGE
  125. #define LUAT_USE_LVGL_TABLE //表格 依赖标签LABEL
  126. #define LUAT_USE_LVGL_TABVIEW //页签 依赖页面PAGE 图片按钮IMGBTN
  127. #define LUAT_USE_LVGL_TILEVIEW //平铺视图 依赖页面PAGE
  128. #define LUAT_USE_LVGL_WIN //窗口 依赖容器CONT 按钮BTN 标签LABEL 图片IMG 页面PAGE
  129. #define LV_HOR_RES_MAX (240)
  130. #define LV_VER_RES_MAX (240)
  131. #define LV_COLOR_DEPTH 16
  132. #define LV_COLOR_16_SWAP 1
  133. #define LV_TICK_CUSTOM 1
  134. #define LV_TICK_CUSTOM_INCLUDE "app_interface.h" /*Header for the system time function*/
  135. #define LV_TICK_CUSTOM_SYS_TIME_EXPR ((uint32_t)GetSysTickMS()) /*Expression evaluating to current system time in ms*/
  136. #define LV_NO_BLOCK_FLUSH
  137. #define time(X) luat_time(X)
  138. #endif
  139. #define LV_USE_PERF_MONITOR 1
  140. #ifndef __DEBUG__
  141. #undef LV_USE_PERF_MONITOR
  142. #endif
  143. //#define LV_ATTRIBUTE_FAST_MEM __attribute__((section (".RamFunc")))