91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

用于VR編程的NVIDIA SMP Assist API

設計idea ? 來源:互聯(lián)網(wǎng) ? 作者:佚名 ? 2018-05-07 10:10 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

NVIDIA SMP(同時多投影)輔助NVAPI驅動程序擴展是一種將多分辨率著色和鏡頭匹配著色集成到VR應用程序中的簡單方法。它將大量的狀態(tài)設置和API調用封裝到簡化的API中,從而大大降低了將NVIDIAVRWorks集成到應用程序中的復雜性。具體來說,SMP Assist驅動程序處理創(chuàng)建和管理快速幾何著色器,視口狀態(tài)和剪刀狀態(tài),而不是在應用程序中手動管理這些狀態(tài)。

簡化多分辨率和鏡頭匹配陰影

在VR頭戴式耳機中,用戶通常通過引起枕形失真的透鏡來觀看顯示器。虛擬現(xiàn)實應用渲染桶形失真圖像以反轉鏡頭本身的枕形失真,從而在頭戴式耳機中形成幾何上正確的場景。桶形失真圖像的周邊區(qū)域顯著收縮。NVIDIA VRWorks SDK包含多分辨率著色鏡頭匹配著色等功能,允許應用程序開發(fā)人員利用桶形失真圖像的非線性優(yōu)勢,減少渲染幀時所需的像素著色工作負載,同時保持視覺質量。

如圖1所示,多分辨率著色(MRS)使用多個視口與剪刀矩形組合,以創(chuàng)建多分辨率投影。每個視口內的分辨率保持不變,而分辨率在不同的視口中變化。它們的排列方式可以使視口一起呈現(xiàn)場景的一個復雜的無縫投影。中央視口通常具有比周邊視口更高的分辨率,從而更好地匹配桶失真圖像并節(jié)省不必要的像素著色工作量。

圖1:多分辨率陰影

鏡頭匹配陰影(LMS)使用多個視口結合剪形矩形和線性變換來創(chuàng)建鏡頭匹配投影,如圖2所示。在鏡頭匹配投影中,三角形頂點在被下列光柵化之前進行變換轉型:

w'= w + Ax + By

從概念上講,這會在透視投影之前縮放剪輯空間中頂點的“w”坐標。頂點的剪輯空間“w”坐標可以作為“x”和“y”坐標的函數(shù)來偏移,這導致頂點被拉向視口的中心,其“x”和“y” “坐標是。仔細選擇幀的四個象限中的每一個的系數(shù)A和B產生類似桶形失真的變形圖像。

圖2:鏡頭匹配陰影

這些功能中的每一個都需要應用程序根據(jù)所需的效果計算多個視口和剪刀。此外,對于透鏡匹配著色,應用程序必須指定系數(shù)(上面公式中的A和B)。應用程序必須確保通過在圖形管道中設置快速幾何著色器(Fast Geometry Shader,F(xiàn)astGS)來正確渲染場景。該著色器通過計算視口掩碼來剔除三角形并將其廣播到正確的視口。

全新的NVIDIA SMP Assist API實現(xiàn)了驅動程序中的所有這些步驟,并為應用程序提供了簡化的API,使MRS和LMS更容易集成到應用程序或游戲引擎中。

NVIDIA SMP Assist API

當前可用于DirectX11應用程序的SMP Assist API為應用程序提供了一個接口,用于指定VR應用程序使用的MRS / LMS配置。基于此配置,驅動程序在內部執(zhí)行以下任務:

  1. 計算視口和剪刀。

  2. 創(chuàng)建一個FastGS,它將基元選取并投影到正確的視口中,以匹配需要在投影和未投影的坐標空間之間轉換的著色器所需的常量緩沖區(qū)數(shù)據(jù)。

  3. 計算鏡頭匹配陰影系數(shù)(如果適用)。

  4. 驅動程序計算并維護各種渲染模式的上述狀態(tài) - 單聲道,立體聲,實例化立體聲。(立體和立體渲染模式的計算假定應用程序在并排配置中渲染,即在單個渲染目標上渲染的兩個眼圖)。

應用程序可以根據(jù)實現(xiàn)的易用性與靈活性的折衷來選擇協(xié)助級別

  • 完整:應用程序通過從預先配置的列表中選擇一個配置來指定配置,該列表針對當前可用的VR HMD進行了微調

  • 部分:應用程序通過提供單個配置參數(shù)來指定配置,這對于支持新的或預生產VR頭戴式顯示器可能有用。

  • 最小化:應用程序提供視口和剪刀,API處理相同的設置,而應用程序負責設置FastGS,GS常量緩沖區(qū)和LMS系數(shù)。

使用SMP Assist非常簡單。只要MRS / LMS投影配置發(fā)生變化,應用程序就會調用API,最多每幀應該發(fā)生一次。然后,應用程序為需要應用MRS / LMS投影的框架部分啟用SMP Assist。在隨后的繪制調用中,驅動程序選擇并設置上面1,2和3中描述的狀態(tài)的適當版本,從而覆蓋應用程序設置的視口和剪刀。禁用SMP Assist時,驅動程序會將其覆蓋到原始狀態(tài)的任何狀態(tài)恢復為原始狀態(tài),并且以下繪制調用將使用通過常規(guī)DirectX API設置的狀態(tài)。

該API還提供了獲取內部計算數(shù)據(jù)的功能。這些數(shù)據(jù)可用于放大通過MRS / LMS渲染的圖像。

圖3突出顯示了當前由應用程序執(zhí)行并由SMP Assist API內部化的任務:

SMP輔助API圖VRWorks VR圖3. SMP Assist API圖

使用SMP Assist API

初始化SMP輔助

通過查詢所需SMP功能(MRS / LMS)的平臺支持,獲取指向SMP Assist接口的指針以及使用此接口指針指定所需的配置(rendertarget大小等),可以初始化SMP Assist API。

NV_QUERY_SMP_ASSIST_SUPPORT_PARAMSQuerySMPAssist={0};QuerySMPAssist.version=NV_QUERY_SMP_ASSIST_SUPPORT_PARAMS_VER;QuerySMPAssist.eSMPAssistLevel=NV_SMP_ASSIST_LEVEL_FULL;QuerySMPAssist.eSMPAssistType=NV_SMP_ASSIST_LMS;NvStatus=NvAPI_D3D_QuerySMPAssistSupport(pD3DDevice,&QuerySMPAssist);if(NvStatus!=NVAPI_OK||QuerySMPAssist.bSMPAssistSupported==false){
//查詢失敗}NV_SMP_ASSIST_INITIALIZE_PARAMSinitParams={0};ID3DNvSMPAssist*pD3DNvSMPAssist=NULL;initParams.version=NV_SMP_ASSIST_INITIALIZE_PARAMS_VER;initParams.eSMPAssistType=NV_SMP_ASSIST_LMS;initParams.eSMPAssistLevel=NV_SMP_ASSIST_LEVEL_FULL;initParams.flags=NV_SMP_ASSIST_FLAGS_DEFAULT;initParams.ppD3DNvSMPAssist=&pD3DNvSMPAssist;NvStatus=NvAPI_D3D_InitializeSMPAssist(pD3DDevice,&initParams);if(NvStatus!=NVAPI_OK||pD3DNvSMPAssist==NULL){
//NvAPI_D3D_InitializeSMPAssist失敗}NV_SMP_ASSIST_SETUP_PARAMSsetupParams={0};setupParams.version=NV_SMP_ASSIST_SETUP_PARAMS_VER;setupParams.eLMSConfig=NV_LMS_CONFIG_OCULUSRIFT_CV1_BALANCED;setupParams.resolutionScale=1.0f;setupParams.boundingBox.TopLeftX=0;setupParams.boundingBox.TopLeftY=0;setupParams.boundingBox.Width=rt_width;setupParams.boundingBox.Height=rt_height;setupParams.boundingBox.MinDepth=0.0;setupParams.boundingBox.MaxDepth=1.0;NvStatus=pD3DNvSMPAssist->SetupProjections(pD3DDevice,&setupParams);

返回的SMP Assist接口對象NvAPI_D3D_InitializeSMPAssist是一個單例。對NvAPI_D3D_InitializeSMPAssist的任何后續(xù)調用都會返回一個指向同一對象的指針。該對象由驅動程序響應NvAPI_D3D_InitializeSMPAssist應用程序的第一個調用而創(chuàng)建。驅動程序在應用程序退出時銷毀對象。應用程序不應試圖破壞對象。

用SMP輔助渲染

應用程序應該指出在渲染幀時是否要為即將來臨的繪圖調用啟用/禁用SMP功能。因此,API設置適用于所有后續(xù)繪制調用的渲染狀態(tài)(視口,剪刀,F(xiàn)astGS,LMS系數(shù))

NV_SMP_ASSIST_ENABLE_PARAMSenableParams={NV_SMP_ASSIST_ENABLE_PARAMS_VER,NV_SMP_ASSIST_EYE_INDEX_MONO};NV_SMP_ASSIST_DISABLE_PARAMSdisableParams={NV_SMP_ASSIST_DISABLE_PARAMS_VER};而(…){
...
NvStatus=pD3DNvSMPAssist->啟用(pD3DContext,&enableParams);
畫();//在啟用后,投影應用于所有繪圖調用
畫();
...
NvStatus=pD3DNvSMPAssist->Disable(pD3DContext,&disableParams);
畫();//投影不適用于Disable后的任何繪圖調用}

獲取SMP輔助數(shù)據(jù)

應用程序調用ID3DNvSMPAssist::GetConstants在初始化期間讀取由API計算的數(shù)據(jù)。這包括用于指定VR渲染模式的視口/剪刀,F(xiàn)astGS常量緩沖區(qū)數(shù)據(jù),投影大小和可用于展平通過的其他常數(shù)緩沖區(qū)數(shù)據(jù)。

NV_SMP_ASSIST_GET_CONSTANTSsmpAssistConstants={0};D3D11_VIEWPORT視口[NV_SMP_ASSIST_MAX_VIEWPORTS];D3D11_RECT剪刀[NV_SMP_ASSIST_MAX_VIEWPORTS];memset(視口,0,NV_SMP_ASSIST_MAX_VIEWPORTS*sizeof(D3D11_VIEWPORT));memset(剪刀,0,NV_SMP_ASSIST_MAX_VIEWPORTS*sizeof(D3D11_RECT));NV_SMP_ASSIST_FASTGSCBDATAfastGSCBData={0};NV_SMP_ASSIST_REMAPCBDATAremapCBData={0};smpAssistConstants.version=NV_SMP_ASSIST_GET_CONSTANTS_VER;smpAssistConstants.pViewports=viewports;smpAssistConstants.pScissors=剪刀;smpAssistConstants.eEyeIndex=NV_SMP_ASSIST_EYE_INDEX_MONO;smpAssistConstants.pFastGSCBData=&fastGSCBData;smpAssistConstants.pRemapCBData=&remapCBData;NvStatus=pD3DNvSMPAssist->GetConstants(&smpAssistConstants);

實例化立體聲注意事項

提供眼睛指數(shù)

由驅動程序設置的FastGS需要知道當應用程序以實例化立體模式呈現(xiàn)時,當前著色器實例是渲染左眼還是右眼。

VR應用程序必須確保世界空間著色器(Vertex / Hull / Domain)正確地將當前眼圖(eyeIndex)傳遞給FastGS。應用程序還應該通過NvAPI_D3D11_CreateVertexShaderEx/創(chuàng)建最后的世界空間著色器(頂點/域),NvAPI_D3D11_CreateDomainShaderEx并指示眼睛索引變量是NvAPI_Packed_Eye_Index自定義語義。SMP Assist要求眼圖索引變量是一個標量。

NvAPI_D3D11_CREATE_VERTEX_SHADER_EXCreateVSExArgs={0};CreateVSExArgs.version=NVAPI_D3D11_CREATEVERTEXSHADEREX_VERSION;CreateVSExArgs.UseWithFastGS=true;CreateVSExArgs.UseSpecificShaderExt=false;CreateVSExArgs.NumCustomSemantics=1;CreateVSExArgs.pCustomSemantics=(NV_CUSTOM_SEMANTIC*)malloc((sizeof(NV_CUSTOM_SEMANTIC))*CreateVSExArgs.NumCustomSemantics);memset(CreateVSExArgs.pCustomSemantics,0,(sizeof(NV_CUSTOM_SEMANTIC))*CreateVSExArgs.NumCustomSemantics);CreateVSExArgs.pCustomSemantics[0].version=NV_CUSTOM_SEMANTIC_VERSION;CreateVSExArgs.pCustomSemantics[0].NVCustomSemanticType=NV_PACKED_EYE_INDEX_SEMANTIC;strcpy_s(&(CreateVSExArgs.pCustomSemantics[0].NVCustomSemanticNameString[0]),NVAPI_LONG_STRING_MAX,“EYE_INDEX”);NvStatus=NvAPI_D3D11_CreateVertexShaderEx(pD3DDevice,pVSBlob->GetBufferPointer(),pVSBlob->GetBufferSize(),NULL,&CreateVSExArgs,&pVertexShaderInstancedStereo);

不要忘記著色器HLSL文件:

結構VS_OUTPUT{
...
uinteyeIndex:EYE_INDEX;};

如果您希望FastGS將當前實例渲染到左眼,請將eyeIndex的LSB設置為0。否則,F(xiàn)astGS將渲染到右眼。

避免著色器修改

實例立體渲染涉及根據(jù)在當前著色器實例中呈現(xiàn)的眼睛視圖來移位頂點。但是,LMS要求應用程序不執(zhí)行這種頂點移動。這意味著應用程序可能必須修改頂點著色器,以確保在LMS情況下頂點不會移位。

SMP Assist提供了一個API,UpdateInstancedStereoData可用于撤銷應用程序著色器代碼執(zhí)行的頂點移位。該應用程序不需要修改上述LMS特定要求的著色器代碼。應用程序只需提供正確的系數(shù)給這個API。這些系數(shù)將用于實現(xiàn)該公式以逆轉由應用程序的著色器代碼完成的頂點移動。

考慮以下頂點著色器片段:

VSOutput主(在頂點i_vtx中,在uint中i_instance:SV_InstanceID,...){...
#ifSTEREO_MODE==STEREO_MODE_INSTANCED
uinteyeIndex=i_instance&1;
output.eyeIndex=eyeIndex;
output.posClip=mul(pos,eyeIndex==0?g_matWorldToClip:g_matWorldToClipR);
//將幾何圖形移動到正確的眼睛
output.posClip.x*=0.5;
floateyeOffsetScale=eyeIndex==0?-0.5:0.5;
output.posClip.x+=eyeOffsetScale*output.posClip.w;
...}

在上面的著色器中完成逆轉頂點移動的公式是:

output.posClip.x = (output.posClip.x - eyeOffsetScale * output.posClip.w ) / 0.5 =2.0 * output.posClip.x + (-eyeOffsetScale * 2.0) * output.posClip.w

左眼:

output.posClip.x = 2.0 * output.posClip.x + 1.0 * output.posClip.w = dotproduct( output.posClip, float4(2.0, 0.0, 0.0, 1.0))

右眼:

output.posClip.x = 2.0 * output.posClip.x - 1.0 * output.posClip.w = dotproduct(output.posClip, float4(2.0, 0.0, 0.0, -1.0))

左/右眼視圖x分量的方程可以看作頂點位置和大小為4的向量之間的點積。

由SMP Assist實施的等式每個眼睛視圖有5個值:具有頂點位置的點積的4個系數(shù)和添加到點積的結果的第5個值。

NV_SMP_ASSIST_UPDATE_INSTANCEDSTEREO_DATA_PARAMSinstancedStereoParams={0};instancedStereoParams.version=NV_SMP_ASSIST_UPDATE_INSTANCEDSTEREO_DATA_PARAMS_VER;instancedStereoParams.eSMPAssistType=NV_SMP_ASSIST_LMS;//左眼:pos.x=dotproduct(pos,leftCoeffs)+leftConstinstancedStereoParams.leftCoeffs[0]=2.0f;instancedStereoParams.leftCoeffs[1]=0.0f;instancedStereoParams.leftCoeffs[2]=0.0f;instancedStereoParams.leftCoeffs[3]=1.0f;instancedStereoParams.leftConst=0.0f;//右眼:pos.x=dotproduct(pos,rightCoeffs)+rightConstinstancedStereoParams.rightCoeffs[0]=2.0f;instancedStereoParams.rightCoeffs[1]=0.0f;instancedStereoParams.rightCoeffs[2]=0.0f;instancedStereoParams.rightCoeffs[3]=-1.0f;instancedStereoParams.rightConst=0.0f;status=m_activeSMPAssist->UpdateInstancedStereoData(m_pDevice,&instancedStereoParams);

應用程序應UpdateInstancedStereoData在SMP Assist成功初始化后調用

更容易的VR編程

NVIDIA驅動程序內置的SMP Assist API使開發(fā)人員能夠更輕松地實現(xiàn)多分辨率著色和鏡頭匹配著色,這些關鍵功能使虛擬現(xiàn)實更易于使用和用戶友好。如果您目前不是NVIDIA開發(fā)人員并想查看VRWorks,注冊非常簡單 - 只需點擊NVIDIA開發(fā)者主頁上方的“加入”按鈕即可SMP Assist API需要NVIDIA顯卡驅動程序版本397.31及更高版本。最新的VRWorks Graphics SDK 2.6版本包含一個示例應用程序和編程指南,如果您已經擁有NVIDIA開發(fā)人員帳戶,則可以通過SMP Assist進行演示。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權轉載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • NVIDIA
    +關注

    關注

    14

    文章

    5592

    瀏覽量

    109722
  • vr
    vr
    +關注

    關注

    34

    文章

    9694

    瀏覽量

    157228
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    借助NVIDIA CUDA Tile IR后端推進OpenAI Triton的GPU編程

    NVIDIA CUDA Tile 是基于 GPU 的編程模型,其設計目標是為 NVIDIA Tensor Cores 提供可移植性,從而釋放 GPU 的極限性能。CUDA Tile 的一大優(yōu)勢是允許開發(fā)者基于其構建自定義的 DS
    的頭像 發(fā)表于 02-10 10:31 ?240次閱讀

    八通道采樣保持器SMP18:設計與應用全解析

    八通道采樣保持器SMP18:設計與應用全解析 在電子工程師的日常工作中,采樣保持器是一種常見且關鍵的器件。今天我們就來深入探討一款高性能的八通道采樣保持器——SMP18。 文件下載
    的頭像 發(fā)表于 01-12 09:45 ?256次閱讀

    在Python中借助NVIDIA CUDA Tile簡化GPU編程

    NVIDIA CUDA 13.1 版本新增了基于 Tile 的GPU 編程模式。它是自 CUDA 發(fā)明以來 GPU 編程最核心的更新之一。借助 GPU tile kernels,可以用比 SIMT
    的頭像 發(fā)表于 12-13 10:12 ?1191次閱讀
    在Python中借助<b class='flag-5'>NVIDIA</b> CUDA Tile簡化GPU<b class='flag-5'>編程</b>

    SMP-MAX系列射頻連接器技術解析與應用指南

    安裝選項配置。2.7GHz時,高達300W以上的高額定功率為射頻放大器提供了出色的性能。Molex SMP-MAX和SMP-MAX EVO 50Ω 射頻連接器適用于各種電信和網(wǎng)絡應用,包括基站、無線電頭端、中繼器和系統(tǒng)模塊。
    的頭像 發(fā)表于 11-20 15:56 ?538次閱讀

    1688平臺獲取店鋪所有商品列表API接口技術詳解

    ? 在電商開發(fā)中,集成1688平臺的API是獲取店鋪商品數(shù)據(jù)的關鍵。1688是阿里巴巴旗下的B2B批發(fā)平臺,其API接口允許開發(fā)者通過編程方式訪問店鋪的商品列表,用于數(shù)據(jù)分析、庫存管理
    的頭像 發(fā)表于 11-11 14:04 ?527次閱讀
    1688平臺獲取店鋪所有商品列表<b class='flag-5'>API</b>接口技術詳解

    教你如何使用API

    一、了解API API(Application Programming Interface)即應用程序編程接口,是一種使不同的應用程序能共享數(shù)據(jù)和功能的軟件工具。API可以通過網(wǎng)絡、軟
    的頭像 發(fā)表于 11-09 17:48 ?1302次閱讀

    教你如何使用API接口獲取數(shù)據(jù)!

    一、了解API API(Application Programming Interface)即應用程序編程接口,是一種使不同的應用程序能共享數(shù)據(jù)和功能的軟件工具。API可以通過網(wǎng)絡、軟
    的頭像 發(fā)表于 11-03 09:14 ?583次閱讀

    請問什么是API?怎么使用它?

    什么是API? API(應用程序編程接口)是一組定義了不同軟件組件之間如何通信的規(guī)則和協(xié)議。它允許不同的應用程序、服務、庫和系統(tǒng)通過標準化的方式進行交互,從而實現(xiàn)數(shù)據(jù)交換和功能共享。API
    的頭像 發(fā)表于 10-24 11:37 ?839次閱讀

    NVIDIA Omniverse Extension開發(fā)秘籍

    NVIDIA Omniverse 是一個模塊化平臺,使用高級 API 和微服務來構建由 OpenUSD 和 NVIDIA RTX 提供支持的 3D 應用。OpenUSD 功能強大的 3D 框架與
    的頭像 發(fā)表于 08-22 15:52 ?3715次閱讀
    <b class='flag-5'>NVIDIA</b> Omniverse Extension開發(fā)秘籍

    超過175款游戲和應用現(xiàn)已支持NVIDIA DLSS 4

    超過 175 款游戲和應用現(xiàn)已支持 DLSS 4,包括《生化危機:安魂曲》(Resident Evil Requiem)、《影之刃零》(Phantom Blade Zero)等支持光線追蹤的大作,升級的 NVIDIA RTX Remix、Project G-Assist
    的頭像 發(fā)表于 08-20 14:26 ?1374次閱讀

    產品下架與刪除API接口

    ? 在現(xiàn)代電子商務和產品管理系統(tǒng)中,API接口是實現(xiàn)高效操作的核心工具。產品下架與刪除API接口允許管理員或系統(tǒng)通過編程方式管理產品狀態(tài),確保數(shù)據(jù)一致性和安全性。本文將逐步介紹這兩個API
    的頭像 發(fā)表于 07-25 14:15 ?509次閱讀
    產品下架與刪除<b class='flag-5'>API</b>接口

    產品列表獲取API接口詳解

    ? 在現(xiàn)代軟件開發(fā)中,API(應用程序編程接口)是獲取產品列表的核心工具,它允許開發(fā)者從遠程服務器高效地檢索數(shù)據(jù)。本文將逐步介紹如何設計和使用產品列表獲取API接口,包括核心概念、實現(xiàn)步驟、代碼示例
    的頭像 發(fā)表于 07-24 14:29 ?724次閱讀
    產品列表獲取<b class='flag-5'>API</b>接口詳解

    如何通過 WICED API 讀取固件中編程的 BD 地址?

    /Studio-Bluetooth/WICED-Module-Programmer-Download/td-p/290595我想知道如何通過 WICED API 讀取固件中編程的 BD 地址
    發(fā)表于 07-03 07:49

    NVIDIA Omniverse Kit 107的安裝部署步驟

    NVIDIA Omniverse 是一個模塊化平臺,使用高級 API 和微服務來構建由 OpenUSD 和 NVIDIA RTX 提供支持的 3D 應用。OpenUSD 功能強大的 3D 框架與
    的頭像 發(fā)表于 03-28 10:37 ?1525次閱讀
    <b class='flag-5'>NVIDIA</b> Omniverse Kit 107的安裝部署步驟

    如何使用MCX N ROM API進行內部閃存擦除/編程

    使用 MCX N ROM API 進行內部閃存擦除/編程
    發(fā)表于 03-27 07:04