DAVE™ SDK Device Explorer
DAVE™ SDK Device Explorer是一個可以讓你在開發APP過程中快速查找設備信息的有用工具。它是一個單片機Datasheet的補充,你可以用它查找單片機的外設,管腳,包,來根據它來給出Manifest中resource
group,信號,寄存器位字段的設置。
你可以通過Window → Open Perspective → Other → DeviceExplorer 找到Device Explorer的視圖. 打開視圖後你要選擇一種器件型號,接下來你會看到下面出現關於外設的這一欄目:
之後你可以查找任何一個在這些類別中的resource group 。舉例來說,如果我們需要尋找一片CC4 在CCU4的Resource group中,爲了知道它的位字段和提供的信號,我們可以如下面方式進行:
在這個例子裏,我們只需要按下“CCU40”界面就會自動刷新,接下去我們單擊“cc4/0”就會看到對應的片的位子段和信號。就如你所看到的,我們可以展開“cc4/0”它的resource group的URI 會在列表中出現。我們就可以把它複製下來用在manifest裏。你也許知道,在單片機裏有很多重複的硬件資源,我們使用APP的真正目的是不用去關心特定的硬件資源就可以充分利用它們。爲了達到這一目的,我們用“*”或是solver的變量來替代固定的數字。用solver變量的好處是我們可以給它加條件約束在solver分配後可以訪問它的值。
// Begin : User APP property section
MVirtualResourceGroup rg_example_resource_group
SolverVariable sv_group
// End : User APP property section
// App Constructor
public APP_NAME(DaveEnv daveEnv) {
sv_group = SolverVariable()
addUriElementRangeConstraint(sv_group, [0,1]) // Only allows groups 0and 1
rg_example_resource_group = MVirtualResourceGroup("Displayname", ["ccu4", sv_group, "cc4", "*"])
在manifest中定義期望的resource group之後,你可以看到你定義的虛擬信號和訪問位字段。
虛擬信號可以根據實際情況被其他信號所連接。連接的可能性能在Connect To 和Connect From 表中看到:
你也可以通過manifest 和templates文件來訪問寄存器和寄存器的位字段。黑色字體的位字段可以被APP開發者所更改,但紅色標註的寄存器只能根據APP用戶的配置被solver自動分配。(e.g. 一個寄存器可以控制多路選擇器來控制兩信號的連接)。你可以在"Registers/Bit-Fields"看到寄存器包含的位字段:
想從寄存器返回值可以用:
MVirtualResourceGroup.getRegValue()
MVirtualResourceGroup.getRegOwnershipMask()
addRegisterBitFieldConstraint()
正確訪問寄存器CCR中的HPCEN的方法是:
// Manifest code
// Begin : User APP property section
MVirtualResourceGroup usic_channel
// End : User APP property section
// APP Constructor
public TEST(DaveEnv daveEnv) {
usic_channel = MVirtualResourceGroup("USIC Channel",["peripheral","usic","*","channel","*"])
}
--------------------------------------------------------------------
// Template code
for(def app : appInstancesList)
{
defHPCEN = app.usic_channel.getRegValue("ccr", "ccr_hpcen")
}