小伤口 发表于 2023-1-29 16:09:24

不是吧,阿sir,手机也能投屏在这么小的屏幕上

本帖最后由 小伤口 于 2023-1-29 17:49 编辑

小电视-smallTv 1.0.0
简介

简单来说就是通过手机和smallTv连接统一热点,能够将手机屏幕的内容投影在
smallTv 上目前功能已经实现,不过开机动画,app美化等还没做好,电脑端还没有
整合上去

技术选型
Android SDK:
compileSdk   33
minSdk       21
targetSdk    26
C语言java 8
外观




实现效果


https://www.bilibili.com/video/BV1C3411X7vh/?share_source=copy_web&vd_source=ed6061f7f22dff4a142332fc281a884a
{:9_231:}


原理

上位机:


用MediaProjectionManage申请录屏权限,得到手机录屏权限实时获取录屏帧。然后再用了一个帧监听器,
将帧转换为 jpg 图片存在内存里面另开一个线程里面实现
了udp协议将jpg图片字节数据不断发送到指定端口

esp8266:

<blockquote><b>//导入的包</b>




先连接指定wifi,连接成功之后,创建一个存储jpg字节数据的缓存,接受到数据之后,
解码显示在tft屏幕上,通过不断显示图片就形成了视频

如何复刻

材料清单:

[*]         一个esp8266(建议买最小开发板)
[*]         0.96寸的TFT(驱动器最好是ST7735,硬件接口需要时spi接口,商品详情里面都有这些介绍)
[*]         7根杜邦线
[*]         总价格:23左右

环境配置


关于ardiuno IDE 配置esp8266环境网上有很多教程
这里我只介绍配置esp8266最简单最快的方法
下载下面的文件

**** Hidden Message *****


里面是Ardiuno IDE 和一件安装esp8266环境的插件
如果要用这个插件,ardiuno IDE一定要是我文件里面的版本 arduino-1.8.13,你也可以去官网下载,我测了很多个版本,
插件都无法配置成功,目前这个版本可以行的通,貌似是之后版本的文件改变了位置,导致插件安装的位置与之后的版本对
不上,所以失效然后将下面的几个库下好

#include <ESP8266WiFi.h>
#include <TJpg_Decoder.h>
#include "SPI.h"
#include <TFT_eSPI.h>            // Hardware-specific library
#include <String.h>
#include <WiFiUdp.h>

配置TFT_eSPI 库的User_Setup.h文件


点击ardiunoIDE左上角文件,再点击下方首选项按钮,将里面的路径复制,在文件中打开,进入TFT_eSPI
文件中找到User_Setup.h文件,打开它
找到这个部分



如果你的驱动器是st7735那么就取消st7735的注释,如果是其他的就取消掉对应的就行
然后就是你的TFT屏幕宽高是多少,就写多少,商品介绍里面会有这些参数的





如果下载好程序之后你的屏幕颜色不对,例如红色变成蓝色等
可以在这两行代码分别尝试一下




接线

按照下面的表接上就行,名称有可能有些不一样,但没关系,那个引脚名称与下表相似就接那个


TFTESP8266
DI(MOSI)D7
SC (SCLK、SCK)D5
CSD8
RSTD4 、RST
RS(DC、A0)D3
BLK & VCC3.3V
GNDGND


开源链接


https://gitee.com/xiaoshangkou/small-tv
所有代码我都放在了码云上,有兴趣可以去看看

运行教程


先填入手机的热点名称以及密码

<b>#define AP_SSID "小伤口"             //所用WiFi的名字
#define AP_PSW"123456789"       //所用WiFi的密码</b>
暂时不支持app更改smallTv连接的wifi,后续版本会推出
填写好wifi之后烧录程序到esp8266里面打开ardiunoIDE的串口,当出现下面的内容时就证明运行成功



进入https://gitee.com/xiaoshangkou/small-tv
找到AndroidApp进入下载文件到手机里面,安装app,将串口显示的ip地址,输入到app的输入框中
点击开始投影即可










糖甜弯了嘴 发表于 2023-1-29 17:47:59

本帖最后由 糖甜弯了嘴 于 2023-2-7 15:11 编辑

https://www.bilibili.com/video/BV17D4y1N7ob/?share_source=copy_web&vd_source=ed6061f7f22dff4a142332fc281a884a
录制画质看起来可能不怎么样,现实效果还是挺不错的,配套教程

小伤口 发表于 2023-2-15 21:46:47

2023/2/15/ 21:46
app界面大更新,不再是一个单调的页面,增加了bug反馈与建议(提交之后会自动发送到我的邮箱),增加了软件声明

学习编程中的Ben 发表于 2023-1-29 17:38:28

顶一个!

the_ben 发表于 2023-1-29 17:39:00

顶顶顶~

小伤口 发表于 2023-1-29 17:46:28

学习编程中的Ben 发表于 2023-1-29 17:38
顶一个!

谢谢支持{:9_236:}

学习编程中的Ben 发表于 2023-1-29 17:48:53

糖甜弯了嘴 发表于 2023-1-29 17:47


厉害,但看上去有一段延迟?

the_ben 发表于 2023-1-29 17:50:35

用小号再次顶!

小伤口 发表于 2023-1-29 17:52:33

学习编程中的Ben 发表于 2023-1-29 17:48
厉害,但看上去有一段延迟?

是的,这个网络要求挺高的,因为我要录制,所以热点一共有三个设备连接,导致网络较差,正常情况下延迟还是比较低的

小伤口 发表于 2023-1-29 17:54:31

the_ben 发表于 2023-1-29 17:50
用小号再次顶!

谢谢啦~{:5_101:}

廿四桥 发表于 2023-1-29 18:37:36

很厉害!{:7_146:}

高山 发表于 2023-1-29 18:59:38

不错加油

小伤口 发表于 2023-1-29 19:02:00

廿四桥 发表于 2023-1-29 18:37
很厉害!

谢谢支持{:5_109:}

小伤口 发表于 2023-1-29 19:02:30

高山 发表于 2023-1-29 18:59
不错加油

谢谢{:5_101:}

liuhongrun2022 发表于 2023-1-29 20:01:52

加油!

洋洋痒 发表于 2023-1-29 20:24:14

{:7_146:}

Twilight6 发表于 2023-1-29 21:22:35

厉害!

小伤口 发表于 2023-1-29 21:26:47

Twilight6 发表于 2023-1-29 21:22
厉害!

过奖{:5_101:},谢谢支持{:5_101:}{:5_101:}

柿子饼同学 发表于 2023-1-29 21:45:03

马上给你上精华

小伤口 发表于 2023-1-29 22:08:45

柿子饼同学 发表于 2023-1-29 21:45
马上给你上精华

这多不好意思{:5_101:}{:5_101:}谢谢啦

hornwong 发表于 2023-1-30 00:05:12

感谢分享!
页: [1] 2 3 4 5
查看完整版本: 不是吧,阿sir,手机也能投屏在这么小的屏幕上