ST 로고

NFC/RFID 리더 개발을 위한 ST UM2766 X-LINUX-NFC5 패키지

NFC RFID 리더 개발을 위한 ST UM2766 X-LINUX-NFC5 패키지

소개

이 STM32 MPU OpenSTLinux 소프트웨어 확장 패키지는 RFAL(Radio Frequency Abstraction Library)을 사용하여 표준 Linux 시스템용 NFC/RF 통신을 개발하는 방법을 보여줍니다. RFAL 공통 인터페이스 드라이버는 사용자 기능 및 애플리케이션 소프트웨어가 모든 ST25R NFC/RFID 리더 IC와 호환되도록 합니다.
X-LINUX-NFC5 패키지는 STM32 Nucleo 확장 보드에서 ST1R25B NFC 프런트 엔드를 구동하기 위해 Linux를 실행하는 STM3911MP32 시리즈 마이크로프로세서가 있는 디스커버리 키트에 RFAL을 포팅합니다. 패키지에는 다음이 포함됩니다.amp다양한 유형의 NFC 감지를 이해하는 데 도움이 되는 le 응용 프로그램 tags 및 P2P를 지원하는 휴대폰.
소스 코드는 Linux를 실행하는 광범위한 처리 장치에 이식할 수 있도록 설계되었으며 RF 통신을 추상화하기 위해 ST25R IC의 모든 하위 계층 및 일부 상위 계층 프로토콜을 지원합니다.

Linux용 무선 주파수 추상화 라이브러리Linux용 무선 주파수 추상화 라이브러리

알팔

프로토콜 ISO 깊이 NFC DEP
기술 NFC-A NFC-B NFC-F NFC-V T1T

ST25TB

RF

RF 구성

ST25R3911B

X-LINUX-NFC5 이상view

주요 특징

X-LINUX-NFC5 소프트웨어 확장 패키지에는 다음 기능이 포함됩니다.

  • 최대 25W 출력 전력으로 ST3911R25B/ST391R1.4x NFC 프런트 엔드를 사용하여 NFC 지원 애플리케이션을 구축하기 위한 완전한 Linux 사용자 공간 드라이버(RF 추상화 계층).
  • 고속 SPI 인터페이스를 통해 ST25R3911B/ST25R391x와 Linux 호스트 통신.
  • 모든 주요 기술 및 상위 계층 프로토콜에 대한 완전한 RF/NFC 추상화(RFAL):
    • NFC-A(ISO14443-A)
    • NFC-B(ISO14443-B)
    • NFC-F(펠리카)
    • NFC-V(ISO15693)
    • P2P(ISO18092)
    • ISO-DEP(ISO 데이터 교환 프로토콜, ISO14443-4)
    • NFC-DEP(NFC 데이터 교환 프로토콜, ISO18092)
    • 독자적인 기술(Kovio, B', iClass, Calypso 등)
  • SampSTM05MP1F-DK32에 연결된 X-NUCLEO-NFC157A2 확장 보드로 구현 가능
  • Samp여러 NFC를 감지하는 le 응용 프로그램 tags 유형
패키지 아키텍처

소프트웨어 패키지는 STM7MP32 시리즈의 A1 코어에서 실행됩니다. X-LINUX-NFC5는 Linux 소프트웨어 프레임워크에 의해 노출된 하위 계층 라이브러리 및 SPI 라인과 상호 작용합니다.

Linux 환경의 X-LINUX-NFC5 애플리케이션 아키텍처
Linux 환경의 X-LINUX-NFC5 애플리케이션 아키텍처

하드웨어 설정

하드웨어 요구 사항 :

  • Ubuntu 기반 PC/가상 머신 버전 16.04 이상
  • STM32MP157F-DK2 보드(디스커버리 키트)
  • X-NUCLEO-NFC05A1
  • STM8MP32F-DK157를 부팅하기 위한 2GB 마이크로 SD 카드
  • SD 카드 리더기 / LAN 연결
  • USB Type-A-Type-micro B USB 케이블
  • USB Type-C USB 케이블
  • USB PD 호환 5V 3A 전원 공급 장치

PC/가상 머신은 ST25R3911B IC를 통해 NFC 장치를 감지하고 통신하기 위한 RFAL 라이브러리 및 애플리케이션 코드를 구축하기 위한 교차 개발 플랫폼을 형성합니다.

하드웨어 연결 방법

1단계. X-NUCLEO-NFC05A1 확장 보드를 STM32MP157F-DK2 검색 보드 하단의 Arduino 커넥터에 연결합니다.

Nucleo 보드 및 디스커버리 보드 Arduino 커넥터

  1. X-NUCLEO-NFC05A1 확장 보드
  2. STM32MP157F-DK2 디스커버리 보드
  3. 아두이노 커넥터

디스커버리 보드에 내장된 ST-LINK 프로그래머 디버거를 호스트 PC에 연결

2단계. 디스커버리 보드에 내장된 ST-LINK 프로그래머/디버거를 USB 마이크로 B 유형 포트(CN11)를 통해 호스트 PC에 연결합니다.

3단계. USB Type C 포트(CN6)를 통해 검색 보드에 전원을 공급합니다.

전체 하드웨어 연결 설정
전체 하드웨어 연결 설정

관련 링크
전원 및 통신 포트에 대한 자세한 내용은 이 위키를 참조하십시오.

소프트웨어 설정

시작하기 전에 USB PD 호환 32V, 157A 전원 공급 장치를 통해 STM2MP5F-DK3 디스커버리 키트에 전원을 공급하고 시작하기 위키의 지침에 따라 스타터 패키지를 설치하십시오. 부팅 가능한 이미지를 플래시하려면 최소 2GB microSD 카드가 필요합니다.
애플리케이션을 실행하려면 관련 주변기기를 활성화하도록 장치 트리를 업데이트하여 플랫폼 구성을 업데이트해야 합니다. 사용 가능한 미리 빌드된 이미지를 사용하여 빠르게 이 작업을 수행하거나 장치 트리를 개발하고 고유한 커널 이미지를 빌드할 수 있습니다.
ST 배포 패키지에 Yocto 계층(meta-nfc5)을 포함하여 이 소프트웨어 패키지를 선택적으로 빌드할 수도 있습니다. 이 작업은 소스 코드를 생성하고 최종 플래시 가능 이미지에 컴파일된 바이너리와 함께 장치 트리 수정을 포함합니다. 프로세스를 설명하는 자세한 단계는 3.5절을 참조하십시오.
ssh 및 scp 명령을 사용하여 TCP/IP 네트워크를 통해 호스트 PC에서 디스커버리 키트에 연결하거나 Linux용 minicom 또는 Windows용 Tera Term과 같은 도구를 사용하여 직렬 UART 또는 USB 링크를 통해 연결할 수 있습니다.

소프트웨어의 빠른 평가를 위한 단계
  • 01단계: SD 카드의 스타터 패키지를 플래시합니다.
  • 02단계: 스타터 패키지로 보드를 부팅합니다.
  • 03단계: 이더넷 또는 Wi-Fi를 통해 보드에서 인터넷 연결을 활성화합니다. 도움이 필요하면 관련 위키 페이지를 참조하십시오.
  • 04단계: X-LINUX-NFC5에서 미리 빌드된 이미지 다운로드 web ST의 페이지 web대지
  • 05단계: 다음 명령을 사용하여 장치 트리 blob을 복사하고 새 플랫폼 구성을 업데이트합니다.
    네트워크 연결을 사용할 수 없는 경우 전송할 수 있습니다. fileTera Term을 사용하여 Windows PC에서 Discovery Kit로 로컬로 전송합니다.
    데이터 전송에 대한 자세한 내용은 files는 Tera Term을 사용합니다.
    소프트웨어의 빠른 평가를 위한 단계 01
  • 06단계: 보드가 부팅된 후 애플리케이션 바이너리와 공유 라이브러리를 검색 보드에 복사합니다.
    소프트웨어의 빠른 평가를 위한 단계 02이러한 명령이 실행되면 응용 프로그램이 실행되기 시작합니다.
개발자 패키지에서 플랫폼 구성을 업데이트하는 방법

다음 단계를 통해 개발 환경을 설정할 수 있습니다.

  • 01단계: 개발자 패키지를 다운로드하고 Ubuntu 시스템의 기본 폴더 구조에 SDK를 설치합니다.
    여기에서 지침을 찾을 수 있습니다. SDK 설치
  • 02단계: 장치 트리 열기 file 개발자 패키지 소스 코드에 'stm32mp157f-dk2.dts'를 추가하고 아래 코드 스니펫을 file:
    그러면 장치 트리가 업데이트되어 SPI4 드라이버 인터페이스를 활성화하고 구성합니다.
    소프트웨어의 빠른 평가를 위한 단계 03
  • 03단계: 개발자 패키지를 컴파일하여 stm32mp157f-dk2.dtb를 얻습니다. file.
RFAL Linux 애플리케이션 코드를 빌드하는 방법

시작하기 전에 SDK를 다운로드, 설치 및 활성화해야 합니다. 링크에서 애플리케이션 다운로드: X-LINUX-NFC5

  • 1단계. 아래 명령을 실행하여 코드를 크로스 컴파일합니다.
    이 명령은 다음을 빌드합니다. files:
    • 전직amp파일 응용 프로그램: nfc_poller_st25r3911
    • ex를 실행하기 위한 공유 라이브러리amp파일 응용 프로그램: librfal_st25r3911.so
      RFAL Linux 애플리케이션 코드 01을 빌드하는 방법
STM32MP157F-DK2에서 RFAL Linux 애플리케이션을 실행하는 방법
  • 01단계: 아래 명령을 사용하여 생성된 바이너리를 Discovery Kit에 복사합니다.
    STM32MP157F-DK2 01에서 RFAL Linux 애플리케이션을 실행하는 방법
  • 02단계: Discovery Kit 보드에서 터미널을 열거나 ssh 로그인을 사용하고 다음 명령을 사용하여 애플리케이션을 실행합니다.
    STM32MP157F-DK2 02에서 RFAL Linux 애플리케이션을 실행하는 방법사용자는 화면에 다음 메시지가 표시됩니다.
    STM32MP157F-DK2 03에서 RFAL Linux 애플리케이션을 실행하는 방법
  • 03단계: NFC인 경우 tag NFC 수신기, UID 및 NFC 근처에 가져옵니다. tag 유형이 화면에 표시됩니다.

nfcPoller 애플리케이션을 실행하는 디스커버리 키트
nfcPoller 애플리케이션을 실행하는 디스커버리 키트

배포 패키지에 Meta-nfc5 레이어를 포함하는 방법
  • 01단계: Linux 시스템에서 배포 패키지를 다운로드하고 컴파일합니다.
  • 02단계: 이 문서를 동기적으로 따르려면 ST 위키 페이지에서 제안하는 기본 디렉토리 구조를 따르십시오.
  • 03단계: X-LINUX-NFC5 애플리케이션 패키지 다운로드:
    배포 패키지 5에 meta-nfc01 계층을 포함하는 방법
  • 04단계: 빌드 구성을 설정합니다.
    배포 패키지 5에 meta-nfc02 계층을 포함하는 방법
  • 05단계: 배포 패키지 구성의 빌드 구성에 meta-nfc5 계층을 추가합니다.
    배포 패키지 5에 meta-nfc03 계층을 포함하는 방법
  • 06단계: 구성을 업데이트하여 이미지에 새 구성요소를 추가합니다.
    배포 패키지 5에 meta-nfc04 계층을 포함하는 방법
  • 07단계: 레이어를 별도로 구축한 다음 전체 배포 레이어를 구축합니다.
    배포 패키지 5에 meta-nfc05 계층을 포함하는 방법메모: 배포 페이지를 처음 구축하는 데 몇 시간이 걸릴 수 있습니다. 그러나 meta-nfc5 계층을 구축하고 최종 이미지에 실행 파일을 설치하는 데 몇 분 밖에 걸리지 않습니다. 빌드가 완료되면 이미지는 다음 디렉터리에 있습니다. - /tmp-glibc/deploy/images/stm32mp1.
  • 08단계: ST Wiki 페이지의 지침을 따르십시오. 빌드된 이미지를 플래싱하여 새 빌드된 이미지를 플래시
    발견 키트.
  • 09단계: 섹션 2의 3.4단계에서 언급한 대로 애플리케이션을 실행합니다.

전송하는 방법 File■ 테라 용어 사용

Tera Term과 같은 Windows 터미널 에뮬레이터 응용 프로그램을 사용하여 전송할 수 있습니다. filePC에서 디스커버리 키트로.

  • 01단계: 디스커버리 키트에 USB 전원을 공급합니다.
  • 02단계: USB 마이크로 B 유형 커넥터(CN11)를 통해 디스커버리 키트를 PC에 연결합니다.
  • 03단계: 장치 관리자에서 가상 COM 포트 번호를 확인합니다.
    아래 스크린샷에서 COM 포트 번호는 14입니다.
    가상 통신 포트를 표시하는 장치 관리자의 스크린샷
    가상 통신 포트를 보여주는 장치 관리자의 스크린샷
  • 04단계: PC에서 Tera Term을 열고 이전 단계에서 식별한 COM 포트를 선택합니다. 전송 속도는 115200 보드여야 합니다.
    Tera Term을 통한 원격 터미널의 스냅샷
    Tera Term을 통한 원격 터미널의 스냅샷
  • 05단계: 전송하려면 file 호스트 PC에서 Discovery Kit로 [File]>[전송]>[ZMODEM]>[보내기]는 Tera Term 창 좌측 상단에 있습니다.
    테라 텀 File 전송 메뉴
    테라 텀 file 환승 메뉴
  • 06단계: 선택 file 에서 이전될 file 브라우저를 열고 [열기]를 선택합니다.
    File 전송을 위한 브라우저 창 Files
    File 보내기 위한 브라우저 창 files
    .
  • 07단계: 진행률 표시줄에 상태가 표시됩니다. file 이전.
    File 전송 진행률 표시줄
    File 전송 진행률 표시줄

개정 내역

문서 개정 내역

날짜

버전

변화

30년 2020월 XNUMX일

1

최초 출시.

 15년 2021월 XNUMX일

2

업데이트됨 섹션 1.1 주요 기능, 섹션 2 하드웨어 설정, 섹션 2.1 방법 하드웨어를 연결, 섹션 3 소프트웨어 설정, 섹션 3.1 빠른 평가를 위한 단계 소프트웨어, 섹션 3.2 개발자 패키지에서 플랫폼 구성을 업데이트하는 방법 그리고 섹션 3.3 RFAL Linux 애플리케이션 코드를 빌드하는 방법.

추가됨 섹션 3.5 배포 패키지에 meta-nfc5 계층을 포함하는 방법. STM32MP157F-DK2 검색 키트 호환성 정보를 추가했습니다.

문서 / 리소스

NFC/RFID 리더 개발을 위한 ST UM2766 X-LINUX-NFC5 패키지 [PDF 파일] 사용자 매뉴얼
UM2766, NFC-RFID 리더기 개발을 위한 X-LINUX-NFC5 패키지, NFC-RFID 리더기, NFC-RFID 리더기, X-LINUX-NFC5 패키지, X-LINUX-NFC5 개발

참고문헌

댓글을 남겨주세요

이메일 주소는 공개되지 않습니다. 필수 항목은 표시되어 있습니다. *