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

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

?? jtagdrv.cpp

?? 全是好東西啊 歡迎觀看,共勉,加油啊
?? CPP
字號:
//*-----------------------------------------------------------------------------
//*      ATMEL Microcontroller Software Support  -  ROUSSET  -
//*-----------------------------------------------------------------------------
//* The software is delivered "AS IS" without warranty or condition of any
//* kind, either express, implied or statutory. This includes without
//* limitation any warranty or condition with respect to merchantability or
//* fitness for any particular purpose, or against the infringements of
//* intellectual property rights of others.
//*-----------------------------------------------------------------------------
//* File Name               : Usartdrv.cpp
//* Object                  : Usart Driver
//*
//* 1.0 06/06/01 IH         : Creation
//*-----------------------------------------------------------------------------

//*----- Files to be included Definition -----*/
#include "stdafx.h"

#include <winbase.h>
#include <stdio.h>
#include "at91jtg.h"
#include "jtagdrv.h"
#include "dfu.h"

// Following definitions define the Debug Comm Control register
#define W_BIT (1 << 1)
#define R_BIT (1 << 0)

//*----------------------------------------------------------------------------
//* Function Name       : writeCom
//* Object              : Send a buffer through a JTAG port
//* Input Parameters    : Address of message, Len
//* Output Parameters   : FALSE or TRUE
//* Functions called    : ReadFile, displayError,closeCom
//*----------------------------------------------------------------------------
#define MAX_WDOG 10

BOOL Jtag_Write(IN HANDLE hcom, PVOID IN buffer, IN DWORD len)
{
	unsigned int ctl = R_BIT;
	int wDog = MAX_WDOG;
	unsigned int *pInt = (unsigned int *) buffer;

	for (DWORD i = 0; i < len; i += 4) {
		// Wait for the R bit to be cleared
		while (wDog--) {
			if (!JtagRunMacro("CTL_COMM", 0, &ctl)) {
				SetLastError(ERROR_TX_NOT_COMPLETE);
				return FALSE;
			}
			if ( !(ctl & R_BIT) )
				break;
			Sleep(100); // Sleep 100 ms
		}

		// Exit due to watch dog
		if (!wDog) {
			SetLastError(ERROR_TX_NOT_COMPLETE);
			return FALSE;
		}
		else
			wDog = MAX_WDOG;

		// Write in the COMM data register
		if (!JtagRunMacro("WRITE_COMM", *pInt++, NULL)) {
			SetLastError(ERROR_TX_NOT_COMPLETE);
			return FALSE;
		}
	}
	return TRUE;
}


//*----------------------------------------------------------------------------
//* Function Name       : Jtag_Read
//* Object              : 
//* Input Parameters    : 
//* Output Parameters   : 
//* Functions called    : 
//*----------------------------------------------------------------------------
BOOL Jtag_Read(IN HANDLE hcom, PVOID buffer, IN DWORD len)
{
	unsigned int ctl = W_BIT;
	int wDog = 10;
	unsigned int *pInt = (unsigned int *) buffer;

	for (DWORD i = 0; i < len; i += 4) {
		// Wait for the W bit to be set
		while (wDog--) {
			if (!JtagRunMacro("CTL_COMM", 0, &ctl)) {
				SetLastError(ERROR_RX_NOT_COMPLETE);
				return FALSE;
			}
			if (ctl & W_BIT)
				break;
			Sleep(100); // Sleep 100 ms
		}

		// Exit due to watch dog
		if (!wDog) {
			SetLastError(ERROR_RX_NOT_COMPLETE);
			return FALSE;
		}

		// Read in the COMM data register
		if (!JtagRunMacro("READ_COMM", 0, pInt++)) {
			SetLastError(ERROR_RX_NOT_COMPLETE);
			return FALSE;
		}
	}
	return TRUE;
}


//*----------------------------------------------------------------------------
//* Function Name       : Usart_Download
//* Object              : 
//* Input Parameters    : 
//* Output Parameters   : 
//* Functions called    : 
//*----------------------------------------------------------------------------
ULONG Jtag_Download(const char *com ,PVOID IN buffer, IN ULONG bufferSize)
{	
	ULONG   bytesWritten = bufferSize;
	CHAR    errorMessage[100];
	PIPE    jtagPipe;

	// Open the communication channel and init pipe structure
	if (!JtagLoadMacro("arm.lst")) {
		sprintf(errorMessage, "Installation is not correct.\nCan not load arm.lst");
		MessageBox(NULL, errorMessage, "ERROR", MB_OK);
		return 0;
	}
	jtagPipe.read   = Jtag_Read;
	jtagPipe.write  = Jtag_Write;

	// RESET the JTAG macrocell
	if (!JtagRunMacro("RESET_TAP", 0, NULL)) {
		sprintf(errorMessage, "Can not reset the TAP controller...");
		MessageBox(NULL, errorMessage, "ERROR", MB_OK);
		return 0;
	}

	// RESET the JTAG macrocell
	if (!JtagRunMacro("SELECT_SC2", 0, NULL)) {
		sprintf(errorMessage, "Can not access to the BKRU...");
		MessageBox(NULL, errorMessage, "ERROR", MB_OK);
		return 0;
	}

	// Download the buffer
	if (!DownloadUploadFirmware(&jtagPipe, buffer, bufferSize, FALSE)) {
		sprintf(errorMessage, "Error downloading firmware: %X", GetLastError());
		MessageBox(NULL, errorMessage, "ERROR", MB_OK);
		bytesWritten = 0;
	}

	return bufferSize;
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲精品少妇30p| 日韩av中文字幕一区二区三区| 7777精品伊人久久久大香线蕉超级流畅| 国产成人av福利| 国产精品一区二区视频| 国产一区不卡精品| 成人高清视频在线| av网站免费线看精品| 在线精品视频免费播放| 欧美色网站导航| 精品捆绑美女sm三区| 精品国产一二三| 中文字幕在线不卡国产视频| 亚洲色图制服诱惑| 日韩国产欧美在线播放| 国产一区在线看| www.亚洲色图.com| 欧美日韩一区 二区 三区 久久精品| 色婷婷综合久久久中文字幕| 精品污污网站免费看| 日韩三区在线观看| 亚洲欧美日韩中文字幕一区二区三区 | 亚洲va欧美va国产va天堂影院| 亚洲国产精品久久一线不卡| 美女国产一区二区三区| 国产成人综合在线播放| 日本精品一区二区三区四区的功能| 欧洲中文字幕精品| www日韩大片| 亚洲另类春色国产| 国产一区二区三区香蕉| 欧美中文字幕不卡| 欧美激情在线看| 水蜜桃久久夜色精品一区的特点| 国产成人免费视频精品含羞草妖精| 97久久超碰国产精品| 91精品国产91久久综合桃花| 国产色爱av资源综合区| 蜜臀久久99精品久久久画质超高清 | www.欧美亚洲| 欧美日韩不卡视频| 亚洲欧美一区二区视频| 国内精品伊人久久久久av影院 | 久久久久久久电影| 午夜国产不卡在线观看视频| 成人午夜电影久久影院| 日韩精品一区在线| 天堂久久久久va久久久久| av中文字幕不卡| 精品国产制服丝袜高跟| 亚洲mv大片欧洲mv大片精品| 91同城在线观看| 国产亚洲成年网址在线观看| 奇米影视一区二区三区| 欧美三级蜜桃2在线观看| 亚洲欧洲在线观看av| 国产mv日韩mv欧美| 久久久美女毛片| 蜜桃av噜噜一区| 欧美福利一区二区| 亚洲成国产人片在线观看| 91免费版在线| 亚洲欧美在线视频| 91麻豆免费看| 亚洲视频网在线直播| 成人a级免费电影| 久久久精品tv| 黄色日韩三级电影| 337p粉嫩大胆色噜噜噜噜亚洲| 人人精品人人爱| 日韩视频一区二区在线观看| 日韩av中文字幕一区二区三区| 欧美日韩精品是欧美日韩精品| 亚洲一区视频在线观看视频| 在线观看网站黄不卡| 亚洲一区二区影院| 欧美乱妇15p| 日本人妖一区二区| 2021中文字幕一区亚洲| 国产一区二区免费视频| 久久久久国产免费免费 | 91免费看`日韩一区二区| 国产精品久久久久9999吃药| 91在线国内视频| 亚洲精品免费一二三区| 欧美日韩国产a| 日韩精品欧美成人高清一区二区| 日韩一区二区精品| 国产一区在线精品| 亚洲视频1区2区| 欧美日本在线播放| 国产伦精品一区二区三区视频青涩| 国产性色一区二区| 一本大道久久a久久综合| 午夜激情一区二区三区| 久久久久一区二区三区四区| 99久久婷婷国产综合精品| 亚洲一二三四久久| 日韩欧美的一区二区| 99久久精品情趣| 亚洲成人高清在线| 国产日韩视频一区二区三区| 91丨九色丨蝌蚪丨老版| 日本视频免费一区| 国产精品久久精品日日| 欧美日韩午夜在线| 丁香网亚洲国际| 石原莉奈在线亚洲三区| 国产精品天天看| 91精品麻豆日日躁夜夜躁| 波多野结衣在线一区| 日日嗨av一区二区三区四区| 国产精品蜜臀在线观看| 337p亚洲精品色噜噜狠狠| 风流少妇一区二区| 日韩av电影一区| 日韩理论片在线| 久久久久99精品国产片| 欧美日韩高清一区二区| 99re热视频这里只精品| 开心九九激情九九欧美日韩精美视频电影 | 精品视频一区二区三区免费| 国产福利一区二区三区视频| 日韩高清在线电影| 亚洲精选视频免费看| 久久美女艺术照精彩视频福利播放| 欧美视频完全免费看| eeuss鲁一区二区三区| 久久成人精品无人区| 午夜视频久久久久久| 1区2区3区精品视频| 中文字幕不卡在线观看| 精品对白一区国产伦| 91精品国产高清一区二区三区蜜臀| 91在线免费播放| eeuss影院一区二区三区| 粉嫩一区二区三区在线看| 国模大尺度一区二区三区| 蜜桃一区二区三区四区| 日本中文在线一区| 日韩精品电影在线| 青青草97国产精品免费观看 | 亚洲一区在线观看视频| 国产精品久久久久久户外露出| 国产欧美日韩精品一区| 久久综合久久综合久久| 日韩精品中文字幕在线一区| 欧美一级高清大全免费观看| 欧美精品三级日韩久久| 91精品欧美福利在线观看| 91精品国产91久久综合桃花| 欧美高清视频不卡网| 欧美顶级少妇做爰| 日韩欧美一级精品久久| 精品久久久久99| 2020国产成人综合网| 久久久久9999亚洲精品| 国产欧美日韩综合精品一区二区 | 亚洲日本在线a| 亚洲日本乱码在线观看| 一区二区三区 在线观看视频| 亚洲男女毛片无遮挡| 洋洋成人永久网站入口| 亚洲国产乱码最新视频| 美女在线视频一区| 国产精品99久久久久久似苏梦涵| 成人动漫一区二区| 在线日韩av片| 欧美美女bb生活片| 久久久国产午夜精品 | 欧美日韩精品一区二区三区蜜桃 | 91同城在线观看| 欧美高清精品3d| 中文一区一区三区高中清不卡| 中文字幕永久在线不卡| 午夜久久久久久| 国产999精品久久| 欧美视频在线观看一区二区| 精品国产一区久久| 日韩美女视频19| 男人操女人的视频在线观看欧美 | 欧美丰满美乳xxx高潮www| 精品成a人在线观看| 亚洲人成精品久久久久久| 丝袜美腿亚洲一区二区图片| 国产精品亚洲专一区二区三区| 91福利精品视频| 精品sm捆绑视频| 亚洲成av人片在线观看无码| 国产乱码精品一区二区三区五月婷 | 中文字幕亚洲欧美在线不卡| 午夜精品成人在线视频| 丁香啪啪综合成人亚洲小说| 欧美久久久久久久久中文字幕| 国产三级精品视频| 日韩国产一区二| 91高清视频在线| 中文字幕亚洲视频| 经典一区二区三区| 欧美一区二区福利视频|