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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? delay.h

?? 使用picc開發(fā)的基于pic16f87x的與上位機(jī)進(jìn)行串行通信的源程序
?? H
字號:
/*

lowlevel delay routines

Designed by Shane Tolmie of KeyGhost corporation.  Freely distributable.
Questions and comments to shane@keyghost.com
Want to see 4Mb of Hi-Tech C FAQ and sample source code? http://www.keyghost.com/htpic
(also has tiny device to record keystrokes in hardware on PC)

For Microchip 12C67x, 16C7x, 16F87x and Hi-Tech C

Example C:

#define PIC_CLK 8000000

#include "delay.h"

unsigned int timeout_int, timeout_char;

timeout_char=timeout_char_us(1147);
while(timeout_char-- && (RA1==0));  //wait up to 1147us for port RA1 to go high
				    //  - this is the max timeout

timeout_int=timeout_int_us(491512);
while(timeout_int-- && (RA1==0));   //wait up to 491512us for port RA1 to go high
				    //  - this is the max timeout

dly250n;      //delay 250ns
dly1u;        //delay 1us
DelayUs(40);  //do not do DelayUs(0) or else it bombs :)
DelayUs(255); //max

*/

#ifndef __DELAY_H
#define __DELAY_H

unsigned char delayus_variable;

#if (PIC_CLK == 4000000) || (PIC_CLK == 3686400) //3686400 is not entirely accurate, but it works
	#define dly125n please remove; for 32Mhz+ only
	#define dly250n please remove; for 16Mhz+ only
	#define dly500n please remove; for 8Mhz+ only
	#define dly1u asm("nop")
	#define dly2u dly1u;dly1u
#elif (PIC_CLK == 8000000)
	#define dly125n please remove; for 32Mhz+ only
	#define dly250n please remove; for 16Mhz+ only
	#define dly500n asm("nop")
	#define dly1u dly500n;dly500n
	#define dly2u dly1u;dly1u
#elif ( (PIC_CLK == 16000000) || (PIC_CLK == 16257000) )
	#define dly125n please remove; for 32Mhz+ only
	#define dly250n asm("nop")
	#define dly500n dly250n;dly250n
	#define dly1u dly500n;dly500n
	#define dly2u dly1u;dly1u
#elif (PIC_CLK == 20000000)
	#define dly200n asm("nop")
	#define dly400n dly250n;dly250n
	#define dly2u dly400n;dly400n;dly400n;dly400n;dly400n
#elif (PIC_CLK == 32000000)
	#define dly125n asm("nop")
	#define dly250n dly125n;dly125n
	#define dly500n dly250n;dly250n
	#define dly1u dly500n;dly500n
	#define dly2u dly1u;dly1u
#else
	#error please define pic_clk correctly
#endif

//*****
//delay routine

#if PIC_CLK == 4000000 || (PIC_CLK == 3686400) //3686400 is not entirely accurate, but it works
	#define DelayDivisor 4
	#define WaitFor1Us asm("nop")
	#define Jumpback asm("goto $ - 2")
#elif PIC_CLK == 8000000
	#define DelayDivisor 2
	#define WaitFor1Us asm("nop")
	#define Jumpback asm("goto $ - 2")
#elif ( (PIC_CLK == 16000000) || (PIC_CLK==16257000) )
	#define DelayDivisor 1
	#define WaitFor1Us asm("nop")
	#define Jumpback asm("goto $ - 2")
#elif PIC_CLK == 20000000
	#define DelayDivisor 1
	#define WaitFor1Us asm("nop")
	#define WaitFor1Us asm("nop")	
	#define Jumpback asm("goto $ - 2")
#elif PIC_CLK == 32000000
	#define DelayDivisor 1
	#define WaitFor1Us asm("nop"); asm("nop"); asm("nop"); asm("nop"); asm("nop")
	#define Jumpback asm("goto $ - 6")
#else
	#error please define pic_clk correctly
#endif

#define DelayUs(x) { \
			delayus_variable=(unsigned char)(x/DelayDivisor); \
			WaitFor1Us; } \
			asm("decfsz _delayus_variable,f"); \
			Jumpback;

/*

timeouts:

C code for testing with ints:

			unsigned int timeout;
			timeout=4000;
			PORT_DIRECTION=OUTPUT;
			while(1)
			{
				PORT=1;
				timeout=8000;
				while(timeout-- >= 1);	//60ms @ 8Mhz, opt on, 72ms @ 8Mhz, opt off
				PORT=0;
			}

Time taken:	optimisations on:		16cyc/number loop, 8us @ 8Mhz
			optimisations off:		18cyc/number loop, 9us @ 8Mhz
			with extra check ie:	&& (RB7==1), +3cyc/number loop, +1.5us @ 8Mhz

C code for testing with chars:

			similar to above

Time taken:	optimisations on:		9cyc/number loop, 4.5us @ 8Mhz
			with extra check ie:	&& (RB7==1), +3cyc/number loop, +1.5us @ 8Mhz

Formula:	rough timeout value = (<us desired>/<cycles per loop>) * (PIC_CLK/4.0)

To use:		//for max  timeout of 1147us @ 8Mhz
			#define LOOP_CYCLES_CHAR	9					//how many cycles per loop, optimizations on
			#define timeout_char_us(x)	(unsigned char)((x/LOOP_CYCLES_CHAR)*(PIC_CLK/4.0))
			unsigned char timeout;
			timeout=timeout_char_us(1147);						//max timeout allowed @ 8Mhz, 573us @ 16Mhz
			while((timeout-- >= 1) && (<extra condition>));	//wait

To use:		//for max 491512us, half sec timeout @ 8Mhz
			#define LOOP_CYCLES_INT		16					//how many cycles per loop, optimizations on
			#define timeout_int_us(x)	(unsigned int)((x+/LOOP_CYCLES_INT)*(PIC_CLK/4.0))
			unsigned int timeout;
			timeout=timeout_int_us(491512);						//max timeout allowed @ 8Mhz
			while((timeout-- >= 1) && (<extra condition>));	//wait
*/
#define LOOP_CYCLES_CHAR	9							//how many cycles per loop, optimizations on
#define timeout_char_us(x)	(unsigned char)((x/LOOP_CYCLES_CHAR)*(PIC_CLK/4000000.0))

#define LOOP_CYCLES_INT		16							//how many cycles per loop, optimizations on
#define timeout_int_us(x)	(unsigned int)((x/LOOP_CYCLES_INT)*(PIC_CLK/4000000.0))

#endif

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产欧美1区2区3区| 日韩一级高清毛片| 亚洲情趣在线观看| 一本大道av一区二区在线播放| 中文字幕乱码一区二区免费| 成人网在线播放| 亚洲视频狠狠干| 欧美性色黄大片| 日本强好片久久久久久aaa| 欧美一二三四区在线| 精品亚洲成av人在线观看| 国产无遮挡一区二区三区毛片日本| 成人丝袜高跟foot| 综合色中文字幕| 欧美日韩免费不卡视频一区二区三区| 日韩精品一二三区| 国产亚洲欧美一级| 色先锋资源久久综合| 日韩中文字幕麻豆| 久久久国际精品| 日本丶国产丶欧美色综合| 国产成人精品亚洲日本在线桃色| 国产色爱av资源综合区| 色综合久久久久网| 国产蜜臀97一区二区三区 | 国产亚洲精品超碰| thepron国产精品| 午夜久久电影网| 欧美国产日韩亚洲一区| 欧美在线观看视频一区二区 | 免费成人在线观看视频| 国产欧美一区二区精品性色超碰| 91色porny在线视频| 蜜臀久久99精品久久久画质超高清| 久久亚洲二区三区| 欧美色综合网站| 国产成人在线视频播放| 亚洲图片欧美视频| 国产校园另类小说区| 欧美少妇一区二区| 成人激情校园春色| 日本成人在线一区| 亚洲少妇30p| 久久老女人爱爱| 欧美老人xxxx18| 不卡的av网站| 激情欧美一区二区| 午夜精品久久久久久久久久| 亚洲国产精品激情在线观看| 日韩一区二区三区在线观看 | 日本高清不卡一区| 国产成人精品影视| 久久丁香综合五月国产三级网站| 洋洋成人永久网站入口| 国产精品伦理在线| 久久只精品国产| 欧美一级二级在线观看| 欧美亚男人的天堂| 99在线精品视频| 国产精品18久久久久久久久 | 欧美一区二区三区的| 91高清视频在线| www.成人在线| 成人综合激情网| 国产美女在线观看一区| 久久99精品国产| 美洲天堂一区二卡三卡四卡视频| 美女视频网站久久| 国产精品女人毛片| 欧美一区二区三区在| 日日摸夜夜添夜夜添精品视频| 欧美成人精品二区三区99精品| 欧美视频在线观看一区二区| 日本高清不卡视频| 色婷婷激情久久| 色婷婷av一区二区三区软件| 99久久久无码国产精品| va亚洲va日韩不卡在线观看| 成人免费电影视频| 成人性生交大片免费看视频在线| 激情小说亚洲一区| 国产制服丝袜一区| 国产精品系列在线播放| 国产成人综合在线观看| 国内精品国产成人| 国产综合色精品一区二区三区| 精品在线播放免费| 国产精一品亚洲二区在线视频| 国产自产高清不卡| 国产成人av一区| 成人黄页毛片网站| 97se狠狠狠综合亚洲狠狠| 97se狠狠狠综合亚洲狠狠| 91黄色激情网站| 欧美日韩综合一区| 欧美福利视频一区| 欧美电视剧在线观看完整版| 久久久久久久国产精品影院| 日本一区二区三区久久久久久久久不 | 国产一区日韩二区欧美三区| 国产精品一级在线| 成人av手机在线观看| 91丨porny丨户外露出| 在线看国产一区| 欧美一级久久久| 国产欧美日韩视频一区二区| 亚洲三级理论片| 水野朝阳av一区二区三区| 国产真实乱子伦精品视频| www.欧美日韩| 91精品国产欧美日韩| 久久久久久久久一| 亚洲黄色片在线观看| 蜜桃一区二区三区在线| 成人永久免费视频| 欧美三级电影在线看| 久久久国产午夜精品| 一区二区三区不卡视频| 另类欧美日韩国产在线| 91一区在线观看| 精品精品欲导航| 亚洲女女做受ⅹxx高潮| 久久精品国产一区二区三区免费看| 成人午夜激情在线| 日韩一级片网址| 亚洲乱码国产乱码精品精的特点 | 911精品产国品一二三产区| 久久久久国产精品麻豆ai换脸| 亚洲三级免费观看| 狠狠色丁香久久婷婷综| 91国在线观看| 国产肉丝袜一区二区| 五月天激情综合网| 色综合天天综合网天天狠天天| 日韩欧美国产电影| 一区二区国产视频| 福利一区二区在线| 这里只有精品视频在线观看| ...中文天堂在线一区| 麻豆精品在线播放| 欧美日韩免费高清一区色橹橹| 国产欧美日韩在线观看| 六月丁香综合在线视频| 欧美四级电影网| 亚洲人123区| 成年人国产精品| 久久综合狠狠综合久久综合88 | 久草在线在线精品观看| 欧美中文字幕不卡| 亚洲欧洲www| 国产精品一级黄| 精品久久久久久久久久久院品网| 亚洲午夜影视影院在线观看| 99国内精品久久| 国产精品久久久久久久久晋中| 韩国成人在线视频| 日韩免费一区二区三区在线播放| 午夜欧美视频在线观看| 色天天综合色天天久久| 日韩毛片高清在线播放| 成人国产精品免费网站| 亚洲国产激情av| 国产99精品视频| 久久精品亚洲精品国产欧美kt∨| 韩国av一区二区三区| 欧美精品一区二区在线播放| 久久99国产精品免费| 欧美电影免费观看高清完整版在线观看| 丝袜诱惑亚洲看片| 3d动漫精品啪啪一区二区竹菊| 性做久久久久久免费观看| 欧美日韩一区二区三区视频| 亚洲永久免费av| 欧美日本免费一区二区三区| 亚洲成av人片www| 欧美一三区三区四区免费在线看| 日韩成人免费看| 欧美第一区第二区| 国产成人精品一区二区三区网站观看| 国产午夜久久久久| a亚洲天堂av| 亚洲国产美女搞黄色| 欧美精品v日韩精品v韩国精品v| 日韩一区精品字幕| 欧美成人三级在线| 成人在线视频首页| 亚洲美女少妇撒尿| 欧美巨大另类极品videosbest | 99精品国产91久久久久久| 亚洲图片激情小说| 欧美日韩精品二区第二页| 奇米影视一区二区三区小说| 久久美女艺术照精彩视频福利播放| 国产成都精品91一区二区三| 亚洲日本在线看| 91精品蜜臀在线一区尤物| 国产一区二区不卡| 亚洲天堂av老司机| 在线91免费看| 国产成人在线视频免费播放|