“MCookie Upin27 说明”的版本间的差异
Zhangfengfeng(讨论 | 贡献) (→注意事项) |
Zhangfengfeng(讨论 | 贡献) (→表格) |
||
第76行: | 第76行: | ||
| style="background: LightYellow;" |'''功能模块''' | | style="background: LightYellow;" |'''功能模块''' | ||
|- | |- | ||
− | | [[MCookie-Audio|Audio]]||UART||||style="background: LightGrey;" |(TX)||style="background: LightGrey;" |(RX)||style="background: PeachPuff;" |TX||style="background: PeachPuff;" |RX||style="background: LightGrey;" |(TX)||style="background: LightGrey;" |(RX)||||||||||||||||||||||||||||||style="background: PeachPuff;" |ADKEY||||OUT||IN|||| | + | | [[MCookie-Audio/zh|Audio]]||UART||||style="background: LightGrey;" |(TX)||style="background: LightGrey;" |(RX)||style="background: PeachPuff;" |TX||style="background: PeachPuff;" |RX||style="background: LightGrey;" |(TX)||style="background: LightGrey;" |(RX)||||||||||||||||||||||||||||||style="background: PeachPuff;" |ADKEY||||OUT||IN|||| |
|- | |- | ||
| [[MCookie-AudioPro|AudioPro]]||SPI||||||style="background: LightGrey;" |MIDI||style="background: PeachPuff;" |DERQ||||||||||||||||||style="background: LightCyan;" |MISO||style="background: LightCyan;" |MOSI||style="background: LightCyan;" |SCK||||||style="background: PeachPuff;" |DCS||style="background: PeachPuff;" |CS||||||||||||IN|||| | | [[MCookie-AudioPro|AudioPro]]||SPI||||||style="background: LightGrey;" |MIDI||style="background: PeachPuff;" |DERQ||||||||||||||||||style="background: LightCyan;" |MISO||style="background: LightCyan;" |MOSI||style="background: LightCyan;" |SCK||||||style="background: PeachPuff;" |DCS||style="background: PeachPuff;" |CS||||||||||||IN|||| |
2017年9月14日 (四) 10:39的版本
每个mCookie模块都有Upin27引脚。
下面的表格说明了某些模块会有特殊作用的引脚。这些引脚可以复用,但是某些情况下堆叠使用一些模块可能会造成引脚的冲突,需要注意一下。 技术规范和详细信息请参考 注意事项 。
已知冲突列表参考 已知冲突。
目录
Upin27 分布
表格
颜色 | 含义 |
---|---|
无色 | 正常使用的引脚 |
红色 | 特殊功能引脚,可能会冲突 |
灰色 | 特殊功能引脚,但是默认不使用。 |
蓝色 | 特殊功能引脚,但是不会引起冲突。 |
模块 | 总线 | I2CAddr (7bit) | D0 | D1 | D2 | D3 | D4 | D5 | D6 | D7 | D8 | D9 | D10 | D11 | D12 | D13 | A0 | A1 | A2 | A3 | A4 | A5 | A6 | A7 | 5V | 3V3 | RST | AREF |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
核心模块 | ||||||||||||||||||||||||||||
Core | RX0 | TX0 | MISO | MOSI | SCK | SDA | SCL | IN | (IN) | RST | AREF | |||||||||||||||||
Core+ | RX0 | TX0 | RX1 | TX1 | MISO | MOSI | SCK | SDA | SCL | IN | (IN) | RST | AREF | |||||||||||||||
CoreUSB | RX1 | TX1 | MISO | MOSI | SCK | SDA | SCL | IN | OUT | RST | AREF | |||||||||||||||||
CoreRF | RX0 | TX0 | RX1 | TX1 | MISO | MOSI | SCK | SDA | SCL | IN | IN | RST | AREF | |||||||||||||||
程序上传模块 | ||||||||||||||||||||||||||||
BLE Upload | UART | TX | RX | IN | OUT | |||||||||||||||||||||||
mBattery | UART | TX | RX | OUT | OUT | OUT | ||||||||||||||||||||||
USBTTL | UART | TX | RX | OUT | OUT | OUT | ||||||||||||||||||||||
USBttlC | UART | TX | RX | OUT | OUT | OUT | ||||||||||||||||||||||
功能模块 | ||||||||||||||||||||||||||||
Audio | UART | (TX) | (RX) | TX | RX | (TX) | (RX) | ADKEY | OUT | IN | ||||||||||||||||||
AudioPro | SPI | MIDI | DERQ | MISO | MOSI | SCK | DCS | CS | IN | |||||||||||||||||||
Battery Management | OUT | OUT | OUT | |||||||||||||||||||||||||
GPS | UART | (TX) | (RX) | TX | RX | IN | ||||||||||||||||||||||
mBattery | UART | TX | RX | OUT | OUT | OUT | ||||||||||||||||||||||
Motion | I2C | 0x68(MPU) 0x1E(HMC) 0x77(BMP) | (INT) | (INT) | SDA | SCL | IN | |||||||||||||||||||||
SD | SPI | CS | MISO | MOSI | SCK | CD | IN | |||||||||||||||||||||
RTC | I2C | 0x51(pcf) 0x50(eep) | INT | (INT) | SDA | SCL | (IN) | IN | ||||||||||||||||||||
通讯模块 | ||||||||||||||||||||||||||||
Bluetooth (BLE) | UART | TX | RX | (TX) | (RX) | (TX) | (RX) | IN | ||||||||||||||||||||
BLE Upload | UART | TX | RX | IN | OUT | |||||||||||||||||||||||
NFC | I2C | 0x24 | SDA | SCL | IN | |||||||||||||||||||||||
WiFi | UART | TX | RX | (TX) | (RX) | IN | RST | |||||||||||||||||||||
扩展模块 | ||||||||||||||||||||||||||||
Amplifier | RIN | LIN | IN | |||||||||||||||||||||||||
Hub | 如果传感器连接到了某一个被模块占用的引脚上面,可能会引起冲突(比如传感器接到了D0 D1口会影响程序的上传以及串口监视器的使用). | IN | IN | |||||||||||||||||||||||||
Motor | 2A | 1A | 2B | 1B | IN | |||||||||||||||||||||||
LED Matrix | DI | (DI) | (DI) | IN | ||||||||||||||||||||||||
OLED | I2C | 0x3C | SDA | SCL | IN |
注意事项
- 每个堆叠到一起的mCookie都是27pin的
- 核心模块
- 在一个例程中有且只能有一个核心
- 核心模块就像一个程序的大脑一样,所余的引脚都需要连接到核心才能保证控制信号的正常传输
- 使用电池盒或者DUO这种类似模块可以降低模块堆叠的高度但是这些模块依然是跟核心模块连接在一起的
- 上传模块
- 上传模块是上传程序到核心必用的模块(CoreUSB除外)
- 上传程序给核心的时候会用到RX(D0引脚)TX(D1引脚).这两个引脚同时也是串口监视器数据传输的引脚。(上传核心监测到的数据给电脑)
- 上传程序跟串口监视不能同时进行(IDE上传程序的时候会自动屏蔽串口监视器,但是mixly打开串口监视器的时候上传按钮是不可点击的状态,一般情况两者不会产生冲突,但是如果使用了第三方的串口监视器软件可能会造成上传程序失败)
- RX与TX同时一般也是蓝牙跟WiFi的通讯端口,因此上传程序的时候不要叠加这两个模块以防造成冲突导致上传程序失败。
- 可以通过修改跳线的方法来避免跟核心通讯的冲突
- 其他模块(非核心)
- 当一个引脚被一个模块的特殊功能占用之后一般来讲就不能被其他模块使用了,否则会带来不可预期的问题。
- 非核心模块的管脚名字有时是重复的(如图表所示)
- 有些模块可以修改跳线来避免管脚冲突。请参见模块页面 (WiFi 蓝牙等模块)
- 修改跳线之后模块本来被占用的引脚将得到释放。
- 电源由mBattery,电池管理等供电模块提供。电源引脚5V,3V3和GND可以跨所有模块共享,不会引起冲突。
- 通信引脚如I2C(SDA [引脚A4]和SCL [引脚A5])和SPI(MISO [引脚D11],MOSI [引脚D12]和SCK [引脚D13])共用的时候不会冲突,IIC总线跟SPI总线本来就是可以连接多个设备的
但是当作IIC或者SPI总线使用的时候就不能当作模拟(数字)输入输出管脚使用了。
- 但是UART总线只能连接一个设备因此如果共用之后会引起冲突。
- 传感器接口模块
- 几乎把核心所有引脚都做成了接口形式,用于连接传感器到核心模块以便控制。
- 需要注意,尽量不要把传感器连接到特殊功能的引脚,否则会引起冲突。
- 更多信息请查看传感器接口模块页面。
已知冲突
程序上传模块与WiFi 蓝牙模块
- 程序上传过程中会用到D0与D1,因此上传程序不能与串口监视同时工作。
- 上传程序过程中如果叠加了WiFi或者蓝牙模块的话 也会产生冲突导致程序上传失败。
- 可以通过修改跳线的方法把WiFi或者蓝牙的通讯端口改到D2 D3以避免上传程序产生的冲突。
mCookie Motor模块
- 电机模块会用到D7引脚,这个会与SD卡模块冲突
mCookie SD模块
- 冲突原理同上
引脚使用案例
案例一
- 使用core作为核心的时候,如果用到电机模块,会占用掉D5 D6 D7 D8引脚,可以正常使用。
- 这些引脚将不可在作为输入输出端口使用。
案例二
- 使用core作为核心的,同时用到了电机模块以及audiopro模块,因为电机模块会占用D5678,同时audiopro会用到D8 11 12 13,D8是电机模块的控制信号线同时也是audiopro调用SD卡模块的信号线,因此会产生冲突,不可以同时使用。