尽管RAKwireless提供了广泛的WisBlock IO模块选择,但可能还是未找到所需的那一款。在这个简小的教程中,将介绍如何制作自己的WisBlock IO扩展模块。
#请先阅读
- WisBlock产品中使用的板对板连接器可以从RAKwireless商店中购买。连接器有两个供应商:松下(Panasonic)和特思嘉(TXGA)。Base板(RAK5005-O)上是母/插座型,模块上是公/插头型。
- Panasonic 连接器数据手册
- TXGA 连接器母型数据手册
- TXGA 连接器公型数据手册
- 零件库中提供了除Eagle以外的用于其他PCB设计工具的原理图和PCB零件库。
- 仔细阅读RAK5005-O WisBlock Base的数据手册,了解连接到4个传感器插槽的信号。
- 仔细阅读其中一个现有的WisBlock IO模块的数据手册,了解信号的应用。如RAK1920 IO 扩展。
#模板方案
为了简化任务,我们为Autodesk Eagle™准备了一个完整的示例项目,可在此处下载。该项目具备启动定制WisBlock IO模块所需要的一切。包含用在WisBlock IO模块上的板对板连接器和预定义的PCB模型,将原始WisBlock IO模块与孔匹配,以便将模块固定到WisBlock Base。
#模板原理图
模板原理图非常简单。仅包含连接器和引脚分配的解释。连接器的所有38个引脚都分配给信号。2个引脚未使用。
Figure 1: 示例原理图#关于引脚分配的重要信息
以下事项需要了解:
- VDD是MCU GPIO电压,对于RAK4631此值为3.3V。只要WisBlock是通过电池或者USB供电,就可使用。
- 3V3是一个3.3V电源,只要WisBlock是通过电池或者USB供电,就可使用。
- 3V3_S是一个3.3V电源,可由WisBlock Core模块控制。
- VBUS是来自USB连接器的5 V电压。此电源仅当WisBlock通过USB供电时才可用。
- USB+和USB-是来自WisBlock Core模块的USB连接器。这些信号可能不适用于所有WisBlock Core模块。
- I2C2_SDA和I2C2_SCL并非在所有WisBlock Core模块上都可用。
- TXD1和RXD1并非在所有WisBlock Core模块上都可用。
如果IO模块仅消耗少量uA的电流,可以选择VDD或3V3为IO模块的电子器件供电。但是,如果模块消耗较高的电流,强烈建议使用3V3_S作为电源。这样,可通过软件优化WisBlock应用的功耗。
引脚序号 | 引脚名称 | 描述 |
---|---|---|
1 | VBAT | 电池电源 |
2 | VBAT | 电池电源 |
3 | GND | 接地 |
4 | GND | 接地 |
5 | 3V3 | 3.3V 电源 |
6 | 3V3_S | 3.3V 电源,由CPU模块控制 |
7 | USB+ | USB D+ |
8 | USB- | USB D- |
9 | VBUS | 用于USB的5V输入 |
10 | SW1 | 开关连接器 |
11 | TX0 | MCU UART0 TX 信号 |
12 | RXD0 | MCU UART0 RX 信号 |
13 | RESET | 复位开关,用于MCU复位 |
14 | LED1 | 电池充电指示LED |
15 | LED2 | 用于定制的LED |
16 | LED3 | 用于定制的LED |
17 | VDD | GPIO电压和MCU模块 |
18 | VDD | GPIO电压和MCU模块 |
19 | I2C1_SDA | #1 I2C 数据信号 |
20 | I2C1_SCL | #2 I2C 时钟信号 |
21 | AIN0 | 用于ADC的interwetten与威廉的赔率体系 输入 |
22 | AIN1 | 用于ADC的模拟输入 |
23 | NC | 无连接 |
24 | NC | 无连接 |
25 | SPI_CS | SPI 片选信号 |
26 | SPI_CLK | SPI 时钟 |
27 | SPI_MISO | SPI MISO 信号 |
28 | SPI_MOSI | SPI MOSI 信号 |
29 | IO1 | 通用 IO |
30 | IO2 | 用于3V3_S启用 |
31 | IO3 | 通用 IO |
32 | IO4 | 通用 IO |
33 | TXD1 | MCU UART1 TX 信号 |
34 | RXD1 | MCU UART1 RX 信号 |
35 | I2C2_SDA | #2 I2C 数字信号 |
36 | I2C2_SCL | #2 I2C 时钟信号 |
37 | IO5 | 通用 IO |
38 | IO6 | 通用 IO |
#模板 PCB
模板PCB与标准WisBlock传感器模块的尺寸相匹配。请勿移动连接器(底部组件)或者WisBlock Base上固定模块的安装孔。
Figure 2: 模板 PCB正如您所看到的,Autodesk Eagle™在较大安装整体周边会上报很多DRC尺寸错误。安装孔及其铜印(连接到GND信号)必须机械地位于PCB边缘。Autodesk Eagle™ 仅允许一条与PCB边缘距离有关的设计规则,因此存在DRC检查错误。
如果定制的IO模块不需要整个宽度(35 mm),可以减少宽度并跳过右侧两个较大的固定孔。但是需要确保宽度至少覆盖左侧的3个较小固定孔。
#关于PCB设计的重要信息
- 如上所说,请勿将连接器和安装孔移动到其他位置。如果移动它们,自制的WisBlock IO将无法插入到WisBlock Base模块。
- 由于板对板连接器的位置靠近PCB边缘,可能必须更改设计规格,使用4mil连接,铜印与0.2mm通孔直径之间的距离4mil。这将取决于您的设计是否适用于默认的Autodesk Eagle™设计规则,但大多数情况下,连接到连接器焊盘的电线将无法布线。
- 建议在顶层和底层安装GND平面。
- 不要将组件放置在底层,因为传感器模块和Base板之间的空间仅为1~2 mm。
#IO 扩展示例
本示例选择的是非常常见的芯片, PCF8574 GPIO 扩展芯片。此芯片通过I2C控制,可将GPIO总数扩展为8个双向GPIO。
#IO 扩展示例原理
以下为IO 扩展原理图。
Figure 3: IO 原理图首先要检查的是,我们删除了板对板连接器上的大多数连接。
Figure 4: 调整连接网仅留下所需的连接网。
对于IO扩展芯片,我们仅需要电源网络、I2C网络和1条IRQ线。有关IO扩展的设计可从PCF8574 GPIO 扩展数据手册中获取。
#IO 扩展示例 PCB
可以在一块两层电路板上完成整个设计。连接很简单,可使用 Autodesk Eagle™自动布线功能完成。
正如看到的那样,建议将GND平面安装在顶部和底部。此外,安装孔周围的开放铜区域是可见,此铜区域连接到GND信号。
#IO 扩展顶层
Figure 5: RTC示例顶层#IO 扩展底层
Figure 6: RTC示例底层IO扩展示例PCB的Eagle文件可在此处下载。
#结论
正如所看到的那样,设计一款定制的WisBlock IO模块并不困难。只需要遵循PCB设计的几个设计规则:
- 请勿移动模板PCB所给定的板对板连接器位置。
- 请勿移动模板PCB所给定的安装孔位置。
- 为传感器选择正确的电源:
- 如果电流消耗非常低,选择VDD或3V3
- 如果需要控制WisBlock传感器模块的电源,选择3V3_S
- 不要将组件放置在底层。传感器模块和Base板之间的空间仅1~2 mm
希望此教程能够对您有所帮助。如果您已成功设计出自己的WisBlock IO模块,欢迎在我们的论坛 WisBlock部分分享细节。感谢您阅读本教程并通过使用我们的WisBlock产品支持RAKwireless。
RAKwireless在此开源代码上投入了大量的时间和资源,感谢您支持RAKwireless。如需RAKwireless开源硬件,可从RAKwireless商店购买产品。
有关RAKwireless产品的支持和问题,请访问我们的论坛
有关示例和快速入门教程,请访问我们的Github库
有关RAK产品更多的信息,请访问我们的文档中心和知识库
购买WisBlock模块,请访问我们的线上商店
-
IO模块
+关注
关注
0文章
149浏览量
12835 -
RAK
+关注
关注
0文章
48浏览量
2095
发布评论请先 登录
相关推荐
评论