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

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

?? test.c

?? CH372的單片機編程,VC編程,VB編程,dephi編程
?? C
字號:
/*
; CH375/CH372 Bulk Data Test
; U2(AT89C51) Program
; 本程序測試數據傳輸的正確性,可以用于長時間連續測試,對應的計算機端的測試程序為TEST.EXE
; 方法: 下傳隨機長度的隨機數據包,被單片機接收并將數據按位取反后返回,最終由計算機程序接收后比較數據是否正確
;
; Website:  http://winchiphead.com
; Email:    tech@winchiphead.com
; Author:   W.ch 2003.09
*/

/* MCS-51單片機C語言的示例程序,用于其它單片機時一般只要修改前面幾個接口子程序及硬件定義 */

#pragma NOAREGS
#include <reg52.h>
#include <string.h>
#include "..\..\MCU_IF2\C\CH375INC.H"	/* 頭文件,在網上下載的CH372或者CH375評估板資料中有 */

unsigned char volatile xdata CH375_CMD_PORT _at_ 0xBDF1;		/* CH375命令端口的I/O地址 */
unsigned char volatile xdata CH375_DAT_PORT _at_ 0xBCF0;		/* CH375數據端口的I/O地址 */

/* 延時2微秒,不精確 */
void	delay2us( )
{
	unsigned char i;
	for ( i = 2; i != 0; i -- );  /* 根據單片機的時鐘選擇初值 */
}

/* 延時1微秒,不精確,因為MCS51單片機較慢所以實際上無需延時 */
//void	delay1us( )
//{
//	unsigned char i;
//	for ( i = 1; i != 0; i -- );
//}

/* 基本操作 */

void CH375_WR_CMD_PORT( unsigned char cmd ) {  /* 向CH375的命令端口寫入命令,周期不小于4uS,如果單片機較快則延時 */
	delay2us();
	CH375_CMD_PORT=cmd;
/* ******************** 注釋中是用普通I/O引腳模擬8位并口的時序,CH375_CS引腳是可選的,可以一直接GND強制片選
	CH375_D0_D7 = cmd;
	CH375_A0 = 1;  選擇CH375的命令口
//	CH375_D0_D7_DIR = output;  對于標準雙向I/O,請在此設置為輸出方向
	CH375_RD = 1;  如果I/O默認電平是高電平,那么這是可選操作
	CH375_CS = 0;
	CH375_WR = 0;
//	CH375_CS = 0;  對于高速單片機,該指令用于延時,以便向CH375_WR產生寬度至少為80nS的低電平脈沖
	CH375_WR = 1;
	CH375_CS = 1;
	CH375_A0 = 0;
//	CH375_D0_D7_DIR = input;  對于標準雙向I/O,請在此設置為輸入方向
	CH375_D0_D7 = 0xFF;  對于準雙向I/O,請在此設置輸出全高電平
******************** */
	delay2us();
}

void CH375_WR_DAT_PORT( unsigned char dat ) {  /* 向CH375的數據端口寫入數據,周期不小于1.5uS,如果單片機較快則延時 */
	CH375_DAT_PORT=dat;
/* ******************** 注釋中是用普通I/O引腳模擬8位并口的時序
	CH375_D0_D7 = dat;
//	CH375_D0_D7_DIR = output;  對于標準雙向I/O,請在此設置為輸出方向
	CH375_CS = 0;
	CH375_WR = 0;
//	CH375_CS = 0;  對于高速單片機,該指令用于延時,以便向CH375_WR產生寬度至少為80nS的低電平脈沖
	CH375_WR = 1;
	CH375_CS = 1;
//	CH375_D0_D7_DIR = input;  對于標準雙向I/O,請在此設置為輸入方向
	CH375_D0_D7 = 0xFF;  對于準雙向I/O,請在此設置輸出全高電平
******************** */
//	delay1us();  /* 因為MCS51單片機較慢所以實際上無需延時 */
}

unsigned char CH375_RD_DAT_PORT( void ) {  /* 從CH375的數據端口讀出數據,周期不小于1.5uS,如果單片機較快則延時 */
//	delay1us();  /* 因為MCS51單片機較慢所以實際上無需延時 */
/* ******************** 注釋中是用普通I/O引腳模擬8位并口的時序
//	CH375_D0_D7_DIR = input;  對于標準雙向I/O,請在此設置為輸入方向
	CH375_D0_D7 = 0xFF;  對于準雙向I/O,請在此設置輸出全高電平,便于輸入
	CH375_CS = 0;
	CH375_RD = 0;
//	CH375_CS = 0;  對于高速單片機,該指令用于延時,以便向CH375_RD產生寬度至少為80nS的低電平脈沖
	unsigned char dat = CH375_D0_D7;
	CH375_RD = 1;
	CH375_CS = 1;
	CH375_D0_D7 = 0xFF;  對于準雙向I/O,請在此設置輸出全高電平
	return( dat );
******************** */
	return( CH375_DAT_PORT );
}

/* 延時50毫秒,不精確 */
void	Delay50ms( )
{
	unsigned char i, j;
	for ( i=200; i!=0; i-- ) for ( j=250; j!=0; j-- );
}

/* CH375初始化子程序 */
void	CH375_Init( )
{
	unsigned char i;
/* 測試CH375是否正常工作,可選操作,通常不需要 */
	CH375_WR_CMD_PORT( CMD_CHECK_EXIST );  /* 測試CH375是否正常工作 */
	CH375_WR_DAT_PORT( 0x55 );  /* 寫入測試數據 */
	i = ~ 0x55;  /* 返回數據應該是測試數據取反 */
	if ( CH375_RD_DAT_PORT( ) != i ) {  /* CH375不正常 */
		for ( i=80; i!=0; i-- ) {
			CH375_WR_CMD_PORT( CMD_RESET_ALL );  /* 多次重復發命令,執行硬件復位 */
			CH375_RD_DAT_PORT( );
		}
		CH375_WR_CMD_PORT( 0 );
		Delay50ms( );  /* 延時50ms */
	}
/* 設置USB工作模式, 必要操作 */
	CH375_WR_CMD_PORT( CMD_SET_USB_MODE );
	CH375_WR_DAT_PORT( 2 );  /* 設置為使用內置固件的USB設備方式 */
	for ( i=100; i!=0; i-- ) {  /* 等待操作成功,通常需要等待10uS-20uS */
		if ( CH375_RD_DAT_PORT( ) == CMD_RET_SUCCESS ) break;
	}
/*	if ( i==0 ) { CH372/CH375存在硬件錯誤 }; */
/* 下述啟用中斷,假定CH375連接在INT0 */
	IT0 = 0;  /* 置外部信號為低電平觸發 */
	IE0 = 0;  /* 清中斷標志 */
	EX0 = 1;  /* 允許CH375中斷 */
}

/* CH375中斷服務程序,使用寄存器組1 */
void	mCh375Interrupt( ) interrupt 0 using 1
{
	unsigned char InterruptStatus;
	unsigned char i, length;
	unsigned char data buffer[ 64 ];
	CH375_WR_CMD_PORT( CMD_GET_STATUS );  /* 獲取中斷狀態并取消中斷請求 */
	InterruptStatus = CH375_RD_DAT_PORT( );  /* 獲取中斷狀態 */
	switch ( InterruptStatus ) {  /* 分析中斷狀態處理 */
		case USB_INT_EP2_OUT: {  /* 批量端點下傳成功 */
			CH375_WR_CMD_PORT( CMD_RD_USB_DATA );  /* 從當前USB中斷的端點緩沖區讀取數據塊,并釋放緩沖區 */
			length = CH375_RD_DAT_PORT( );  /* 首先讀取后續數據長度 */
			for ( i = 0; i < length; i ++ ) buffer[ i ] = CH375_RD_DAT_PORT( );  /* 接收數據包 */
			/* 測試數據正確性,將接收到的命令包數據取反后返回給PC機 */
			CH375_WR_CMD_PORT( CMD_WR_USB_DATA7 );  /* 向USB端點2的發送緩沖區寫入數據塊 */
			CH375_WR_DAT_PORT( length );  /* 首先寫入后續數據長度,回傳剛接收到的數據長度 */
			for ( i = 0; i < length; i ++ ) CH375_WR_DAT_PORT( ~ buffer[ i ] );  /* 數據取反后返回,由計算機應用程序測試數據是否正確 */
			break;
		}
		case USB_INT_EP2_IN: {  /* 批量數據發送成功 */
			CH375_WR_CMD_PORT( CMD_UNLOCK_USB );  /* 釋放當前USB緩沖區 */
			break;
		}
		default: {  /* 其它中斷,未用到,解鎖后退出即可 */
			CH375_WR_CMD_PORT( CMD_UNLOCK_USB );  /* 釋放當前USB緩沖區 */
			break;
		}
	}
}

main( ) {
	Delay50ms( );	/* 延時等待CH375初始化完成,如果單片機由CH375提供復位信號則不必延時 */
	CH375_Init( );  /* 初始化CH375 */
	EA = 1;  /* 允許中斷 */
	while ( 1 );  /* 以下指令開始工作循環,等待PC機命令進行操作 */
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产精品一区二区免费不卡 | 亚洲一区二区中文在线| 国产成人啪午夜精品网站男同| 欧美不卡在线视频| 老司机免费视频一区二区三区| 久久亚洲一区二区三区明星换脸 | 精品一区二区影视| 久久久国产精品麻豆| 成人18精品视频| 一区二区三区欧美视频| 欧美日韩日本视频| 麻豆精品蜜桃视频网站| 国产亚洲成aⅴ人片在线观看 | 欧洲av一区二区嗯嗯嗯啊| 一区二区三区在线免费观看| 欧美浪妇xxxx高跟鞋交| 蜜桃一区二区三区在线| 国产视频一区在线观看| 99精品视频中文字幕| 亚洲h精品动漫在线观看| 日韩精品在线看片z| 国产v综合v亚洲欧| 亚洲国产精品一区二区久久恐怖片 | 欧美一区二区视频在线观看2020| 免费看欧美美女黄的网站| 久久久精品2019中文字幕之3| 色综合天天综合| 日韩国产精品久久久久久亚洲| 国产视频在线观看一区二区三区 | 亚洲精品一区在线观看| 9i看片成人免费高清| 丝袜诱惑亚洲看片| 国产精品色在线| 欧美一区二区三级| k8久久久一区二区三区| 美美哒免费高清在线观看视频一区二区| 欧美韩国日本不卡| 日韩午夜在线观看视频| 欧美日韩精品福利| 成人av动漫在线| 蜜臀99久久精品久久久久久软件| 亚洲三级在线免费观看| www激情久久| 欧美一区永久视频免费观看| av动漫一区二区| 国内精品久久久久影院色| 亚洲国产精品久久人人爱| 国产欧美日韩精品在线| 日韩午夜电影在线观看| 色婷婷狠狠综合| a在线播放不卡| 国产乱子伦视频一区二区三区 | 日韩欧美视频一区| 欧美日韩国产综合久久| 色综合天天性综合| 成人av电影免费在线播放| 国产永久精品大片wwwapp| 日韩和欧美的一区| 亚洲一区二区三区美女| 成人免费一区二区三区在线观看| 久久一区二区三区四区| 精品福利一区二区三区免费视频| 欧美日韩成人综合| 欧美日韩和欧美的一区二区| 91久久免费观看| 99久久99久久精品国产片果冻| 风流少妇一区二区| 成人一级视频在线观看| 国产一区久久久| 激情另类小说区图片区视频区| 麻豆精品在线观看| 男女男精品视频| 久久99久久99| 久久电影国产免费久久电影| 日韩av不卡在线观看| 五月天激情综合| 偷拍日韩校园综合在线| 视频在线观看91| 日韩和欧美一区二区三区| 日本伊人色综合网| 秋霞午夜鲁丝一区二区老狼| 蜜臀91精品一区二区三区| 美女网站视频久久| 狠狠网亚洲精品| 国产成人午夜视频| 97se亚洲国产综合在线| 91麻豆国产在线观看| 欧洲一区二区三区在线| 欧美日韩国产高清一区二区三区| 欧美日韩极品在线观看一区| 欧美一卡二卡三卡| 亚洲精品在线观| 国产精品国产三级国产普通话蜜臀 | 中文字幕在线观看一区| 亚洲少妇中出一区| 亚洲国产sm捆绑调教视频| 五月激情综合色| 麻豆免费看一区二区三区| 国产呦萝稀缺另类资源| 99久久精品情趣| 欧美三级日本三级少妇99| 日韩欧美激情四射| 国产精品青草综合久久久久99| 亚洲激情自拍偷拍| 蜜桃视频一区二区三区在线观看| 久久99国产精品久久| www.欧美日韩| 欧美一卡二卡在线| 国产精品天天摸av网| 亚洲一区二区三区三| 国产一区二区在线电影| 91小视频免费观看| 日韩精品一区二区三区老鸭窝| 中文字幕一区二区三区视频| 偷拍与自拍一区| jizz一区二区| 欧美大片在线观看| 亚洲欧洲一区二区在线播放| 美日韩一区二区| 欧美一区二区福利视频| 欧美国产1区2区| 日韩av中文字幕一区二区三区| 国产99精品国产| 日韩西西人体444www| 一区精品在线播放| 久久成人免费日本黄色| 欧美性猛交xxxxxx富婆| 久久午夜电影网| 日本vs亚洲vs韩国一区三区二区| 99re亚洲国产精品| xfplay精品久久| 日本人妖一区二区| 在线观看www91| 国产午夜精品久久久久久免费视| 日韩精品免费视频人成| 日本韩国一区二区三区视频| 久久女同互慰一区二区三区| 日韩国产在线观看一区| 色婷婷av一区二区三区软件| 国产日韩三级在线| 久久国产精品无码网站| 欧美日韩一区二区三区免费看 | 日韩和欧美一区二区| 91色视频在线| 国产精品久久久久影院亚瑟| 国产九色精品成人porny| 日韩午夜在线影院| 五月天激情综合网| 色妹子一区二区| 中文字幕一区二区三区不卡在线| 国产一区二区三区国产| 日韩女优av电影在线观看| 天天av天天翘天天综合网色鬼国产 | 国产一区二区三区四区五区美女| 91精品国产色综合久久不卡蜜臀| 中文字幕一区二区不卡| 成年人网站91| 亚洲国产精品精华液ab| 国产成人免费视频网站高清观看视频| 精品国产一区二区三区忘忧草| 蜜桃视频一区二区| 日韩欧美黄色影院| 九色综合国产一区二区三区| 日韩欧美在线综合网| 美女视频免费一区| 精品国产免费久久| 国产一二三精品| 中文字幕不卡在线| 成人福利视频网站| 最新久久zyz资源站| 色综合久久天天综合网| 亚洲欧美区自拍先锋| 91电影在线观看| 水蜜桃久久夜色精品一区的特点| 欧美剧情电影在线观看完整版免费励志电影| 亚洲综合久久av| 欧美高清视频不卡网| 久久99精品国产.久久久久| 久久综合色播五月| 福利91精品一区二区三区| 国产精品私人自拍| 在线免费精品视频| 日本不卡在线视频| 国产三区在线成人av| 99久久久久免费精品国产 | 欧美二区乱c少妇| 日韩和的一区二区| 26uuu精品一区二区在线观看| 国产乱码精品一区二区三| 国产精品卡一卡二| 欧美日韩一区二区三区视频| 蜜桃精品视频在线| 国产精品卡一卡二| 欧美老人xxxx18| 国产福利一区二区| 亚洲精品国产一区二区三区四区在线| 欧美日韩国产在线播放网站| 久久国产欧美日韩精品| 国产精品久久久久久亚洲伦| 欧美日韩激情在线|