机器人编程趣味实践01-简要介绍

历经6年打磨,5轮测试,机器人编程趣味实践将逐步更新。涵盖windows、linux双系统,涉及硬件平台有手表、手机、电脑和机器人等。

  • 彩蛋---是虚拟现实或增强现实设备,有时间才会更新哦

从简单命令行交互开启:

融合手表、手机和电脑,有终端到图形化界面:

网络涵盖无线wifi、串口serial等示例:

网络端多平台多终端互联互通:

所有案例都可靠运行。案例涉及的代码或算法会详细讲解,配图之下都会给出相应知识点和脉络的具体链接,供有兴趣的朋友查阅。

部分内容会制作视频,嵌入到博客中。

上面图中涉及代码细节如:

  1. 动态甜甜圈https://blog.csdn.net/ZhangRelay/article/details/109863427
  2. 小乌龟画线https://blog.csdn.net/ZhangRelay/article/details/98754130

全部课程内容测试修正后,会发布镜像方便直接使用,关于镜像往事如下:

  1. 机器人实践https://blog.csdn.net/ZhangRelay/article/details/103868465
  2. 控制理论案例https://zhangrelay.blog.csdn.net/article/details/114101789

知识脉络点起源:

此文中手表的arduino代码如下(选用ESP32核心):

国产芯片,并且是青少年机器人等级考试官方指定教材所用核心

相关内容详细介绍:https://blog.csdn.net/ZhangRelay/article/details/115909178

主要软硬件平台为arduino+ESP32!

可见一段C++程序必然包含,头文件、注释、变量、初始化和主函数等,详细细节下一节具体介绍。

头文件.h

// => Hardware select
// #define LILYGO_WATCH_2019_WITH_TOUCH     // To use T-Watch2019 with touchscreen, please uncomment this line
// #define LILYGO_WATCH_2019_NO_TOUCH          // To use T-Watch2019 Not touchscreen , please uncomment this line
#define LILYGO_WATCH_2020_V1             //To use T-Watch2020, please uncomment this line
// #define LILYGO_WATCH_2020_V2             //To use T-Watch2020 V2, please uncomment this line
// #define LILYGO_WATCH_2020_V3             //To use T-Watch2020 V3, please uncomment this line


// NOT SUPPORT ...
 #define LILYGO_WATCH_BLOCK
// NOT SUPPORT ...

// => Function select
#define LILYGO_WATCH_LVGL                   //To use LVGL, you need to enable the macro LVGL

#include <LilyGoWatch.h>

主代码.c


#include "config.h"

TTGOClass *ttgo;

static void event_handler(lv_obj_t *obj, lv_event_t event)
{
    if (event == LV_EVENT_CLICKED) {
        Serial.printf("Hi Robot\n");
    } else if (event == LV_EVENT_VALUE_CHANGED) {
        Serial.printf("Have Fun\n");
    }
}

void setup()
{
    Serial.begin(19200);
    ttgo = TTGOClass::getWatch();
    ttgo->begin();
    ttgo->openBL();
    ttgo->lvgl_begin();

    lv_obj_t *label;

    lv_obj_t *btn1 = lv_btn_create(lv_scr_act(), NULL);
    lv_obj_set_event_cb(btn1, event_handler);
    lv_obj_align(btn1, NULL, LV_ALIGN_CENTER, 0, -40);

    label = lv_label_create(btn1, NULL);
    lv_label_set_text(label, "Robot");

    lv_obj_t *btn2 = lv_btn_create(lv_scr_act(), NULL);
    lv_obj_set_event_cb(btn2, event_handler);
    lv_obj_align(btn2, NULL, LV_ALIGN_CENTER, 0, 40);
    lv_btn_set_checkable(btn2, true);
    lv_btn_toggle(btn2);
    lv_btn_set_fit2(btn2, LV_FIT_NONE, LV_FIT_TIGHT);

    label = lv_label_create(btn2, NULL);
    lv_label_set_text(label, "Fun");

}

void loop()
{
    lv_task_handler();
    delay(1);
}

 -End-


 

 

 

  • 23
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 22
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 22
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

zhangrelay

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值