2020-06-07 PYNQ-Z1 > Pmod_ADCを試した > Pmod_ADC(2)でエラー > ライブラリがpynq.iopからpynq.libに変更されて、使い方も変わった


動作環境
Windows 10 Pro (v1909) 
PYNQ-Z1 (Digilent) (以下、PYNQと表記)
Vivado v2019.1 (64-bit)

Pmod_ADC(2) => エラー

Pmod_ADCを使った例が下記にある (二つ目のIn [4]の例)。
http://xph.necst.it/2017/hardware/sensors-cheatsheet.html

pynq.iopで実装しているが、最新版ではpynq.libに変更する必要がある。
pmod_adc.read()まで試したところ、下記のエラーとなった。

TypeError: 'int' object is not subscriptable

別の参考例 > pynq.libで実装

こちらの方はpynq.libで実装している。
試してみた。

from pynq.overlays.base import BaseOverlay
from pynq.lib.pmod import Pmod_ADC
import time
import matplotlib.pyplot as plt

base = BaseOverlay("base.bit")
#pmod_adc = Pmod_ADC(2)
pmod_adc = Pmod_ADC(base.PMODA)
value = pmod_adc.read(0)
print("Current voltage: " + str(value) + "V")
Current voltage: []V

まだ値は取れていないが、Pmod_ADC()の使う部分は成功した。

関連