Part 1
요약·해설
NVIC·nRF TIMER·UART와 실제 hardware 비보장, flash 쓰기 제한을 설명합니다.
Cortex-M0 · nRF51822
1 MHz
Emulation only
Part 2
접을 수 있는 영어 원문 전체
영어 원문 전체 펼치기
841A9041EC109488682EB6669CA77FE26DC6BA470B6F7268990C37D2651F3A9B
.. _qemu_cortex_m0:
ARM Cortex-M0 Emulation (QEMU)
##############################
Overview
********
This board configuration will use QEMU to emulate the
BBC Microbit (Nordic nRF51822) platform.
This configuration provides support for an ARM Cortex-M0 CPU and these devices:
* Nested Vectored Interrupt Controller
* TIMER (nRF TIMER System Clock)
.. note::
This board configuration makes no claims about its suitability for use
with an actual nRF51 Microbit hardware system, or any other hardware system.
Hardware
********
Supported Features
==================
The following hardware features are supported:
+--------------+------------+----------------------+
| Interface | Controller | Driver/Component |
+==============+============+======================+
| NVIC | on-chip | nested vectored |
| | | interrupt controller |
+--------------+------------+----------------------+
| nRF | on-chip | serial port |
| UART | | |
+--------------+------------+----------------------+
| nRF TIMER | on-chip | system clock |
+--------------+------------+----------------------+
The kernel currently does not support other hardware features on this platform.
Devices
========
System Clock
------------
This board configuration uses a system clock frequency of 1 MHz.
Serial Port
-----------
This board configuration uses a single serial communication channel with the
CPU's UART0.
Known Problems or Limitations
==============================
The following platform features are unsupported:
* Writing to the hardware's flash memory
Programming and Debugging
*************************
Use this configuration to run basic Zephyr applications and kernel tests in the QEMU
emulated environment, for example, with the :zephyr:code-sample:`synchronization` sample:
.. zephyr-app-commands::
:zephyr-app: samples/synchronization
:host-os: unix
:board: qemu_cortex_m0
:goals: run
This will build an image with the synchronization sample app, boot it using
QEMU, and display the following console output:
.. code-block:: console
***** BOOTING ZEPHYR OS v1.8.99 - BUILD: Jun 27 2017 13:09:26 *****
threadA: Hello World from arm!
threadB: Hello World from arm!
threadA: Hello World from arm!
threadB: Hello World from arm!
threadA: Hello World from arm!
threadB: Hello World from arm!
threadA: Hello World from arm!
threadB: Hello World from arm!
threadA: Hello World from arm!
threadB: Hello World from arm!
Exit QEMU by pressing :kbd:`CTRL+A` :kbd:`x`.
Debugging
=========
Refer to the detailed overview about :ref:`application_debugging`.
Networking
==========
References
**********
1. The Definitive Guide to the ARM Cortex-M0, Second Edition by Joseph Yiu (ISBN
978-0-12-803278-7)
2. ARMv6-M Architecture Technical Reference Manual (ARM DDI 0419D 0403D ID051917)
3. Procedure Call Standard for the ARM Architecture (ARM IHI 0042E, current
through ABI release 2.09, 2012/11/30)
4. Cortex-M0 Revision r2p1 Technical Reference Manual (ARM DDI 0432C ID113009)
5. Cortex-M0 Devices Generic User Guide (ARM DUI 0497A ID112109)
Part 3
한국어 전문 번역
개요
이 board 구성은 QEMU로 BBC Microbit(Nordic nRF51822) platform을 emulation합니다. Arm Cortex-M0 CPU, NVIC, nRF TIMER system clock을 지원합니다.
지원 기능
| 인터페이스 | 컨트롤러 | 드라이버/컴포넌트 |
|---|---|---|
NVIC | on-chip | nested vectored interrupt controller |
nRF UART | on-chip | serial port |
nRF TIMER | on-chip | system clock |
Kernel은 현재 이 platform의 다른 하드웨어 기능을 지원하지 않습니다.
장치
System clock
System clock frequency는 1 MHz입니다.
Serial port
CPU의 UART0 하나를 사용합니다.
알려진 문제와 제한
Hardware flash memory 쓰기를 지원하지 않습니다.
프로그래밍과 디버깅
이 구성은 QEMU emulated environment에서 기본 Zephyr application과 kernel test를 실행할 때 사용합니다. 다음은 synchronization sample 예입니다.
# Unix host의 Zephyr 저장소 루트에서
west build -b qemu_cortex_m0 samples/synchronization -t runImage를 build하고 QEMU로 boot하면 다음 console output이 표시됩니다.
***** BOOTING ZEPHYR OS v1.8.99 - BUILD: Jun 27 2017 13:09:26 *****
threadA: Hello World from arm!
threadB: Hello World from arm!
threadA: Hello World from arm!
threadB: Hello World from arm!
threadA: Hello World from arm!
threadB: Hello World from arm!
threadA: Hello World from arm!
threadB: Hello World from arm!
threadA: Hello World from arm!
threadB: Hello World from arm!Ctrl+A를 누른 뒤 x를 눌러 QEMU를 종료합니다.
Debug
일반 Zephyr application debugging 절차를 따릅니다.
Networking
원문에는 별도의 networking 기능 설명이 없습니다.
참고 자료
- The Definitive Guide to the ARM Cortex-M0, Second Edition, Joseph Yiu, ISBN 978-0-12-803278-7
- ARMv6-M Architecture Technical Reference Manual, ARM DDI 0419D 0403D ID051917
- Procedure Call Standard for the ARM Architecture, ARM IHI 0042E
- Cortex-M0 Revision r2p1 Technical Reference Manual, ARM DDI 0432C ID113009
- Cortex-M0 Devices Generic User Guide, ARM DUI 0497A ID112109
Source
출처
영어 원문에는 문단, 문서 지시문, 표, 코드, 코드 심벌, 경로를 그대로 보존했습니다.