전자 공작 > MSC-MOD20 > SD 모듈 사용 개시부터 I2C 통신까지

운영 환경
ESP8266 (気圧計で使用したユニバーサル基板: I2Cを4.7kでプルアップ)
SDモジュール: MSC-MOD20

기압계 (이하의 것을 베이스로 I2C를 4.7k 풀업하고 있다).
h tp : // 쿠이타. m / 7 / f9 / ms / 09272 fcb56bd479c679

배경



MSC-MOD20이라는 SD 카드 모듈을 사용해 본다.
MSC-MOD20 취설

취설에는 2.2k로 풀업이라고 기재가 있지만, 이번은 4.7k 풀업으로 하고 있다.

MSC-MOD20의 가격은 4500엔.
http://www.microtechnica-shop.jp/shopdetail/000000000026/

ESP8266의 경우 microSD 슬롯(600엔)만 있으면 microSD에 저장할 수 있다.
ぃ tp // 이 m / 7 ~ f9 / ms / 280758359 f3d2c0c7 8

MSC-MOD20을 ESP8266으로 시험하는 목적은 MSC-MOD20의 버릇을 파악하는 것. 이상한 버릇이 있는지 파악하고 있으면 대응을 검토한다.
장래적으로는 파악한 정보를 바탕으로, 다른 마이크로컴퓨터에서 사용한다.
그 전에 준비로서 구현이 간단한 ESP8266을 사용했다.

구현



MSC-MOD20 패키지. RTC 용 수정 발진기가 있으며 기판에 장착됩니다. 수정 진동자를 사용하지 않는 경우도 있다. 설명 참조.
여기에서는 수정 진동자를 실장하여 사용했다.



배선



MSC-MOD20과 ESP8266의 배선은 이하로 하였다.
I2C에서 사용하고 있다.


MSC-MOD20
ESP8266
비고


1: UART TX
NC

2: UART RX
NC
I2C BUSY/이번 미사용

3: I2C SCL
5: I2C SCL

4: I2C SDA
4: I2C SDA

5: MODE 1
GND
I2C용

6: UART BUSY
NC

7: NC
NC

8: MODE 2
VCC
I2C용

9: RESET(음 논리)
VCC

10: GND
GND

11: VCC
VCC

12: WAKE
NC
이번에는 미사용

13: Vbat
VCC
외부 RTC용 배터리를 연결해도 좋다


배선 상황



@hotchpotch 씨가 소개되고 있었다 스루홀용 테스트 와이어 를 사용했다. 4500엔하는 모듈을 테스트 사용으로 납땜하면 실제 사용시에 고생한다. 이런 도구는 편리하다.



전체 연결 상태



코드 v0.2



조반 앞 의 결과, 이하의 코드가 되었다.

esp8266_160730_MSC-MOD20p1.ino
#include <Wire.h>

#define DEVICE_ADDRESS (0xA4 >> 1)

void setup() {
  Serial.begin(115200);
  Serial.println("");

  Wire.begin();
  Wire.setClock(100000L); // 100kHz
}

void loop() {
  helloWorld();
  delay(3000); // msec
}

void readData() {
  Wire.requestFrom(DEVICE_ADDRESS, /* length= */1);  
  char code = Wire.read();
  delayMicroseconds(30);

  Serial.println(code);
}

void helloWorld()
{
  Wire.beginTransmission(DEVICE_ADDRESS);
  Wire.write(0x0A);
  Wire.endTransmission(); 
  delayMicroseconds(30);

  for(int loop=0; loop<3; loop++) {
    readData();
  }
}

결과
GHI Electronics, LLC 
----------------------
 ALFAT SoC Processor 
!00
!00
!00
!00
!00
!00
!00
!00
!00
!00
!00

거의 읽을 수 있었으므로, 향후는 SD독서등의 상세 작업으로 이행한다.

좋은 웹페이지 즐겨찾기