用户工具

站点工具


icore4tlvgl_14

差别

这里会显示出您选择的修订版和当前版本之间的差别。

到此差别页面的链接

后一修订版
前一修订版
icore4tlvgl_14 [2020/12/08 17:40]
zgf 创建
icore4tlvgl_14 [2022/04/01 11:13] (当前版本)
sean
行 2: 行 2:
 |技术支持电话|**0379-69926675-801**||| |技术支持电话|**0379-69926675-801**|||
 |技术支持邮件|Gingko@vip.163.com||| |技术支持邮件|Gingko@vip.163.com|||
-|技术论坛|http://​www.eeschool.org||| 
 ^  版本 ​ ^  日期 ​ ^  作者 ​ ^  修改内容 ​ ^ ^  版本 ​ ^  日期 ​ ^  作者 ​ ^  修改内容 ​ ^
 |  V1.0  |  2020-12-4 ​ |  yang  |  初次建立 ​ |  |  V1.0  |  2020-12-4 ​ |  yang  |  初次建立 ​ | 
行 13: 行 12:
  
 开关由以下部分组成: 开关由以下部分组成:
-  * LV_SWITCH_PART_BG : 主要部分 +  ​* **LV_SWITCH_PART_BG** : 主要部分 
-  * LV_SWITCH_PART_INDIC :指示器(虚拟部分) +  ​* **LV_SWITCH_PART_INDIC** :指示器(虚拟部分) 
-  * LV_SWITCH_PART_KNOB :旋钮(虚拟部分)+  ​* **LV_SWITCH_PART_KNOB** :旋钮(虚拟部分)
  
 小部件和样式的工作原理与滑块相同。阅读其文档以获取详细说明。 小部件和样式的工作原理与滑块相同。阅读其文档以获取详细说明。
行 21: 行 20:
 ==== 二、改变状态 ==== ==== 二、改变状态 ====
  
-开关的状态可以通过点击它来改变,也可以使用函数 lv_switch_on(switch,​ LV_ANIM_ON/​OFF)、lv_switch_off(switch,​ LV_ANIM_ON/​OFF)、lv_switch_toggle(switch, ​ LV_ANOM_ON/​OFF) 来改变开关状态。 +开关的状态可以通过点击它来改变,也可以使用函数 ​**lv_switch_on(switch,​ LV_ANIM_ON/​OFF)、lv_switch_off(switch,​ LV_ANIM_ON/​OFF)、lv_switch_toggle(switch, ​ LV_ANOM_ON/​OFF)** 来改变开关状态。 
-若想改变开关状态切换时的动画速度,可以通过 lv_switch_set_anim_time(switch,​ anim_time) 进行调整。 ​+若想改变开关状态切换时的动画速度,可以通过 ​**lv_switch_set_anim_time(switch,​ anim_time)** 进行调整。 ​
  
 ==== 三、事件 ==== ==== 三、事件 ====
  
 除通用事件外,交换机还会发送以下特殊事件: ​ 除通用事件外,交换机还会发送以下特殊事件: ​
-  * LV_EVENT_VALUE_CHANGED 当开关更改状态时发送。 +  ​* **LV_EVENT_VALUE_CHANGED** 当开关更改状态时发送。 
-  * LV_KEY_UP,LV_KEY_RIGHT 打开滑块。 +  ​* **LV_KEY_UP,LV_KEY_RIGHT** 打开滑块。 
-  * LV_KEY_DOWN,LV_KEY_LEFT 关闭滑块。+  ​* **LV_KEY_DOWN,LV_KEY_LEFT** 关闭滑块。
  
 {{ :​icore4t:​icore4t_rtt_lvgl_14_1.gif?​direct |}} {{ :​icore4t:​icore4t_rtt_lvgl_14_1.gif?​direct |}}
行 37: 行 36:
 #define LED0_PIN ​   GET_PIN(A, 10)                              /* iCore4T LED引脚为PA10 */ #define LED0_PIN ​   GET_PIN(A, 10)                              /* iCore4T LED引脚为PA10 */
 lv_obj_t * label; ​                                                /* 先定义标签label */ lv_obj_t * label; ​                                                /* 先定义标签label */
 +lv_obj_t *sw1;                                                    /​*定义标签label */
 static void event_handler(lv_obj_t * obj, lv_event_t event) ​  /* 回调函数 */ static void event_handler(lv_obj_t * obj, lv_event_t event) ​  /* 回调函数 */
 { {
  if(event == LV_EVENT_VALUE_CHANGED) {                      /* 按键状态切换的话 */  if(event == LV_EVENT_VALUE_CHANGED) {                      /* 按键状态切换的话 */
- if(rt_pin_read(LED0_PIN) == PIN_LOW ​){                /* 切换LED状态 */+ if(lv_switch_get_state(sw1) == false){                /* 判断开关状态 */
  rt_pin_write(LED0_PIN,​ PIN_HIGH);  rt_pin_write(LED0_PIN,​ PIN_HIGH);
  lv_label_set_text(label,​ "LED off"​); ​               /* 更新标签内容 */  lv_label_set_text(label,​ "LED off"​); ​               /* 更新标签内容 */
行 46: 行 46:
  rt_pin_write(LED0_PIN,​ PIN_LOW);  rt_pin_write(LED0_PIN,​ PIN_LOW);
  lv_label_set_text(label,​ "LED on");  lv_label_set_text(label,​ "LED on");
- }}+                ​} 
 + }
 } }
 void lv_gui_run(void){ void lv_gui_run(void){
行 54: 行 55:
  rt_pin_write(LED0_PIN,​ PIN_HIGH); ​                          /* LED默认关闭 */  rt_pin_write(LED0_PIN,​ PIN_HIGH); ​                          /* LED默认关闭 */
   
- lv_obj_t *sw1 = lv_switch_create(lv_scr_act(),​ NULL); ​   /* 创建开关 */+ sw1 = lv_switch_create(lv_scr_act(),​ NULL); ​   /* 创建开关 */
  lv_obj_align(sw1,​ NULL, LV_ALIGN_CENTER,​ 0, 0);            /* 设置开关位置 */  lv_obj_align(sw1,​ NULL, LV_ALIGN_CENTER,​ 0, 0);            /* 设置开关位置 */
  lv_obj_set_event_cb(sw1,​ event_handler); ​                    /* 设置回调函数 */  lv_obj_set_event_cb(sw1,​ event_handler); ​                    /* 设置回调函数 */
  lv_obj_set_size(sw1,​ 30, 20);                                  /* 设置开关尺寸 */  lv_obj_set_size(sw1,​ 30, 20);                                  /* 设置开关尺寸 */
 +        lv_switch_off(sw1,​LV_ANIM_OFF); ​                               /​*设置开关状态*/​
   
  label = lv_label_create(lv_scr_act(),​ NULL); ​                /* 创建标签 */  label = lv_label_create(lv_scr_act(),​ NULL); ​                /* 创建标签 */
icore4tlvgl_14.1607420429.txt.gz · 最后更改: 2020/12/08 17:40 由 zgf