vuart.py

# この作品はMITライセンスの下で提供されています。
# Copyright (c) 2024 OpenMV LLC. 全著作権所有。
# https://github.com/openmv/openmv/blob/master/LICENSE
#
# この例では、デュアルコアマイコンの2つのコア間で通信するOpen-AMPの最も基本的な
# 使い方を示します。この例を実行するには、セカンダリコア用のファームウェアが
# 必要です。テスト用に、セカンダリコア用のデモファームウェアが以下で提供されています:
# https://github.com/iabdalkader/openamp_vuart
# ファームウェアの設定とビルドについては、READMEファイルの手順に従ってください。
#
# 注意: ほとんどのマイコンでは、フルリセットなしにセカンダリコアだけをリセットすることは
# できないため、このスクリプトを実行してから停止すると、ボード全体がリセットされることが
# ありますが、これは正常な動作です。

import openamp
import time


def ept_recv_callback(src_addr, data):
    print("Received message: ", data.decode())


# M4と通信するための新しいRPMsgエンドポイントを作成します。
ept = openamp.Endpoint("vuart-channel", callback=ept_recv_callback)

# remoteprocオブジェクトを作成し、ファームウェアをロードして起動します。リモートコアは
# ファームウェアがフラッシュ上に存在すれば、そのエントリポイント(例: 0x081E0000)からも起動できます。
# rproc = openamp.RProc(0x08180000)
rproc = openamp.RemoteProc("vuart.elf")
rproc.start()

count = 0
while True:
    if ept.is_ready():
        ept.send("Hello World %d!" % count, timeout=1000)
        count += 1
    time.sleep_ms(1000)

results matching ""

    No results matching ""