|
LUA脚本的好处是用户可以根据自己注册的一批API(当前TOOL已经提供了几百个函数供大家使用),实现各种小程序,不再限制Flash里面已经下载的程序,就跟手机安装APP差不多,所以在H7-TOOL里面被广泛使用,支持在线调试运行,支持离线运行。
TOOL的LUA教程争取做到大家可以无痛调用各种功能函数,不需要学习成本。
功能特性:
1、从机采用硬件SPI实现,主机对其写操作可以支持50MHz(50MHz-60MHz),主机对其读操作可以支持12.5MHz(12.5-20MHz),支持从机的SPI速度是由主机决定的,使用时,不需要大家配置。
2、IO电平范围支持1.2V-5.0V。
3、使用从机模式要特别注意一点,这个是硬件SPI特性决定的,主从机发起通信前,一定要保证主从机GPIO已经正确配置了SPI引脚复用状态,否则从机不会等待主机发起操作,会立即返回。
4、支持波形展示。
LUA函数说明:
1、从机初始化函数
spi_bus("initslave", 参数1, 参数2, 参数3)
参数1:配置SPI时钟相位
0表示上升沿采集数据
1表示下降沿采集数据
参数2:配置SPI时钟极性
0表示空闲时SCK时钟是低电平
1表示空闲时SCK时钟是高电平
参数3:读写超时时间,单位ms,对从机的读函数和写函数起作用,表示在设置的时间内,SPI从机没有完成数据发送或者接收,将立即返回。
比如配置上升沿采集,SCK空闲时低电平,读写超时时间5000ms,可以单独LUA调用spi_bus("initslave", 0, 0, 5000)
也可以使用TOOL上位机操作:
2、从机接受数据函数
返回值 = spi_bus("recive", 参数)
返回值:读取数据
参数 :要读取的数据个数
比如要读取10个数据,就可以rd = spi_bus("recive", 10),可以单独LUA调用
也可以上位机操作
3、从机发送数据函数
spi_bus("send", 参数)
参数:发送的数据,可以发送字符串比如"12345678", 如果要发送实际数值,可以转移字符比如"\x00\x12\x34\x56"
比如要写10个数据,就可以spi_bus("send", "1234567890") ,可以单独LUA调用
也可以上位机操作
3、主机卸载函数
spi_bus("uninit")
直接调用函数spi_bus("uninit")即可,也可以上位机操作:
硬件接线连接:
SPI从机引脚定义,不需要片选
D5 : SCK 时钟
D2 : SDO MOSI
D3 : SDI MISO
接主机的话,接线方式如下:
使用举例:
举例1:配置上升沿采集数据,空闲时SCK是低电平,等待超时时间是5000ms,接受主机发送10个字节数据,注意要主机发起操作,从机不能主动发起操作
举例2:配置上升沿采集数据,空闲时SCK是低电平,等待超时时间是5000ms,给主机发送10个字节数据,注意要主机发起操作,从机不能主动发起操作
|
|