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

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

3天内不再提示

SPI与4G模组的集成:技术要领篇

青山老竹农 来源:jf_82863998 作者:jf_82863998 2024-11-20 23:25 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

今天咋们要讲的是SPI与4G模组的技术要领,以低功耗模组Air724UG为例,展示给大家学习。

一、简介

SPI 是串行外设接口(Serial Peripheral Interface)的缩写。

SPI,是一种高速的,全双工,同步的通信总线,并且在芯片的管脚上只占用四根线,SDI(数据输入),SDO(数据输出),SCLK(时钟),CS(片选),就可以完成一个主设备和一个或多个从设备之间的通信,事实上 3 根也可以(单向传输时)。在嵌入式系统中,主要应用于 EEPROM、FLASH、实时时钟AD转换器数字信号处理器和数字信号解码器之间的通信,在全双工模式下,传输速率可达上Mbps的水平。

Air724模块对外提供的硬件SPI接口数量有两路,即 SPI1、SPI2,其他SPI通道以复用封装作为 LCD 或 MMC 功能管脚使用。

wKgZoWc9_VqASO2JAAIShJIyBko153.pngwKgZoWc9_W6AWr6yAAHeF07GrgE879.png

二、演示功能概述

本教程教你如何使用开发板的SPI总线读写 FLASH。

三、准备硬件环境

3.1 开发板准备

使用 EVB_Air724 开发板,如下图所示:

wKgZoWc9_YKASm6lABJHiF8IO9Q676.png

此开发板的详细使用说明参考:
https://docs.openluat.com/air724ug/product/

Air724UG 产品手册中的《EVB_Air724UG_AXX 开发板使用说明》,写这篇文章时最新版本的使用说明为:《EVB_Air724UG_A14 开发板使用说明》;开发板使用过程中遇到任何问题,可以直接参考这份使用说明文档。

api文档:
https://doc.openluat.com/wiki/21?wiki_page_id=2068

3.2 数据通信线

USB 数据线一根(micro USB)。

3.3 PC 电脑

WIN7 以及以上版本的 WINDOWS 系统。

3.4 SPI FLASH 模块

25Q64JVSIQ 注意电平是 3.3V

wKgaoWc9_Y-APDVCAApx_4hOW08908.png

3.5 电平转换模块

双向电平转换模块(3.3V、1.8V)

wKgZoWc9_ZqARWCUAAnu52S_ycQ762.png

3.6 组装硬件环境

USB数据线插入 USB 口,另一端与电脑相连,拨码开关全部拨到 ON,串口切换开关选择 UART1,USB 供电的 4V 对应开关拨至 ON 档,SIM 卡放到 SIM 卡槽中锁紧,如下图所示。

wKgaoWc9_aeAEgZpAAoXC0j6xK0146.png

由于 SPI FLASH 模块只支持 3.3v 电平,开发板 SPI 接口只支持 1.8V 电平,所以 SPI FLASH 模块和开发板之间需要用电平转换模块将相互的 IO 电平转换,具体连接图如下图所示。

开发板与电平转换模块连接:

wKgaoWc9_bKADdVwAAGJc4NuvXU669.png

SPI FLASH 与电平转换模块连接:

wKgZoWc9_b6AA2-1AAFxjFTHDIc729.png

四、准备软件环境

4.1 下载调试工具

使用说明参考:
Luatools下载和详细使用
https://docs.openluat.com/Luatools/

4.2 源码及固件

4.2.1 底层 core 下载

下载底层固件,并解压

链接:
https://docs.openluat.com/air724ug/luatos/firmware/

如下图所示,红框的是我们要使用到的

wKgaoWc9_cyANBXBAAUS9xeGtxk179.png

4.2.2 本教程使用的 demo 见附件:

https://gitee.com/openLuat/LuatOS-Air724UG/tree/master/script_LuaTask/demo/spiFlash

4.3 下载固件和脚本到开发板中

打开 Luatools,开发板上电开机,如开机成功 Luatools 会打印如下信息。

wKgZoWc9_daAIs-bAAPXLTVX_cQ979.png

点击项目管理测试选项。

wKgZoWc9_eqAchcKAAELGYVzFZk372.png

进入管理界面,如下图所示。

wKgaoWc9_fiAbkPUAAN7tOldb00877.png

点击选择文件,选择底层固件,我的文件放在 D:luatOSAir724 路径中

wKgZoWc9_gOASa2eAACG7i510uw303.png

点击增加脚本或资源文件,选择之前下载的程序源码,如下图所示。

wKgaoWc9_gyAVjwvAAI7-a2bpKk037.png

点击下载底层和脚本,下载完成如下图所示。

wKgaoWc9_hSAVucbAAFK8uuRFtI364.png

五、代码示例介绍

5.1 API 说明

5.1.1 spi 开启接口

spi.setup(id,chpa,cpol,dataBits,clock,duplex)

(点开放大)

wKgZoWc9_h2AcK54AACtP1SkkkY325.png

返回值

wKgZoWc9_iaAY-YjAAChhAAfX88305.png

5.1.2 spi 写数据

spi.send(id,data[,cscontrol])

(点开放大)

wKgaoWc9_i-ACtiWAACCEeg1MuE831.png

返回值

wKgZoWc9_jiAcUWhAAB0duka2X0860.png

5.1.3 读数据

spi.recv(id,length[,cscontrol])

(点开放大)

wKgZoWc9_kGAK1gDAACKe_eR8IM197.png

返回值

wKgaoWc9_kqAFQsmAAB3h0k5pKY248.png

5.1.4 读写数据

spi.send_recv(id,data[,cscontrol])

参数 类型 释义 取值
id number SPI 的 ID spi.SPI_1 表示 SPI1,Air720U 系列只有 SPI1 作为普通 SPI 接口使用,固定传 spi.SPI_1 即可通道选择 0:普通 spi 1:lcdspi
data
string 要发送的数据
cscontrol number cs 是否自动控制,可选参数默认 0,1 代表 CS 随数据自动变化,0 代表 cs 先拉低数据结束再恢复 0/1

返回值

wKgaoWc9_leAW8lhAAB2OzcZQTM060.png

5.1.5 关闭 SPI

spi.close(id)

参数 类型 释义 取值
id number SPI 的 ID,spi.SPI_1 表示 SPI1,Air720U 系列只有 SPI1 作为普通 SPI 接口使用,固定传 spi.SPI_1 即可 0:普通 spi 1:lcdspi 复用为普通 spi

返回值

wKgZoWc9_mGASMCaAACcFJoMnqg091.png

5.2 test_SPIFlash.lua 代码

test_SPIFlash 程序流程。

wKgZoWc9_nCAbb0IAAKUJrmxhG4799.pngwKgaoWc9_n2ADbwQAAAswkP4DMY473.png

wKgZoWc9_pSAWUdRAAS0-8sUO4s064.png

5.3 main.lua 代码

本代码为主程序脚本,系统启动后首先会对 4G 网络进行配置,然后加载 test_SPIFlash 测试模块。

5.4 spiFlash.lua

spiFlash.lua 为 W25Q32/BH25Q32 驱动代码。

wKgZoWc9_qKAAQ0KAAOXZyKLatE690.pngwKgaoWc9_rGAbuZYAANJmR9z8rI646.pngwKgaoWc9_sOAIgQaAAQwsvFctzo836.pngwKgZoWc9_tKACxXiAAOCC1h5P9w465.pngwKgaoWc9_uKAI-7ZAAR3WY7K-K8239.pngwKgZoWc9_vWAWKGsAAXb4qDCNBg340.pngwKgaoWc9_waAPzloAAT2nROUexw439.pngwKgZoWc9_xGAOqw0AADR-q7z-a4927.png

六、开机调试

6.1 开发板开机

连接好硬件并下载固件后,启动 Luatools 软件,系统运行信息将显示在界面中。红框中为开发板连接到 PC 机后正常打印的信息,如下图所示。

wKgZoWc9_xyAWFX_AAKjevH7KTA511.png

6.2 SPI FLASH 调试

读出 SPI FLASH ID, 并显示 SPI FLASH 的型号,并且读写测试。

wKgaoWc9_yaAUVhDAAXFaKoNU0Q076.png

七、常见问题

7.1 为什么 SPI 通信中会出现一些乱码或数据丢失

答:SPI 通信的接口电平不匹配。可用示波器观测 SPI 接口在通信过程中的电平状态和电平质量,确认用户所使用的通信设备中接口电平是否与 Air724 模块 SPI1 接口电平一致,Air724 开发板上的 Air724 模块的 SPI1 接口电平均为 1.8V,如不匹配,请确保一致。不能过高或过低,过低有可能会导致电平电压不能被识别,过高有可能会损坏 SPI 通信接口,另外,建议使用一些高速器件作为电平转换器件,可提高接口电平的信号质量。

7.2 标准 spi 可以驱动的目标芯片电压是多少?

1.8V,这个电压是写死的,无法设置,如果目标芯片工作电压不在此范围内需要用电平转换芯片。

分享完毕

审核编辑 黄宇

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

    关注

    5213

    文章

    20862

    浏览量

    339648
  • 物联网
    +关注

    关注

    2951

    文章

    48381

    浏览量

    420451
  • SPI
    SPI
    +关注

    关注

    17

    文章

    1912

    浏览量

    103003
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    4G双通道智能挂锁新升级

    随着物联网技术的快速迭代与用户需求的不断升级,我们对4G双通道智能挂锁进行了全面升级。为了直观展示两款产品的区别,我们首先通过下表进行概括:对比维度一代4G双通道智能挂锁二代4G双通道
    的头像 发表于 05-27 11:33 132次阅读
    <b class='flag-5'>4G</b>双通道智能挂锁新升级

    USR-LTE-7S4 4G 模块:功能特性与技术规格解析

    USR-LTE-7S4 4G 模块:功能特性与技术规格解析 在物联网飞速发展的今天,4G 模块作为连接设备与网络的关键组件,其性能和功能直接影响着整个系统的运行效率和稳定性。济南有人物
    的头像 发表于 05-09 11:55 409次阅读

    4g模块加装改wifi模块

    -请问各位大神图中的美格智能SLM320-C的4g模块如何改造加装ESP8266wifi模块??请各位大神帮帮忙
    发表于 05-07 12:07

    4G Cat.1蜂窝模组,蜂窝物联网的绝对主角

    4G Cat.1蜂窝模组凭借其低功耗、广覆盖、高性价比的技术特性,已成为当前物联网蜂窝连接市场的主导力量, 根据TSR 发布的《蜂窝物联网模组市场展望(2025—2026):2025年
    的头像 发表于 03-18 14:07 392次阅读

    GD01C 4G路由模组:串口转4G/WiFi/网口通信

    、适应性强等特点,是工业控制、智能家居、户外联网等领域的理想选择。一、产品概述HLK-GD01C是一款集4G上网、有线路由、WiFi覆盖于一体的多功能4G路由模组。它支
    的头像 发表于 02-25 14:34 468次阅读
    GD01C <b class='flag-5'>4G</b>路由<b class='flag-5'>模组</b>:串口转<b class='flag-5'>4G</b>/WiFi/网口通信

    户外4G模组优选高稳时钟NDK NT2016SB TCXO

    日本电波NDK 19.200MHz温补晶振NT2016SB以±2.5ppm高稳定度、-40℃~85℃宽温工作及2.0×1.6mm微型封装,为户外4G模组提供精准时钟。其低相位噪声与快速启动特性,有效保障通信设备在严苛环境下的信号质量与连接可靠性。
    的头像 发表于 01-22 09:26 997次阅读
    户外<b class='flag-5'>4G</b><b class='flag-5'>模组</b>优选高稳时钟NDK NT2016SB TCXO

    模组日志功能技术概览

    本文是对 4G 模组, 以及 4G+GNSS 模组的日志功能的总体介绍。 通过日志,可以对研发过程中,以及模组运行过程中的各种故障进行分析
    的头像 发表于 01-14 15:32 335次阅读
    <b class='flag-5'>模组</b>日志功能<b class='flag-5'>技术</b>概览

    新品上市:用微信小程序就能远程控制的遥控开关+本地双控的4G模块,来了!

    新品上市CE31-BxxRX系列4G无线遥控开关CE31-TD04X4G远程遥控开关模组CE31-SD02X小体积遥控开关本文所有下划线文字,皆可点击跳转查看详情系列型号:4G无线遥控
    的头像 发表于 12-11 19:33 1325次阅读
    新品上市:用微信小程序就能远程控制的遥控开关+本地双控的<b class='flag-5'>4G</b>模块,来了!

    4G工业网关是否还有需求

    4G工业网关在2025年仍有显著需求 ,其需求主要源于网络覆盖优势、成本效益、工业场景适配性、技术成熟度以及特定行业需求,尽管5G技术发展迅速,但4
    的头像 发表于 09-24 11:29 967次阅读

    物流车4G车载监控系统的核心功能与应用场景解析

    物流车 4G 车载监控系统通过 4G 网络实现对运输车辆的实时定位、状态监控、数据传输,并与供应链管理体系深度集成,为供应链全链路优化提供了关键技术支撑。
    的头像 发表于 08-30 11:33 1241次阅读

    广电计量成功自研4G IOT卫星通信集成测试系统

    近期,广电计量天星院与旗下子公司广州山锋测控技术有限公司(简称:山锋测控)联合研发国内首家 “4G IOT 卫星通信集成测试系统”,可覆盖 3GPP 36.521-4
    的头像 发表于 08-14 17:51 1561次阅读
    广电计量成功自研<b class='flag-5'>4G</b> IOT卫星通信<b class='flag-5'>集成</b>测试系统

    工业物联网平台可以支持5G/4G通信吗

    工业物联网平台可以支持5G/4G通信 ,且5G/4G通信是工业物联网中实现远程监控与分布式设备连接的关键技术手段,其应用场景、
    的头像 发表于 07-25 15:28 983次阅读
    工业物联网平台可以支持5<b class='flag-5'>G</b>/<b class='flag-5'>4G</b>通信吗

    CE31-TD系列4G遥控开关模组核心板方案推荐

    CE31-TD系列4G遥控开关模组核心板凭借其高性能、低延迟、多种控制方式和广泛的应用领域,成为市场上备受瞩目的产品。无论是智能家居、工业自动化还是医疗保健等领域,CE31-TD系列都能为用户提供可靠的解决方案。
    的头像 发表于 07-10 13:50 736次阅读

    SkyOne® 汽车多模多频段前端模块,用于 4G LTE 和 4G LTE-A(下行链路载波聚合 (CA) 应用) skyworksinc

    电子发烧友网为你提供()SkyOne® 汽车多模多频段前端模块,用于 4G LTE 和 4G LTE-A(下行链路载波聚合 (CA) 应用)相关产品参数、数据手册,更有SkyOne® 汽车多模多频段
    发表于 07-01 18:31
    SkyOne® 汽车多模多频段前端模块,用于 <b class='flag-5'>4G</b> LTE 和 <b class='flag-5'>4G</b> LTE-A(下行链路载波聚合 (CA) 应用) skyworksinc

    4G全网通网关是什么?有什么功能?

    4G全网通网关是一种能够接入4G网络,并将4G网络信号转换为其他网络信号(如WiFi、以太网等),实现多设备联网的通信设备。它支持国内三大运营商(中国移动、中国联通、中国电信)的4G
    的头像 发表于 06-17 15:43 1711次阅读
    <b class='flag-5'>4G</b>全网通网关是什么?有什么功能?