回到首页 返回首页
回到顶部 回到顶部
返回上一页 返回上一页

K10通过HTTP协议GET请求免费API 进阶1《网易云热评》点赞收藏回看 简单

头像 党最需要的栋梁 2025.02.06 12 0

K10通过HTTP协议GET请求免费API《时间段的温馨提示》作为每日正能量注入器- Makelog(造物记) (dfrobot.com.cn)
继上一篇K10的HTTP作业之后,又自己学习了一些,过年期间探索了几天,有了进阶思路,慢慢完善HTTP的教程,后续应该还会有系列的分享。细节这篇就不讲了,主要把思路表达清楚,大家都能实现,像我这样的小白,主要分享创意就好,另外发现,大模型真是不错的老师。

image.png

信息技术新课标2022中课程内容对以下做了指示image.pngHTTP不管在编解码,数据传输或者信息安全信息处理都是很重要的一部分,接下来让我们看看HTTP的简单应用。

材料清单

  • 行空板 K10 MicroPython编程教学/学习主控板(AI教学)- 蘑菇云科创教育 一款集成ESP32-S3、摄像头、2.8寸彩色LCD、支持图像检测、语音识别、语音合成、mind+图形化编程的信息科技教学开发板 X1 链接
  • Gravity: 自锁按钮模块 X 链接
  • Gravity: 霍尔磁性传感器 X 链接

步骤1 联网显示标题

image.png

步骤2 通过HTTP的get请求A键刷新网易云热评,并将文字解析出来。

通过HTTP的get请求A键刷新网易云热评,并将文字解析出来,优秀的同学会使用json格式,我还在学习中。语音合成读出来,伴随着提示音。

image.png

步骤3 点赞收藏回看

image.png

步骤4 全部

image.png

代码
/*!
 * MindPlus
 * esp32s3bit
 *
 */
#include "asr.h"
#include <DFString.h>
#include <SimpleList.h>
#include <DFRobot_Iot.h>
#include "unihiker_k10.h"
#include <DFRobot_HTTPClient.h>

// 动态变量
String             mind_s_YuanShiNaRong, mind_s_XianShi, mind_s_XiHuanZhuanWeiZiFuChuan;
volatile float     mind_n_KaiShi, mind_n_JieShu;
SimpleList<String> mind_l_XiHuan;
// 函数声明
void onButtonAPressed();
void onButtonBPressed();
// 创建对象
DFRobot_Iot        myIot;
UNIHIKER_K10       k10;
uint8_t            screen_dir=2;
DFRobot_HTTPClient http;
Music              music;
ASR                asr;


// 主程序开始
void setup() {
	k10.begin();
	pinMode(P0, INPUT);
	Serial.begin(9600);
	pinMode(P1, INPUT);
	k10.initScreen(screen_dir);
	k10.creatCanvas();
	k10.buttonA->setPressedCallback(onButtonAPressed);
	http.init();
	asr.setAsrSpeed(1);
	k10.buttonB->setPressedCallback(onButtonBPressed);
	myIot.wifiConnect("doro2020", "doro2020");
	while (!myIot.wifiStatus()) {}
	k10.canvas->canvasText("天狗文学", 75, 0, 0xFF0000, k10.canvas->eCNAndENFont24, 10, true);
}
void loop() {

}

// 事件回调函数
void onButtonAPressed() {
	http.GET("https://v.api.aa1.cn/api/api-wenan-wangyiyunreping/index.php?aa1=text", 10000);
	mind_s_YuanShiNaRong = http.getString();
	mind_n_KaiShi = (dfstring.indexOf(String("<p>"), String(mind_s_YuanShiNaRong)));
	mind_n_JieShu = (dfstring.lastIndexOf(String("</p>"), String(mind_s_YuanShiNaRong)));
	mind_s_XianShi = (dfstring.substring(mind_s_YuanShiNaRong,0,(mind_n_KaiShi + 3),0,(mind_n_JieShu - 1)));
	music.playMusic(POWER_UP);
	k10.canvas->canvasText(mind_s_XianShi, 0, 25, 0x0000FF, k10.canvas->eCNAndENFont24, 10, true);
	k10.canvas->updateCanvas();
	asr.speak(mind_s_XianShi);
}
void onButtonBPressed() {
	while (1) {
		if (((digitalRead(P0))==1)) {
			delay(800);
			mind_l_XiHuan.insert(1-1, mind_s_XianShi);
			Serial.write(mind_l_XiHuan[1-1].c_str());
			Serial.println();
			mind_s_XiHuanZhuanWeiZiFuChuan = mind_l_XiHuan[1-1];
		}
		if (((digitalRead(P1))==1)) {
			delay(500);
			k10.canvas->updateCanvas();
			k10.canvas->canvasText(mind_s_XiHuanZhuanWeiZiFuChuan, 0, 25, 0x0000FF, k10.canvas->eCNAndENFont24, 10, true);
			Serial.write(mind_s_XiHuanZhuanWeiZiFuChuan.c_str());
			Serial.println();
		}
	}
}

附件

评论

user-avatar