亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? sdloaderdlg.cpp

?? TMS320F2808的完整驅動測試程序源碼
?? CPP
字號:
/*
 *  Copyright 2003 by Spectrum Digital Incorporated.
 *  All rights reserved. Property of Spectrum Digital Incorporated.
 */

// SDLoaderDlg.cpp : implementation file
//

#include "stdafx.h"
#include "SDLoader.h"
#include "SDLoaderDlg.h"

#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif

/////////////////////////////////////////////////////////////////////////////
// CSDLoaderDlg dialog

CSDLoaderDlg::CSDLoaderDlg(CWnd* pParent /*=NULL*/)
	: CDialog(CSDLoaderDlg::IDD, pParent)
{
	//{{AFX_DATA_INIT(CSDLoaderDlg)
	//}}AFX_DATA_INIT
	// Note that LoadIcon does not require a subsequent DestroyIcon in Win32
	m_hIcon = AfxGetApp()->LoadIcon(IDR_MAINFRAME);
    m_TestCount = 0;
}

void CSDLoaderDlg::DoDataExchange(CDataExchange* pDX)
{
	CDialog::DoDataExchange(pDX);
	//{{AFX_DATA_MAP(CSDLoaderDlg)
	DDX_Control(pDX, IDC_I2C_LOOPBACK, c_I2CLoopBack);
	DDX_Control(pDX, IDC_CAN_LOOPBACK, c_CanLoopBack);
	DDX_Control(pDX, IDC_SCI_LOOPBACK, c_SciLoopBack);
	DDX_Control(pDX, IDC_LOAD, c_LoadButton);
	DDX_Control(pDX, IDC_OUTPUT_EDIT, c_OutputEdit);
	DDX_Control(pDX, IDC_VERBOSE_ERRORS, c_ErrorVerbose );
	DDX_Control(pDX, IDC_VERBOSE_MESSAGE, c_MessageVerbose );
	//}}AFX_DATA_MAP
}

BEGIN_MESSAGE_MAP(CSDLoaderDlg, CDialog)
	//{{AFX_MSG_MAP(CSDLoaderDlg)
	ON_WM_PAINT()
	ON_WM_QUERYDRAGICON()
	ON_BN_CLICKED(IDC_LOAD, OnLoad)
	ON_BN_CLICKED(IDC_VERBOSE_ERRORS, OnErrorVerbose)
	ON_BN_CLICKED(IDC_VERBOSE_MESSAGE, OnMessageVerbose)
    ON_MESSAGE(UWM_ONTHREADMESSAGE, OnThreadMessage)
    ON_MESSAGE(UWM_ONTHREADSTOP, OnThreadStop)
	ON_BN_CLICKED(IDC_SCI_LOOPBACK, OnSciLoopback)
	ON_BN_CLICKED(IDC_CAN_LOOPBACK, OnCanLoopback)
	ON_BN_CLICKED(IDC_I2C_LOOPBACK, OnI2cLoopback)
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// CSDLoaderDlg message handlers

BOOL CSDLoaderDlg::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

    // Set default entry point
    m_useAltEntry  = FALSE;
    m_ErrorVerbose = TRUE;
	m_MessageVerbose = TRUE;
	m_CanLoopBack = FALSE;
	m_SciLoopBack = FALSE;
	m_I2CLoopBack = FALSE;

	c_ErrorVerbose.SetCheck( 1 );
	c_MessageVerbose.SetCheck( 1 );
	c_CanLoopBack.SetCheck(0);
	c_SciLoopBack.SetCheck(0);
	c_I2CLoopBack.SetCheck(0);

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

// If you add a minimize button to your dialog, you will need the code below
//  to draw the icon.  For MFC applications using the document/view model,
//  this is automatically done for you by the framework.

void CSDLoaderDlg::OnPaint() 
{
	if (IsIconic())
	{
		CPaintDC dc(this); // device context for painting

		SendMessage(WM_ICONERASEBKGND, (WPARAM) dc.GetSafeHdc(), 0);

		// Center icon in client rectangle
		int cxIcon = GetSystemMetrics(SM_CXICON);
		int cyIcon = GetSystemMetrics(SM_CYICON);
		CRect rect;
		GetClientRect(&rect);
		int x = (rect.Width() - cxIcon + 1) / 2;
		int y = (rect.Height() - cyIcon + 1) / 2;

		// Draw the icon
		dc.DrawIcon(x, y, m_hIcon);
	}
	else
	{
		CDialog::OnPaint();
	}
}

// The system calls this to obtain the cursor to display while the user drags
//  the minimized window.
HCURSOR CSDLoaderDlg::OnQueryDragIcon()
{
	return (HCURSOR) m_hIcon;
}


void CSDLoaderDlg::OnLoad() 
{
    CString dskType;
    char    CurrentDirectory[MAX_PATH+1];

    ZeroMemory(CurrentDirectory, sizeof(CurrentDirectory));

    ::GetCurrentDirectory(MAX_PATH,CurrentDirectory);

	// Directory structure is:
	// <CCS_INSTALL>
	//    |
	//    |-drivers
	//    |-boards\2808eZdspUSB\2808eZdspUSBDiags\Bin
	// 

	// Points to <CCS_INSTALL>\boards\2808eZdspUSB\2808eZdspUSBDiags\Bin
	m_workingDirectory = CurrentDirectory;
	m_workingDirectory.MakeUpper();
    m_targetPath = m_workingDirectory;

	int BaseOffset = m_targetPath.Find("\\BOARDS",0);
	if( BaseOffset == -1 )
	{
		// message
		return;
	}

	CString CCS_Root = m_targetPath.Left(BaseOffset);

	m_driverPath = CCS_Root + "\\drivers";
    m_driverName = "sdgo28xxeZdspusb.dvr";

	
	m_boardName     = "2808eZdspusb.dat";
    m_procFamily    = "TMS320C27XX";
    m_procName      = "cpu_0";
	m_procAddr      = "0x540";
	int Len = m_targetPath.GetLength();
	if( m_targetPath[Len-1] != '\\' )
		m_coffFileName = m_targetPath  + "\\2808eZdspUSBTest.out";
	else
		m_coffFileName = m_targetPath  + "2808eZdspUSBTest.out";

    /* Disable load button */ 
    c_LoadButton.EnableWindow( FALSE );

    /* Clear the edit window */ 
    c_OutputEdit.Clear();

    m_TestCount++;
    CString Result;
    Result.Format("@BEGIN-%d",m_TestCount );
    PrintResults(Result);

    m_mainWindow = AfxGetMainWnd();

    /* Start thread */ 
    AfxBeginThread(ThreadStart, this);
}


/*  ThreadStart( LPVOID pArg )
 *      This is the entry point for starting the coff load thread.
 *      The purpose of this function is to allow the user control over the GUI 
 *      (Graphical User Intf. ) while the load is processing.
 */
UINT CSDLoaderDlg::ThreadStart( LPVOID pArg )
{
    /* Create CoffLoader object */ 
    CoffLoader coffLoader;

    coffLoader.LoadGeneric( pArg );
    return 0;
}

/*  OnThreadStop( )
 *      When coff loading is complete, reenable the Load Button to accept
 *      a new load command.
 */
void CSDLoaderDlg::OnThreadStop( WPARAM, LPARAM lParam )
{
    c_LoadButton.EnableWindow( TRUE );
    CString Result;
    Result.Format("@END-%d\r\n",m_TestCount );
    PrintResults(Result);
}

/*  OnThreadMessage( WPARAM, LPARAM lParam )
 *      When a message is received, via the PostMessage(), print the message
 *      to the edit box, and free the message string. 
 */
void CSDLoaderDlg::OnThreadMessage( WPARAM, LPARAM lParam )
{
    /* Type cast the input parameter to a CString* */ 
    CString* message = ( CString* )lParam;

    /* Print the message */ 
    PrintResults( *message );

    /* Free the message resources */ 
    delete message;
}

void CSDLoaderDlg::PrintResults( CString outstr )
{
    /* Select end of text */
    c_OutputEdit.SetSel(-1,-1);

    /* Append output string */
    c_OutputEdit.ReplaceSel(outstr);
    c_OutputEdit.ReplaceSel("\r\n");

    /* Scroll text window */
    c_OutputEdit.LineScroll(1);
}
void CSDLoaderDlg::OnErrorVerbose() 
{
	m_ErrorVerbose = ( c_ErrorVerbose.GetCheck() == 1 ) ? TRUE:FALSE;
}

void CSDLoaderDlg::OnMessageVerbose() 
{
	m_MessageVerbose = ( c_MessageVerbose.GetCheck() == 1 ) ? TRUE:FALSE;
}

void CSDLoaderDlg::OnSciLoopback() 
{
	// TODO: Add your control notification handler code here
	m_SciLoopBack = ( c_SciLoopBack.GetCheck() == 1 ) ? TRUE : FALSE ;
	
}

void CSDLoaderDlg::OnCanLoopback() 
{
	// TODO: Add your control notification handler code here
	m_CanLoopBack = ( c_CanLoopBack.GetCheck() == 1 ) ? TRUE : FALSE ;
}

void CSDLoaderDlg::OnI2cLoopback() 
{
	// TODO: Add your control notification handler code here
	m_I2CLoopBack = ( c_I2CLoopBack.GetCheck() == 1 ) ? TRUE : FALSE ;

}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
日韩精品免费视频人成| 亚洲视频在线观看一区| 国产亚洲精品中文字幕| 欧美精品免费视频| 欧美美女黄视频| 欧美美女一区二区在线观看| 欧美视频三区在线播放| 欧美性xxxxxxxx| 欧美日韩国产系列| 4438x亚洲最大成人网| 欧美伦理电影网| 3751色影院一区二区三区| 欧美高清视频不卡网| 884aa四虎影成人精品一区| 欧美日韩一卡二卡三卡 | 日韩精品一级中文字幕精品视频免费观看 | 国产在线精品一区二区夜色| 免费日本视频一区| 九色porny丨国产精品| 国产一本一道久久香蕉| 国产高清久久久久| 99riav久久精品riav| 在线观看日产精品| 91.成人天堂一区| 精品国产一区久久| 国产精品久久久久久久久动漫 | 精品人在线二区三区| 久久综合五月天婷婷伊人| 欧美国产亚洲另类动漫| 亚洲乱码中文字幕综合| 日本成人在线看| 高潮精品一区videoshd| 欧美性猛片aaaaaaa做受| 日韩免费在线观看| 国产精品不卡在线观看| 午夜精品aaa| 国产成人在线电影| 91久久人澡人人添人人爽欧美| 91精品在线麻豆| 国产精品久久久久久久岛一牛影视 | 五月天视频一区| 国产乱人伦偷精品视频免下载| 91丨九色丨黑人外教| 欧美v国产在线一区二区三区| 亚洲三级免费观看| 国产一区二区三区观看| 欧美在线高清视频| 欧美精品一区二区三区很污很色的 | 精品久久一二三区| 一区二区在线免费观看| 国产麻豆9l精品三级站| 在线播放欧美女士性生活| 国产精品传媒入口麻豆| 麻豆91精品视频| 在线视频综合导航| 国产精品久久久久久久久免费相片| 五月天中文字幕一区二区| 波多野结衣中文字幕一区二区三区| 正在播放一区二区| 亚洲高清免费视频| 色综合亚洲欧洲| 日本一区二区三区视频视频| 久久电影国产免费久久电影 | 亚洲丶国产丶欧美一区二区三区| 国产aⅴ精品一区二区三区色成熟| 91精品国产色综合久久不卡蜜臀| 亚洲精品视频自拍| 99精品视频中文字幕| 国产三级精品三级| 国模娜娜一区二区三区| 欧美mv日韩mv国产网站app| 九九精品一区二区| 欧美日韩国产成人在线91 | 欧美日韩电影一区| 一区二区不卡在线视频 午夜欧美不卡在 | 日韩视频不卡中文| 舔着乳尖日韩一区| 精品视频1区2区3区| 亚洲国产另类精品专区| 欧美日韩免费视频| 亚洲午夜三级在线| 欧美色窝79yyyycom| 亚洲精品久久久久久国产精华液| 99麻豆久久久国产精品免费| 久久久不卡影院| 国产成人99久久亚洲综合精品| 久久综合九色综合欧美就去吻| 精品一区二区国语对白| 精品女同一区二区| 国产精品一级在线| 国产精品久久久一本精品| 91网站黄www| 亚洲午夜国产一区99re久久| 欧美精品久久一区二区三区| 日本最新不卡在线| 精品美女一区二区| 国产不卡免费视频| 亚洲黄色在线视频| 欧美精品日日鲁夜夜添| 国产麻豆欧美日韩一区| 中文字幕不卡的av| 欧美午夜在线一二页| 日韩精品电影在线| 久久精子c满五个校花| 色诱视频网站一区| 美女诱惑一区二区| 久草热8精品视频在线观看| 欧美国产激情二区三区| 色播五月激情综合网| 肉丝袜脚交视频一区二区| 欧美videos大乳护士334| 成人午夜视频网站| 亚洲电影激情视频网站| 国产亚洲成aⅴ人片在线观看| 91色porny| 国产一区二区剧情av在线| 亚洲欧美视频一区| 日韩欧美电影一二三| av男人天堂一区| 免费成人小视频| 亚洲欧美日韩国产另类专区| 精品国产露脸精彩对白| 欧美午夜精品久久久久久孕妇| 国产乱子轮精品视频| 视频一区国产视频| 亚洲欧洲国产专区| 久久久噜噜噜久噜久久综合| 欧美图区在线视频| 成人av网在线| 国产精品自拍三区| 日本不卡高清视频| 亚洲国产成人高清精品| 欧美国产视频在线| 精品国产污污免费网站入口| 91精品办公室少妇高潮对白| 国产成人av资源| 免费成人在线播放| 亚洲不卡av一区二区三区| 日韩美女精品在线| 欧美高清在线一区| 久久九九全国免费| 26uuu色噜噜精品一区| 欧美一区二区三区四区在线观看 | 7777精品伊人久久久大香线蕉完整版| 丁香另类激情小说| 国产精品伊人色| 久久成人免费电影| 男女性色大片免费观看一区二区| 一区二区三区四区国产精品| 中文字幕色av一区二区三区| 中文字幕不卡的av| 中文成人av在线| 国产精品理论在线观看| 欧美激情在线免费观看| 国产女人18毛片水真多成人如厕 | 调教+趴+乳夹+国产+精品| 亚洲不卡在线观看| 日本伊人午夜精品| 五月天网站亚洲| 免费观看一级特黄欧美大片| 日韩电影免费一区| 麻豆精品一区二区综合av| 日韩电影网1区2区| 蜜臀久久99精品久久久久久9| 日本特黄久久久高潮| 日本 国产 欧美色综合| 麻豆91免费观看| 国产精品夜夜爽| 北岛玲一区二区三区四区| 97久久精品人人爽人人爽蜜臀| 99久久国产免费看| 欧美三级三级三级| 91精品久久久久久久91蜜桃| 成人欧美一区二区三区视频网页| 中文乱码免费一区二区| 玉米视频成人免费看| 五月婷婷久久综合| 韩国精品主播一区二区在线观看 | 中文字幕日本乱码精品影院| 亚洲精品免费视频| 日韩不卡一二三区| 国产成人免费视频一区| 在线观看网站黄不卡| 91精品国产综合久久久久久久| 精品国产免费一区二区三区四区| 国产女人18水真多18精品一级做| 亚洲欧美电影院| 日韩 欧美一区二区三区| 国产不卡免费视频| 在线免费视频一区二区| 日韩一本二本av| 国产精品久久福利| 日韩成人dvd| 99久久精品国产麻豆演员表| 91精品国产入口| 亚洲欧洲日产国码二区| 久久精品久久精品| 91国偷自产一区二区三区成为亚洲经典 | 一区二区三区四区在线播放| 免费一级欧美片在线观看|