ZHCUA70B February 2021 – April 2022 LDC3114 , LDC3114-Q1
計(jì)算機(jī)也可以通過(guò) USB 與 EVM 直接通信。EVM 經(jīng)過(guò)編程,可接受一些命令,從而實(shí)現(xiàn)寄存器訪問。主要的兩個(gè)命令是使用“rreg”讀取寄存器或使用“wreg”寫入寄存器。寄存器讀取命令將所需的寄存器地址作為參數(shù),并返回寄存器地址編號(hào)、寄存器值(十進(jìn)制)和 EVM 狀態(tài)的確認(rèn)。寄存器寫入命令將寄存器的地址和值作為兩個(gè)單獨(dú)輸入(十六進(jìn)制格式)。寫入命令在執(zhí)行后會(huì)返回確認(rèn)以及 EVM 狀態(tài)。盡管參數(shù)必須為十六進(jìn)制格式,但它們有一些不同選項(xiàng)。它們可以包含“0x”前綴,也可以不包含,但“x”必須始終為小寫。下面的示例顯示了讀取寄存器地址 0x04 的不同方式:
rreg 4
rreg 04
rreg 0x04
STATUS 寄存器(地址 0x00)的一個(gè)寄存器讀取示例是發(fā)出“rreg 00”命令。執(zhí)行此命令后收到的確認(rèn)如下所示:
{"acknowledge":"rreg 00"}
{"register":{"address":0,"value":64}}
{"evm_state":"idle"}
一個(gè)寄存器寫入命令的示例是發(fā)出“wreg 0A 01”,這會(huì)將值 0x01 寫入器件的 RESET 寄存器。執(zhí)行此命令后收到的確認(rèn)如下所示:
{"acknowledge":"wreg 0A 01"}
{"console":"Writing 0x0001 to RESET register"}
{"evm_state":"idle"}
對(duì)器件進(jìn)行完全寄存器訪問可以使用與此相同的語(yǔ)法。值得注意的是,數(shù)據(jù)寄存器(地址 0x02 至 0x08 用于按鈕算法,0x59 至 0x64 用于原始數(shù)據(jù))已在命令中進(jìn)行組合,因此只需要使用全部通道中第一個(gè)通道的數(shù)據(jù)便可獲取數(shù)據(jù)。例如,若要從通道 0 獲取原始數(shù)據(jù),命令“rreg 59”將會(huì)抓取所有三個(gè)數(shù)據(jù)寄存器并將它們正確組合,然后以十進(jìn)制格式將值返回。