luat_conf_bsp.h 7.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243
  1. #ifndef LUAT_CONF_BSP
  2. #define LUAT_CONF_BSP
  3. #define LUAT_BSP_VERSION "V1008"
  4. //------------------------------------------------------
  5. // 以下custom --> 到 <-- custom 之间的内容,是供用户配置的
  6. // 同时也是云编译可配置的部分. 提交代码时切勿删除和修改标识
  7. //custom -->
  8. //------------------------------------------------------
  9. // #define LUAT_USE_TLS
  10. #define LUAT_USE_SNTP
  11. // 禁用自动调用网络对时
  12. // #define LUAT_USE_SNTP_NOT_AUTO
  13. #define LUAT_USE_FTP
  14. #define LUAT_USE_W5500 1
  15. //----------------------------
  16. // 外设,按需启用, 最起码启用uart和wdt库
  17. #define LUAT_USE_UART 1
  18. #define LUAT_USE_GPIO 1
  19. #define LUAT_USE_I2C 1
  20. #define LUAT_USE_SPI 1
  21. #define LUAT_USE_ADC 1
  22. #define LUAT_USE_PWM 1
  23. #define LUAT_USE_WDT 1
  24. #define LUAT_USE_PM 1
  25. #define LUAT_USE_MCU 1
  26. #define LUAT_USE_RTC 1
  27. #define LUAT_USE_WLAN 1
  28. #define LUAT_USE_HTTPSRV 1
  29. // #define LUAT_USE_NIMBLE 1
  30. #define LUAT_USE_IOTAUTH 1
  31. #define LUAT_USE_ULWIP 1
  32. //----------------------------
  33. // 常用工具库, 按需启用, cjson和pack是强烈推荐启用的
  34. #define LUAT_USE_CRYPTO 1
  35. #define LUAT_USE_CJSON 1
  36. #define LUAT_USE_ZBUFF 1
  37. #define LUAT_USE_PACK 1
  38. // #define LUAT_USE_LIBGNSS 1
  39. #define LUAT_USE_FS 1
  40. #define LUAT_USE_SENSOR 1
  41. #define LUAT_USE_SFUD 1
  42. // #define LUAT_USE_STATEM 1
  43. // 性能测试
  44. // #define LUAT_USE_COREMARK 1
  45. // #define LUAT_USE_IR 1
  46. // FDB 提供kv数据库, 与nvm库类似
  47. // #define LUAT_USE_FDB 1
  48. // FSKV库提供fdb库的兼容API, 目标是替代fdb库
  49. #define LUAT_USE_FSKV 1
  50. #define LUAT_USE_OTA 1
  51. #define LUAT_USE_I2CTOOLS 1
  52. // #define LUAT_USE_LORA 1
  53. // #define LUAT_USE_LORA2 1
  54. // #define LUAT_USE_MAX30102 1
  55. // #define LUAT_USE_MLX90640 1
  56. // zlib压缩,更快更小的实现
  57. // #define LUAT_USE_YMODEM
  58. // #define LUAT_USE_MINIZ
  59. // #define LUAT_USE_FATFS
  60. // #define LUAT_USE_FATFS_CHINESE 3
  61. //----------------------------
  62. // 高级功能, 推荐使用repl, shell已废弃
  63. // #define LUAT_USE_SHELL 1
  64. // #define LUAT_USE_DBG
  65. #define LUAT_USE_REPL 1
  66. // 多虚拟机支持,实验性,一般不启用
  67. // #define LUAT_USE_VMX 1
  68. // #define LUAT_USE_PROTOBUF 1
  69. #define LUAT_USE_RSA 1
  70. // #define LUAT_USE_ICONV 1
  71. // #define LUAT_USE_BIT64 1
  72. // #define LUAT_USE_XXTEA 1
  73. // ------------------
  74. //---------------------
  75. // UI
  76. // LCD 是彩屏, 若使用LVGL就必须启用LCD
  77. #define LUAT_USE_LCD
  78. #define LUAT_USE_TJPGD
  79. // EINK 是墨水屏
  80. #define LUAT_USE_EINK
  81. //---------------------
  82. // U8G2
  83. // 单色屏, 支持i2c/spi
  84. // #define LUAT_USE_DISP
  85. #define LUAT_USE_U8G2
  86. /**************FONT*****************/
  87. #define LUAT_USE_FONTS
  88. /**********U8G2&LCD&EINK FONT*************/
  89. #define USE_U8G2_OPPOSANSM_ENGLISH 1
  90. // #define USE_U8G2_OPPOSANSM8_CHINESE
  91. #define USE_U8G2_OPPOSANSM10_CHINESE
  92. #define USE_U8G2_OPPOSANSM12_CHINESE
  93. // #define USE_U8G2_OPPOSANSM16_CHINESE
  94. // #define USE_U8G2_OPPOSANSM24_CHINESE
  95. // #define USE_U8G2_OPPOSANSM32_CHINESE
  96. // SARASA
  97. // #define USE_U8G2_SARASA_ENGLISH
  98. // #define USE_U8G2_SARASA_M8_CHINESE
  99. // #define USE_U8G2_SARASA_M10_CHINESE
  100. // #define USE_U8G2_SARASA_M12_CHINESE
  101. // #define USE_U8G2_SARASA_M14_CHINESE
  102. // #define USE_U8G2_SARASA_M16_CHINESE
  103. // #define USE_U8G2_SARASA_M18_CHINESE
  104. // #define USE_U8G2_SARASA_M20_CHINESE
  105. // #define USE_U8G2_SARASA_M22_CHINESE
  106. // #define USE_U8G2_SARASA_M24_CHINESE
  107. // #define USE_U8G2_SARASA_M26_CHINESE
  108. // #define USE_U8G2_SARASA_M28_CHINESE
  109. /**********LVGL FONT*************/
  110. // #define LV_FONT_OPPOSANS_M_8
  111. // #define LV_FONT_OPPOSANS_M_10
  112. // #define LV_FONT_OPPOSANS_M_12
  113. // #define LV_FONT_OPPOSANS_M_16
  114. //---------------------
  115. // LVGL
  116. // 主推的UI库, 功能强大但API繁琐
  117. #define LUAT_USE_LVGL
  118. #define LUAT_USE_LVGL_JPG 1 // 启用JPG解码支持
  119. // #define LUAT_USE_LVGL_PNG 1 // 启用PNG解码支持
  120. // #define LUAT_USE_LVGL_BMP 1 // 启用BMP解码支持
  121. #define LUAT_USE_LVGL_INDEV 1 // 输入设备
  122. #define LUAT_USE_LVGL_ARC //圆弧 无依赖
  123. #define LUAT_USE_LVGL_BAR //进度条 无依赖
  124. #define LUAT_USE_LVGL_BTN //按钮 依赖容器CONT
  125. #define LUAT_USE_LVGL_BTNMATRIX //按钮矩阵 无依赖
  126. #define LUAT_USE_LVGL_CALENDAR //日历 无依赖
  127. #define LUAT_USE_LVGL_CANVAS //画布 依赖图片IMG
  128. #define LUAT_USE_LVGL_CHECKBOX //复选框 依赖按钮BTN 标签LABEL
  129. #define LUAT_USE_LVGL_CHART //图表 无依赖
  130. #define LUAT_USE_LVGL_CONT //容器 无依赖
  131. #define LUAT_USE_LVGL_CPICKER //颜色选择器 无依赖
  132. #define LUAT_USE_LVGL_DROPDOWN //下拉列表 依赖页面PAGE 标签LABEL
  133. #define LUAT_USE_LVGL_GAUGE //仪表 依赖进度条BAR 仪表(弧形刻度)LINEMETER
  134. #define LUAT_USE_LVGL_IMG //图片 依赖标签LABEL
  135. #define LUAT_USE_LVGL_IMGBTN //图片按钮 依赖按钮BTN
  136. #define LUAT_USE_LVGL_KEYBOARD //键盘 依赖图片按钮IMGBTN
  137. #define LUAT_USE_LVGL_LABEL //标签 无依赖
  138. #define LUAT_USE_LVGL_LED //LED 无依赖
  139. #define LUAT_USE_LVGL_LINE //线 无依赖
  140. #define LUAT_USE_LVGL_LIST //列表 依赖页面PAGE 按钮BTN 标签LABEL
  141. #define LUAT_USE_LVGL_LINEMETER //仪表(弧形刻度) 无依赖
  142. #define LUAT_USE_LVGL_OBJMASK //对象蒙版 无依赖
  143. #define LUAT_USE_LVGL_MSGBOX //消息框 依赖图片按钮IMGBTN 标签LABEL
  144. #define LUAT_USE_LVGL_PAGE //页面 依赖容器CONT
  145. #define LUAT_USE_LVGL_SPINNER //旋转器 依赖圆弧ARC 动画ANIM
  146. #define LUAT_USE_LVGL_ROLLER //滚筒 无依赖
  147. #define LUAT_USE_LVGL_SLIDER //滑杆 依赖进度条BAR
  148. #define LUAT_USE_LVGL_SPINBOX //数字调整框 无依赖
  149. #define LUAT_USE_LVGL_SWITCH //开关 依赖滑杆SLIDER
  150. #define LUAT_USE_LVGL_TEXTAREA //文本框 依赖标签LABEL 页面PAGE
  151. #define LUAT_USE_LVGL_TABLE //表格 依赖标签LABEL
  152. #define LUAT_USE_LVGL_TABVIEW //页签 依赖页面PAGE 图片按钮IMGBTN
  153. #define LUAT_USE_LVGL_TILEVIEW //平铺视图 依赖页面PAGE
  154. #define LUAT_USE_LVGL_WIN //窗口 依赖容器CONT 按钮BTN 标签LABEL 图片IMG 页面PAGE
  155. // 启用64位虚拟机
  156. // #define LUAT_CONF_VM_64bit
  157. //-------------------------------------------------------------------------------
  158. //<-- custom
  159. //------------------------------------------------------------------------------
  160. #ifdef LUAT_USE_W5500
  161. #define LUAT_USE_DHCP 1
  162. #endif
  163. #define LUAT_USE_LWIP 1
  164. #ifndef LUAT_USE_NETWORK
  165. #define LUAT_USE_NETWORK
  166. #endif
  167. #ifndef LUAT_USE_DNS
  168. #define LUAT_USE_DNS
  169. #endif
  170. #define LUAT_RET int
  171. #define LUAT_RT_RET_TYPE void
  172. #define LUAT_RT_CB_PARAM void *param
  173. #define LUAT_USE_FS_VFS 1
  174. #define LUAT_USE_VFS_INLINE_LIB 1
  175. #define LUAT_COMPILER_NOWEAK
  176. #define LUAT_GPIO_PIN_MAX (CONFIG_SOC_GPIO_PIN_COUNT+1)
  177. // #define LUAT_CONF_SPI_HALF_DUPLEX_ONLY 1
  178. // 内存优化: 减少内存消耗, 会稍微减低性能
  179. #if !defined(CONFIG_IDF_TARGET_ESP32S3)
  180. #define LUAT_USE_MEMORY_OPTIMIZATION_CODE_MMAP 1
  181. #endif
  182. //PSRAM
  183. //如果是ESP32S3, 则启用PSRAM
  184. #if defined(CONFIG_IDF_TARGET_ESP32S3)
  185. #define LUAT_USE_PSRAM 1
  186. #endif
  187. //----------------------------------
  188. // 使用VFS(虚拟文件系统)和内置库文件, 必须启用
  189. #define LUAT_USE_FS_VFS 1
  190. #define LUAT_USE_VFS_INLINE_LIB 1
  191. #define LUA_USE_VFS_FILENAME_OFFSET 1
  192. //----------------------------------
  193. #define LV_DISP_DEF_REFR_PERIOD 30
  194. #define LUAT_LV_DEBUG 0
  195. #define LV_MEM_CUSTOM 1
  196. #define LV_HOR_RES_MAX (160)
  197. #define LV_VER_RES_MAX (80)
  198. #define LV_COLOR_DEPTH 16
  199. #define LV_COLOR_16_SWAP 1
  200. #ifdef LUAT_USE_SHELL
  201. #undef LUAT_USE_REPL
  202. #endif
  203. #endif