0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

安卓与迪文屏的无线交互应用

迪文智能屏 2023-12-13 08:13 次阅读

——来自迪文开发者论坛

本期为大家推送迪文开发者论坛获奖开源案例——安卓与迪文屏的无线交互应用工程师采用T5L智能屏,通过串口2与蓝牙模块通讯,实现与安卓手机APP进行数据交互。该方案支持迪文屏与安卓手机无延时数据收发、数据回显、多设备通信、导出和导入文件,还支持ASCII码、Char、GBK、UNICODE等多种编码格式,更有意思的是实现了16*16LED点阵广告屏的功能,让我们一睹为快!


方案框架 方案由T5L智能屏、HC-05或HC-06蓝牙模块、安卓手机构成。T5L智能屏通过串口2与蓝牙模块通讯,实现屏幕与安卓手机的数据交互。

698f0982-994c-11ee-9788-92fbcf53809c.png

UI素材展示

69a3d0c4-994c-11ee-9788-92fbcf53809c.jpg

C51工程设计

(1)串口2与蓝牙通讯的代码参考如下:

#if(1)

#define MODBUS_RECV_TIMEOUT 50

static bit is_modbus_recv_complete = 0;

static u8 modbus_recv_buff[1024];

static u16 modbus_recv_len = 0;

static u8 modbus_recv_timeout = 0;

void modbus_recv_byte(u8 byte)

{

if(is_modbus_recv_complete)

return;

if(modbus_recv_len

modbus_recv_buff[modbus_recv_len++] = byte;

modbus_recv_timeout = MODBUS_RECV_TIMEOUT;

}

void modbus_check_recv_timeout()

{

if(modbus_recv_timeout)

{

modbus_recv_timeout--;

if(modbus_recv_timeout==0)

{

is_modbus_recv_complete = 1;

}

}

}

void uart2_isr() interrupt 4

{

if(RI0)

{

RI0 = 0;

modbus_recv_byte(SBUF0);

}

}

#endif

void uart2_init(u32 baud)

{

MUX_SEL |= 0x40;

P0MDOUT &= 0xCF;

P0MDOUT |= 0x10;

ADCON = 0x80;

SCON0 = 0x50;

PCON &= 0x7F;

baud = 1024-(u16)(3225600.0f/baud);

SREL0H = (baud>>8)&0xff;

SREL0L = baud&0xff;

#if(1)

ES0 = 1;

EA = 1;

#else

ES0 = 0;

#endif

}

void uart2_send_byte(u8 byte)

{

ES0 = 0;

SBUF0 = byte;

while(!TI0);

TI0 = 0;

#if(1)

ES0 = 1;

#endif

}

void uart2_send_bytes(u8 *bytes,u16 len)

{

u16 i;

ES0 = 0;

for(i=0;i

{

SBUF0 = bytes;

while(!TI0);

TI0 = 0;

}

#if(1)

ES0 = 1;

#endif

}

char putchar(char c)

{

uart2_send_byte(c);

return c;

}

(2)给安卓APP发送数据的部分代码如下:

u8 buff[200];

void get_str(u8 *val,u8 len)

{

u8 i; for(i=0;i

{

if(val==0xff)

{

val = 0x00;

val[i+1] = 0x00;

return;

}

}

}

void start_win_btn_click_handler(u16 btn_val)

{

if(btn_val==0x01)

{

sys_read_vp(0x2100, buff, 50);

get_str(buff,100);

uart2_send_bytes(buff, strlen(buff));

}

}

(3)接收安卓APP数据的部分代码如下:void uart2_handler()

{

if(is_modbus_recv_complete)

{

if(modbus_recv_len==33)

{

disp_16x16_char(modbus_recv_buff+1);

}else

{

modbus_recv_buff[modbus_recv_len++] = 0;

modbus_recv_buff[modbus_recv_len++] = 0;

sys_write_vp(0x2000, modbus_recv_buff, modbus_recv_len/2+2);

}

modbus_recv_len = 0;

is_modbus_recv_complete = 0;

}

}(4)16*16点阵屏显示的部分代码如下:void disp_16x16_char(u8 *buff)

{

u8 i,j;

u16 val;

u16 pos = 0; for(i=0;i<32;i++)

{

j = 8;

while(j--)

{

val = (buff>>j)&0x01;

sys_write_vp(0x3000+pos, (u8*)&val, 1);

pos++;

}

}

}

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 无线
    +关注

    关注

    31

    文章

    5423

    浏览量

    173032
  • 安卓
    +关注

    关注

    5

    文章

    2119

    浏览量

    56983
  • 迪文屏
    +关注

    关注

    3

    文章

    75

    浏览量

    5363
  • 智能屏幕
    +关注

    关注

    0

    文章

    65

    浏览量

    3306
收藏 人收藏

    评论

    相关推荐

    跪求STM32和串口通信

    各位高手,跪求STM32和串口通信,并且能波形显示的程序。非常感谢大家!
    发表于 09-25 09:24

    DWIN串口的使用经验

    的串口,性价比高,质量稳定可靠,的种类多,消费类,工业类,医疗、军工、特殊行业等苛刻应用类,各个尺寸均有设计。所以基本能用得上,我分享一下各种
    发表于 07-02 07:03

    DWIN串口的使用经验

    的串口,性价比高,质量稳定可靠,的种类多,消费类,工业类,医疗、军工、特殊行业等苛刻应用类,各个尺寸均有设计。所以基本能用得上,我分享一下各种
    发表于 07-02 07:08

    「必看干货」如何利用STM32和串口以及WIFI模组进行数据交互

    简介:本文将通过介绍如何实现和App实时显示温湿度和光照度采集数据,以及通过控制和App去控制GPIO口电平翻转来带大家了解STM32和串口
    发表于 09-27 14:54

    DWIN串口有哪些功能呢

    DWIN串口有哪些功能呢?怎样去使用DWIN串口
    发表于 09-28 08:58

    了解STM32和串口以及Wi-Fi模组进行数据交互

    ​简介:本文将通过介绍如何实现和App实时显示温湿度和光照度采集数据,以及通过控制和App去控制GPIO口电平翻转来带大家了解STM32和串口
    发表于 02-14 07:38

    COF结构智能试用体验】和esp32的图书检索及录入系统

    前言本文介绍基于和esp32的图书检索及录入系统。 一、硬件组成触摸
    发表于 04-06 19:03

    COF结构智能试用体验】优缺点分析和适用场景

    写在前面本人在公司主要做智能网关以及linux驱动开发,由于项目实际需要使用能够放在86开关面板盒子中作为智能家庭网关交互中的4寸方,当看到的COF结构智能
    发表于 04-10 00:21

    发一个自己写的与STM32交互的操作说明文档

    前段时间参加的活动,申请到一块的cof,看了介绍之后觉得产品价格和性能都太牛了,但找
    发表于 04-25 16:54

    开发便捷的工业串口

    硬件设计 二次开发过程中,工业串口对用户系统硬件 要求非常简单: 1.给正确的供电;
    发表于 12-02 14:36 419次下载
    开发便捷的<b class='flag-5'>迪</b><b class='flag-5'>文</b>工业串口<b class='flag-5'>屏</b>

    如何利用STM32和串口以及WIFI模组进行数据交互

    ​简介:本文将通过介绍如何实现和App实时显示温湿度和光照度采集数据,以及通过控制和App去控制GPIO口电平翻转来带大家了解STM32和串口
    发表于 12-09 15:51 19次下载
    如何利用STM32和<b class='flag-5'>迪</b><b class='flag-5'>文</b>串口<b class='flag-5'>屏</b>以及WIFI模组进行数据<b class='flag-5'>交互</b>

    「必看干货」如何利用STM32和串口以及WIFI模组进行数据交互

    简介:本文将通过介绍如何实现和App实时显示温湿度和光照度采集数据,以及通过控制和App去控制GPIO口电平翻转来带大家了解STM32和串口
    发表于 12-24 19:05 7次下载
    「必看干货」如何利用STM32和<b class='flag-5'>迪</b><b class='flag-5'>文</b>串口<b class='flag-5'>屏</b>以及WIFI模组进行数据<b class='flag-5'>交互</b>?

    COF开发手册

    文科技的COF开发流程进行了整理,便于协助用户快速开发COF
    发表于 06-08 14:44 0次下载

    【开源获奖案例】手机双向联动控制音乐播放

    ——来自开发者论坛本期为大家推送开发者论坛获奖开源案例——
    的头像 发表于 04-29 08:13 503次阅读
    【开源获奖案例】<b class='flag-5'>迪</b><b class='flag-5'>文</b><b class='flag-5'>屏</b>与<b class='flag-5'>安</b><b class='flag-5'>卓</b>手机双向联动控制音乐播放

    串口如何与电脑连接

    串口是一种广泛应用于工业自动化领域的显示设备,它可以通过串口与电脑进行通信,实现数据的传输和控制。 一、串口
    的头像 发表于 08-01 15:10 850次阅读