7018|32

70

帖子

0

TA的资源

一粒金砂(初级)

楼主
 

是否请问在EVC中如何使用Directx [复制链接]

我想在EVC中使用Directx,请高手指点一下整个过程以及需要注意得地方。

最新回复

//下面的代码是从网上看见的,但是 hr   =   CoCreateInstance(CLSID_AMMultiMediaStream,   NULL, CLSCTX_INPROC_SERVER,   IID_IAMMultiMediaStream,   (void   **)&pAMStream); hr返回结果是失败,不知道对应的ax文件是哪个,请指教 这个问题怎么解决?  详情 回复 发表于 2010-3-16 16:15
点赞 关注

回复
举报

71

帖子

0

TA的资源

一粒金砂(初级)

沙发
 
可以的

但真正决定能否使用它的是SDK。
 
 

回复

71

帖子

0

TA的资源

一粒金砂(初级)

板凳
 
安装EVC的时候的标准SDK里面为什么没有ddraw.lib和dsound.lib
 
 
 

回复

65

帖子

0

TA的资源

一粒金砂(初级)

4
 
程序进行链接的时候出错:
Deleting intermediate files and output files for project 'eeee - Win32 (WCE emulator) Debug'.
--------------------Configuration: eeee - Win32 (WCE emulator) Debug--------------------
Compiling resources...
Compiling...
StdAfx.cpp
Compiling...
eeee.cpp
Linking...
eeee.obj : error LNK2001: unresolved external symbol _IID_IDirectDraw4
ddraw.lib(ddclnt.obj) : error LNK2001: unresolved external symbol _IID_IDirectDraw4
ddraw.lib(ddclnt.obj) : error LNK2001: unresolved external symbol _IID_IDirectDrawFactory2
ddraw.lib(ddclnt.obj) : error LNK2001: unresolved external symbol _IID_IDirectDrawClipper
ddraw.lib(ddclnt.obj) : error LNK2001: unresolved external symbol _IID_IDirectDrawVideoPort
ddraw.lib(ddclnt.obj) : error LNK2001: unresolved external symbol _IID_IDDVideoPortContainer
ddraw.lib(ddclnt.obj) : error LNK2001: unresolved external symbol _IID_IDirectDrawColorControl
ddraw.lib(ddclnt.obj) : error LNK2001: unresolved external symbol _IID_IDirectDrawSurface5
ddraw.lib(ddclnt.obj) : error LNK2001: unresolved external symbol _IID_IDirectDrawSurface4
ddraw.lib(ddclnt.obj) : error LNK2001: unresolved external symbol _IID_IDirectDrawSurface3
ddraw.lib(ddclnt.obj) : error LNK2001: unresolved external symbol _IID_IDirectDrawSurface2
ddraw.lib(ddclnt.obj) : error LNK2001: unresolved external symbol _IID_IDirectDrawSurface
ddraw.lib(ddclnt.obj) : error LNK2001: unresolved external symbol _IID_IDirectDrawPalette
ddraw.lib(ddclnt.obj) : error LNK2001: unresolved external symbol _IID_IDirectDraw2
ddraw.lib(ddclnt.obj) : error LNK2001: unresolved external symbol _IID_IDirectDraw
ddraw.lib(ddclnt.obj) : error LNK2001: unresolved external symbol _IID_IUnknown
emulatorDbg/eeee.exe : fatal error LNK1120: 15 unresolved externals
 
 
 

回复

71

帖子

0

TA的资源

一粒金砂(初级)

5
 
我现在用的是platform安装中的ddraw.lib
 
 
 

回复

80

帖子

0

TA的资源

一粒金砂(初级)

6
 
我也想使用,暂时还没找到好的方法啊。你有个可以共享啊
 
 
 

回复

81

帖子

0

TA的资源

一粒金砂(初级)

7
 
标准的SDK不能用,就只能通过Platform Builder定制SDK。
 
 
 

回复

58

帖子

0

TA的资源

一粒金砂(初级)

8
 
现在我自己用PB定制了一个SDK,使用EVC开发出来的程序能够下载到买的开发平台上,但是却不能进行远程调试,一按F5就出错,错误信息为:
could not find remote debugger component ont the device
debugging cannot continue
这个意思是说在我得远程设备上没有调试期组件,请问如何解决,是不是操作系统镜像有问题?
请高手指点啊,我做项目急需啊,先谢谢了。
 
 
 

回复

65

帖子

0

TA的资源

一粒金砂(初级)

9
 
我现在把程序下载到我的平台上运行,调用DirectDrawCreate发生错误,错误代码是887600de,这个错误好像是:No DirectDraw surport,不支持DirectDraw,请问这是为什么,是不是我的操作系统镜像有问题,没有加入directx方面的东西啊,神啊,救救我吧!!!!!!!!!!!!
 
 
 

回复

64

帖子

0

TA的资源

一粒金砂(中级)

10
 

HINSTANCE   pDD=NULL;
//自己加载ddraw.dll
pDD=LoadLibrary(_T("ddraw.dll"));


typedef LONG (*DIRECTDRAWCREATE)(LPGUID, LPDIRECTDRAW*, LPUNKNOWN *);
DIRECTDRAWCREATE pDirectDrawCreate;

//取得DirectDrawCreate  地址
pDirectDrawCreate=(DIRECTDRAWCREATE)GetProcAddress(pDLL,
_T("DirectDrawCreate"));


LPDIRECTDRAW         pDDObject ;
//调用
hr=pDirectDrawCreate(NULL, &pDDObject, NULL) ;


FreeLibrary();
 
 
 

回复

52

帖子

0

TA的资源

一粒金砂(初级)

11
 
现在使用DirectDrawCreate已经能正确的创建LPDIRECTDRAW4对象了,可是在使用CreateSurface创建前缓冲的时候发生了错误,错误是DDERR_NOFLIPHW,也就是Display driver doesn't support flipping surfaces,我理解是显示驱动不支持flipping surfac,请问如何解决这个错误?我创建前缓冲的代码如下:

//创建前后缓冲
bool CreateFrontBackBuffer()
{
    CString cs;
    HRESULT DDError;
    DDSURFACEDESC2 ddsd;

    if(g_pDD == NULL)
        return false;
    memset(&ddsd, 0, sizeof(ddsd));
    ddsd.dwSize = sizeof(ddsd);
    ddsd.dwFlags = DDSD_CAPS;
    ddsd.ddsCaps.dwCaps = DDSCAPS_PRIMARYSURFACE;
    if(FULLSCREEN)
    {
        ddsd.dwFlags |= DDSD_BACKBUFFERCOUNT;
        ddsd.ddsCaps.dwCaps |= DDSCAPS_FLIP | DDSCAPS_COMPLEX;
        ddsd.dwBackBufferCount = 1;
    }
    DDError = g_pDD->CreateSurface(&ddsd, &g_pFrontBuffer, NULL);
    if(DDError == DDERR_NOFLIPHW)
    {
        cs.Format(_T("%s: %x"), _T("DDERR_NOFLIPHW"), DDError);
        AfxMessageBox(cs);
    }
    if(FAILED(DDError))
    {
        cs.Format(_T("%s: %x"), _T("SetDisplayMode"), DDError);
        AfxMessageBox(cs);
         return false;
    }
    if(FULLSCREEN)
    {
        DDSCAPS2 BackBufferCaps;
        memset(&BackBufferCaps, 0, sizeof(BackBufferCaps));
        BackBufferCaps.dwCaps = DDSCAPS_BACKBUFFER;
        DDError = g_pFrontBuffer->GetAttachedSurface(&BackBufferCaps,    BckBuffer);
        if(FAILED(DDError))
        {
                g_pFrontBuffer->Release();
                AfxMessageBox(_T("BackBuffer"));
                return false;
        }
    }
    else
    {
        g_pBackBuffer = CreateSurface(SCREENWIDTH, SCREENHEIGHT);
    }
    return true;
}
 
 
 

回复

68

帖子

0

TA的资源

一粒金砂(初级)

12
 
既然显示驱动不支持。那就表明不是错误,而是你的显示驱动问题。所以该找内核提供商解决了
 
 
 

回复

66

帖子

0

TA的资源

一粒金砂(初级)

13
 
上面的哥们可能是对的,没有想到这个CPU不支持,因为我用的是ARM4啊。
 
 
 

回复

66

帖子

0

TA的资源

一粒金砂(初级)

14
 
自己再顶起,我现在用普通的贴图方式发现速度不符合项目要求,并且在贴图时同时播放mpg或avi文件画面出现停顿现象,但愿有高人指点一下。
 
 
 

回复

82

帖子

0

TA的资源

一粒金砂(初级)

15
 
运行程序报异常
First-chance exception in PaiJi.exe: 0x80000002: DataType Misalignment
图片就贴了一次后出异常,也没法跟踪到具体哪一行代码出错

程序主要代码如下

#include "stdafx.h"
#include "ddraw.h"
#include "DirectDraw.h"

LPDIRECTDRAW g_pDD;
LPDIRECTDRAWSURFACE g_pFrontBuffer;
LPDIRECTDRAWSURFACE g_pBackBuffer;

LPDIRECTDRAWSURFACE g_pBack;
LPDIRECTDRAWSURFACE g_pCar[CARCNT];

SIZE g_BackSize;
SIZE g_CarSize[CARCNT];

RECT g_rcWindow;

DWORD g_dwFillColor;

int g_CarIndex;

//´´½¨LPDIRECTDRAWSURFACE
LPDIRECTDRAWSURFACE DDCreateSurface(int width, int height)
{
        DDSURFACEDESC        ddsd;
        LPDIRECTDRAWSURFACE pdds;

        ZeroMemory( &ddsd, sizeof(ddsd) );
        ddsd.dwSize = sizeof(ddsd);
        ddsd.dwFlags = DDSD_CAPS | DDSD_WIDTH | DDSD_HEIGHT;
        ddsd.ddsCaps.dwCaps = DDSCAPS_OFFSCREENPLAIN;
        ddsd.dwWidth = width;
        ddsd.dwHeight = height;

        if( FAILED(g_pDD->CreateSurface( &ddsd, &pdds, NULL )) )
                return NULL;

        return pdds;
}

//¼ÓÔØͼƬ
LPDIRECTDRAWSURFACE DDLoadBitmap(unsigned short *szBitmap, SIZE *pSize)
{
    HBITMAP                 hbm;
    BITMAP                  bm;
    DDSURFACEDESC                        ddsd;
    LPDIRECTDRAWSURFACE                pdds;

    //
    //  Try to load the bitmap as a resource, if that fails, try it as a file
    //
    hbm = (HBITMAP) SHLoadDIBitmap(szBitmap);
    if (hbm == NULL)
        return NULL;
    //
    // Get size of the bitmap
    //
    GetObject(hbm, sizeof(bm), &bm);
        if(pSize != NULL)
        {
                pSize->cx = bm.bmWidth;
                pSize->cy = bm.bmHeight;
        }
    //
    // Create a DirectDrawSurface for this bitmap
    //
    ZeroMemory(&ddsd, sizeof(ddsd));
    ddsd.dwSize = sizeof(ddsd);
    ddsd.dwFlags = DDSD_CAPS | DDSD_HEIGHT | DDSD_WIDTH;
    ddsd.ddsCaps.dwCaps = DDSCAPS_OFFSCREENPLAIN;
    ddsd.dwWidth = bm.bmWidth;
    ddsd.dwHeight = bm.bmHeight;
    if (g_pDD->CreateSurface(&ddsd, &pdds, NULL) != DD_OK)
        return NULL;
    DDCopyBitmap(pdds, hbm, 0, 0, 0, 0);
    DeleteObject(hbm);

    return pdds;
}

//³õʼ»¯DirectDraw
BOOL DDInit(BOOL bFullScreen, HWND hWnd, RECT rcWindow)
{
        int i;
        HRESULT hr;
        DDSURFACEDESC ddsd;

        g_CarIndex = 0;
        g_pDD = NULL;
        g_pFrontBuffer = NULL;
        g_pBackBuffer = NULL;
        g_pBack = NULL;
        memset(&g_BackSize, 0, sizeof(SIZE));
        for(i = 0; i < CARCNT; i++)
                memset(&g_CarSize, 0, sizeof(SIZE));

        hr = DirectDrawCreate(NULL, &(g_pDD), NULL);
        if(FAILED(hr))
                return FALSE;

        if(bFullScreen)
                g_pDD->SetCooperativeLevel(hWnd, DDSCL_EXCLUSIVE | DDSCL_FULLSCREEN);
        else
                g_pDD->SetCooperativeLevel(hWnd, DDSCL_NORMAL);

        if(bFullScreen)
        {
                if(FAILED(g_pDD->SetDisplayMode(SCREEN_W, SCREEN_H, 16)))
                        return FALSE;
        }
        ZeroMemory(&ddsd, sizeof(ddsd));
        ddsd.dwSize = sizeof(ddsd);
        ddsd.dwFlags = DDSD_CAPS;
        ddsd.ddsCaps.dwCaps = DDSCAPS_PRIMARYSURFACE;
        if(bFullScreen)
        {
                ddsd.dwFlags |= DDSD_BACKBUFFERCOUNT;
                ddsd.ddsCaps.dwCaps |= DDSCAPS_FLIP | DDSCAPS_COMPLEX;
                ddsd.dwBackBufferCount = 1;
        }
        hr = g_pDD->CreateSurface(&ddsd, &(g_pFrontBuffer), NULL);
        if(FAILED(hr))
                return FALSE;

        if(bFullScreen)
        {
                DDSCAPS ddscaps;
                ZeroMemory(&ddscaps, sizeof(ddscaps));
                ddscaps.dwCaps = DDSCAPS_BACKBUFFER;
                g_pFrontBuffer->GetAttachedSurface(&ddscaps, &(g_pBackBuffer));
        }
        else
                g_pBackBuffer = DDCreateSurface(SCREEN_W, SCREEN_H);

        if(!LoadGameBitmaps())
                return FALSE;

        g_dwFillColor = DDColorMatch(g_pBackBuffer, RGB(128,128,128));

        if(!bFullScreen)
        {
                SetWindowPos(hWnd, 0, 0, 0, SCREEN_W, SCREEN_H, SWP_NOMOVE | SWP_NOZORDER);
                rcWindow.right = rcWindow.left + SCREEN_W;
                rcWindow.bottom = rcWindow.top + SCREEN_H;
        }

        return TRUE;
}

void DDClear(RECT *prc, DWORD dwFillColor)
{
        DDBLTFX        ddbfx;

        ZeroMemory(&ddbfx, sizeof(ddbfx));
        ddbfx.dwSize = sizeof(ddbfx);
        ddbfx.dwFillColor = dwFillColor;
        if(g_pDD != NULL)
                g_pBackBuffer->Blt(prc, NULL, NULL, DDBLT_COLORFILL | DDBLT_WAIT, &ddbfx);
}

//»Ö¸´ËùÓеÄSurface
void RestoreSurfaces()
{
        int i;

        g_pBackBuffer->Restore();
        g_pFrontBuffer->Restore();
        g_pBack->Restore();
        for(i = 0; i < CARCNT; i++)
                g_pCar->Restore();

        LoadGameBitmaps();
}

//½«Í¼Æ¬ÌùÔں󻺳åÇøÖÐ
void DrawPicture()
{
        HRESULT hr;

        DDClear(NULL, 0);
        hr = g_pBackBuffer->BltFast(0, 0, g_pBack, NULL, DDBLTFAST_WAIT);
        if(hr == DDERR_SURFACELOST)
                RestoreSurfaces();
        hr = g_pBackBuffer->BltFast(0, 0, g_pCar[g_CarIndex], NULL, DDBLTFAST_WAIT);
        if(hr == DDERR_SURFACELOST)
                RestoreSurfaces();
}

//ͼÏñ·­×ª
void FlipScreen(BOOL bFullScreen, LPRECT rcWindow)
{
        HRESULT hr;

        if(bFullScreen)
                hr = g_pFrontBuffer->Flip(NULL, DDFLIP_WAIT);
        else
                hr = g_pFrontBuffer->Blt(rcWindow, g_pBackBuffer, NULL, DDBLT_WAIT, NULL);
}

////////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////////
//使用
BOOL CPaiJiDlg::OnInitDialog()
{
        CDialog::OnInitDialog();

        // Set the icon for this dialog.  The framework does this automatically
        //  when the application's main window is not a dialog
        SetIcon(m_hIcon, TRUE);                        // Set big icon
        SetIcon(m_hIcon, FALSE);                // Set small icon

        CenterWindow(GetDesktopWindow());        // center to the hpc screen

        // TODO: Add extra initialization here

        g_rcWindow.left = 0;
        g_rcWindow.top = 0;
        DDInit(FULLSCREEN, m_hWnd, g_rcWindow);
        SetTimer(1, 100, NULL);

        return TRUE;  // return TRUE  unless you set the focus to a control
}

void CPaiJiDlg::OnPaint()
{
        CPaintDC dc(this); // device context for painting

        // TODO: Add your message handler code here

        DrawPicture();
        FlipScreen(FULLSCREEN, NULL);

        // Do not call CDialog::OnPaint() for painting messages
}

void CPaiJiDlg::OnTimer(UINT nIDEvent)
{
        // TODO: Add your message handler code here and/or call default

        if(nIDEvent == 1)
        {
                if(g_CarIndex >= CARCNT - 1)
                        g_CarIndex = 0;
                else
                        g_CarIndex++;
        }

        CDialog::OnTimer(nIDEvent);
}


 
 
 

回复

77

帖子

0

TA的资源

一粒金砂(初级)

16
 
帮顶,打记号~~~
 
 
 

回复

69

帖子

0

TA的资源

一粒金砂(初级)

17
 
这里有几点问题:
1、首先你的操作系统WinCE需要支持DirectDraw,而这个操作系统是由Platform Builder定制出来的,在标准的仿真器里是没有加入DirectDraw控件的。你要用就得找一个包含该组件的平台,或者自己用PB定制一个;
2、你需要用对应刚才定制的平台导出的SDK进行开发,也就是将这个SDK安装在你的开发机上,这样编译出的程序才能正确地在目标机上调试,否则可能会出现平台不匹配等问题。
3、如果调试过程中出现诸如视频错误等问题,可能是驱动的问题,那需要检查一下你的硬件平台第三方提供的BSP包是否正确加载到PB平台并被打包到你的定制平台中。

祝好运!
 
 
 

回复

81

帖子

0

TA的资源

一粒金砂(初级)

18
 
使用DirectDraw的问题已解决,新的问题又来了

我开发一个游戏,采取独占模式,想在DIRECTDRAWSURFACE表面开辟一块区域用于播放视频,现在是没有办法看见视频播放的画面,
但是如果我把DirectDraw相关的代码去掉,只保留播放视频的代码,视频是能够正常播放的。另外请教高手知道如何使用MediaPlayer控件来进行播放。

主要代码如下:

CoInitialize(NULL);

//初始化DirectDraw等
DDInit(m_hWnd);

//绘制游戏画面
DrawGameBackGrond();
FlipScreen(FULLSCREEN, NULL);

HWND hWnd;
//获取STATIC TEXT句柄,播放视频的容器
hWnd = GetDlgItem(IDC_STATIC_MPEG)->m_hWnd;
//播放视频
PlayMovieInWindow(hWnd, L"Picture\\M101.mpg");

//播放视频
void PlayMovieInWindow(HWND hWnd, LPCWSTR FileName)
{
        HRESULT hr;

        // Create the filter graph manager.
    hr = CoCreateInstance(CLSID_FilterGraph, NULL,
                CLSCTX_INPROC_SERVER, IID_IGraphBuilder, (void **)&pGB);

    if(SUCCEEDED(hr))
        {
        // Have the graph construct its the appropriate graph automatically
        pGB->RenderFile(FileName, NULL);

        // QueryInterface for DirectShow interfaces
        pGB->QueryInterface(IID_IMediaControl, (void **)&pMC);
        pGB->QueryInterface(IID_IMediaEventEx, (void **)&pME);
        pGB->QueryInterface(IID_IMediaSeeking, (void **)&pMS);

        // Query for video interfaces, which may not be relevant for audio files
        pGB->QueryInterface(IID_IVideoWindow, (void **)&pVW);
        pGB->QueryInterface(IID_IBasicVideo, (void **)&pBV);

        // Query for audio interfaces, which may not be relevant for video-only files
        pGB->QueryInterface(IID_IBasicAudio, (void **)&pBA);

        // Is this an audio-only file (no video component)?
        CheckVisibility();

        if(!g_bAudioOnly)
        {
            pVW->put_Owner((OAHWND)hWnd);
            pVW->put_WindowStyle(WS_CHILD | WS_CLIPSIBLINGS | WS_CLIPCHILDREN);
        }

        // Have the graph signal event via window callbacks for performance
        //pME->SetNotifyWindow((OAHWND)hWnd, WM_GRAPHNOTIFY, 0);

                long Width, Height;
                pBV->GetVideoSize(&Width, &Height);
                pVW->SetWindowPosition(0, 0, Width, Height);

        // Run the graph to play the media file
        pMC->Run();
        g_psCurrent = psRUNNING;

                ::SetForegroundWindow(hWnd);
                ::SetWindowPos(hWnd, HWND_TOPMOST, 80, 30, Width, Height, SWP_SHOWWINDOW);
        }
}

//下面的代码是从网上看见的,但是
hr = CoCreateInstance(CLSID_AMMultiMediaStream, NULL,
CLSCTX_INPROC_SERVER, IID_IAMMultiMediaStream, (void **)&pAMStream);
hr返回结果是失败,不知道对应的ax文件是哪个,请指教

HRESULT LoadFromFile(const char *szFileName,IMultiMediaStream **ppMMStream, LPDIRECTDRAW4 pDD)
{
        HRESULT hr;
        IAMMultiMediaStream *pAMStream;

        hr = CoCreateInstance(CLSID_AMMultiMediaStream, NULL,
                CLSCTX_INPROC_SERVER, IID_IAMMultiMediaStream, (void **)&pAMStream);
        if(FAILED(hr))
                return hr;

        WCHAR wPath[MAX_PATH];
        MultiByteToWideChar(CP_ACP, 0, szFileName, -1, wPath, sizeof(wPath) / sizeof(wPath[0]));

        if(FAILED(hr=pAMStream->Initialize(STREAMTYPE_READ, AMMSF_NOGRAPHTHREAD, NULL)))
                return hr;
        if(FAILED(hr=pAMStream->AddMediaStream(pDD, &MSPID_PrimaryVideo, 0, NULL)))
                return hr;
        if(FAILED(hr=pAMStream->AddMediaStream(NULL, &MSPID_PrimaryAudio, AMMSF_ADDDEFAULTRENDERER, NULL)))
                return hr;
        if(FAILED(hr=pAMStream->OpenFile(wPath, 0)))
                return hr;
        *ppMMStream = pAMStream;
        return S_OK;
}

HRESULT Play(IDirectDrawSurface *pSurface, IMultiMediaStream *pMMStream)
{
        IMediaStream *pPrimaryVidStream;
        IDirectDrawMediaStream *pDDStream;
        IDirectDrawStreamSample *pSample;
        RECT rect;
        DDSURFACEDESC ddsd;

        pMMStream->GetMediaStream(MSPID_PrimaryVideo, &pPrimaryVidStream);
        pPrimaryVidStream->QueryInterface(IID_IDirectDrawMediaStream, (void **)&pDDStream);
        ddsd.dwSize = sizeof(ddsd);
        pDDStream->GetFormat(&ddsd, NULL, NULL, NULL);

        rect.top =100;
        rect.left =150;
        rect.bottom = ddsd.dwHeight+100;
        rect.right = ddsd.dwWidth+150;

        pDDStream->CreateSample(pSurface, &rect, 0, &pSample);
        pMMStream->SetState(STREAMSTATE_RUN);

        while(pSample->Update(0, NULL, NULL, NULL) == S_OK);

        pMMStream->SetState(STREAMSTATE_STOP);
        pSample->Release();
        pDDStream->Release();
        pPrimaryVidStream->Release();

        return S_OK;
}
 
 
 

回复

71

帖子

0

TA的资源

一粒金砂(初级)

19
 
请问下springmaster(沥泉),你说得第三点BSP方面的具体是什么? 我想在evc环境下编译运行wince500文件夹下的关于direct3D的例子,但是每次GetAdapterDisplayMode返回的都是D3DMERR_INVALIDDEVICE,我sysgen的X86emulator的SDK中的组件已经选了关于direct3D Mobile的组件和drivers了,是不是因为没有加载相关的BSP驱动?具体应该怎么加载啊?
 
 
 

回复

67

帖子

0

TA的资源

一粒金砂(初级)

20
 
可以 支持的,但是有些函数是不支持的。
 
 
 

回复
您需要登录后才可以回帖 登录 | 注册

查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/10 下一条
立即报名 | 2025 瑞萨电子工业以太网技术日即将开启!
3月-4月 深圳、广州、北京、苏州、西安、上海 走进全国6城
2025瑞萨电子工业以太网技术巡回沙龙聚焦工业4.0核心需求,为工程师与企业决策者提供实时通信技术最佳解决方案。
预报从速,好礼等您拿~

查看 »

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

 
机器人开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表