当前位置:首页 > 工业园区 >大彩串口屏怎么使用(大彩串口屏lua开发)

大彩串口屏怎么使用(大彩串口屏lua开发)

大菜君近期不断收到客户的反馈:

1、你们公司的明星产品医疗级M070可以加装U盘吗?我们需要大量的数据导出和升级。

大彩串口屏怎么使用(大彩串口屏lua开发)

2.我需要屏幕支持2个IO输出来连接警报器和警报灯。

3.是否支持PWM输出直接控制电机或屏幕呼吸灯?

4.你们的产品可以扩展其他串口输出吗?您需要使用自定义协议吗?

5、AD可以采集温湿度模型吗?

6. 支持外接矩阵键盘吗?

这次,研发工程师花了一个月的时间精心打造,以增加3毛钱的成本满足了大家的期望,产品成功批量上市。

订购型号:DC80480M070_3111_0T(电阻)、DC80480M070_3111_0C(电容),价格很美丽。

该产品除了为用户节省一个MCU外,更方便产品接线。所有功能都可以使用LUA脚本进行二次开发。丰富的例程和技术支持,帮助您快速升级产品。

产品图片

核心硬件图

特征

1、具备配置串口屏的所有常规功能,支持U盘功能;

2、新增扩展口接口支持3.3V电源输出、ADC、串口、PWM、IO输入、IO输出;

3.支持给3.3V外设供电;

4. ADC电压测量,最多可检测10个按键输入;

5、新产品实现双串口数据通信。扩展口只有1个串口,对原有主串口没有影响。新增串口,可以在LUA中自定义数据接收和发送;

6. 4个IO口,输入输出模式可根据需要配置,电平3.3V。

界面介绍

功能介绍,如表5-1所示。

表5-1 功能介绍

功能

IO端口/使能引脚

介绍

3.3V

PD20

可控制3.3V输出,电流500mA。

模数转换器输入

无需配置IO,有专用的LUA API

分辨率为6bit,采样率为250Hz,支持电压为0-1.77V。

IO输入输出

PE5、PE9、PE10、PD21

可输入/输出,电平3.3V。

脉宽调制输出

无需配置IO,有专用的LUA API

频率范围0Hz-4MHz,占空比范围0%-100%。

串行端口

串口3

LUA自定义串口发送和接收,电平为3.3V。

接口介绍如表5-2所示。

序列号

定义

描述

参考图片

1

模数转换器

模数转换接口

2

接收0

串口输入,连接用户TXD端

3

TX0

串口输出,连接用户RXD端子

4

脉宽调制

脉宽调制输出

5

IO0

IO0输入输出端子

6

IO1

IO1输入输出端子

7

IO2

IO2输入输出端子

8

IO3

IO3输入输出端子

9

3V3输出

功率输出

10

接地

电源地

该产品除了为用户节省一个MCU外,更方便产品接线。所有功能都可以使用LUA脚本进行二次开发。丰富的例程和技术支持,帮助您快速升级产品。

我们来看看如何使用LUA脚本进行二次应用开发。

转变

控制PD20使能3.3V输出。可为外围设备供电。

核心API函数:

1.gpio_set_out(引脚)

PIN引脚设置为输出模式

针:针

2.gpio_set_value(引脚,值)

设置输出PIN脚为(高电平1/低电平0)

引脚: 引脚值: 输出电平

代码如程序清单5-1所示。

程序列表5-1 电源开关程序

--初始化gpio_set_out(POWER_EN_PD20)--关闭电源gpio_set_value(POWER_EN_PD20,0)--打开电源gpio_set_value(POWER_EN_PD20,1)

模数转换器输入

可检测电压值,电压方向支持0-1.77V。使用status,data=get_key_adc_data() 获取电压值。该例程通过ADC 检测按键输入。总共有10把钥匙。每个按键按下的电压差约为0.17V。

核心API函数:

1. get_key_adc_data()

返回两个参数:

Status:状态,1表示有按钮按下,17表示没有按钮按下data:表示按钮按下时的具体值,数组范围是0-59。未按下按钮时,该值将大于59。

代码如清单5-2 所示。

程序列表5-2ADC 输入检测

本地状态,data=get_key_adc_data()

IO输入输出

4个GPIO可检测输入输出高低电平。

核心API函数:

1.gpio_set_in(引脚)

PIN引脚设置为输入模式

pin: 引脚2.gpio_set_out(引脚)

PIN引脚设置为输出模式

pin: 引脚3.gpio_set_value (引脚,值)

设置输出PIN脚为(高电平1/低电平0)

pin:引脚值:输出电平4.gpio_get_value(引脚)

获取输入PIN引脚电平(高电平1/低电平0)

引脚: 引脚

代码如清单5-3 所示。

程序表5-3IO 控制

--初始化IO为输出模式gpio_set_out(IO0_PE5)--设置IO输出低电平gpio_set_value(IO0_PE5,0)--设置IO输出高电平gpio_set_value(IO0_PE5,1)--初始化IO为输入模式gpio_set_in(IO0_PE5)--获取IO电平本地io0_num=gpio_get_value(IO0_PE5)

脉宽调制输出

PWM输出可设置,频率范围0Hz-4MHz,占空比范围0%-100%。

核心API函数:

1. set_pwm(频率,占空比)

返回两个参数:

freq:频率,范围0Hz-4MHz。 duty:占空比,范围0%-100%。

代码如清单5-4 所示。

程序表5-4PWM 控制

本地pwm_freq=100 本地pwm_duty=50set_pwm( pwm_freq, pwm_duty )

串行端口

使用UART3的TX和RX。在LUA脚本中实现串口数据的发送、接收、解析。

本例程中,将扩展口的TX0口和RX0口短接,形成短路,从而进行自发自收测试。

核心API函数:

1.uart_set_baudre3(波特率)

设置串口3波特率:串口3是屏与串口助手之间的通信串口。

baudrate: 波特率,支持2400bps~961200bps2.on_uart_recv_data3(packet)

串口3接收数据的回调函数,使用自定义串口指令触发该函数的执行:

3.uart_send_data3(packet) packet:收到的字节数组

通过串口3发送数据

packet:发送的字节数组,下标从0开始。代码如程序清单5-5所示。

程序列表5-5 串口测试

--初始化串口3,设置波特率为115200uart_set_baudrate3( 115200 ) --发送数据本地us_data={}us_data[0]=0x5A --数据us_data[1]=0xA5 --数据uart_send_data3( us_data ) --发送array -- 串口接收回调函数on_uart_recv_data3( packet ) local count=#( packet ) --计算长度local string1='' --临时变量存储数据for i=0, count do --for 循环存储数据string1 string1=string1 . string.format( '%X', packet[i] ) end --接收后,调用string1 print( string1 )end

最新资讯

推荐资讯