⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 16巡检仪.searchresults

📁 16路巡检仪 该仪表采用c语言编写
💻 SEARCHRESULTS
📖 第 1 页 / 共 5 页
字号:
Head.h:#define		R				0x88			//LED显示符号"R"
Head.h:#define		s				0x92			//LED显示符号"S"
Head.h:#define		L				0XC7			//LED显示符号"L"
Head.h:#define		O				0xc0			//LED显示符号"O"
Head.h:#define		C				0XC6			//LED显示符号"C"
Head.h:#define		H				0x89			//LED显示符号"H"
Head.h:#define		n				0xc9			//LED显示符号"n"
Head.h:#define		DK				0xff			//LED显示符号"  "
Head.h:#define		y				0x91			//LED显示符号"y"
Head.h:#define		as				0xbf			//LED显示符号"-"
Head.h:#define		d				0xa1			//LED显示符号"d"
Head.h:#define		F				0x8e			//LED显示符号"F"
Head.h:#define		U				0xc1			//LED显示符号"U"
Head.h:#define 	Y 				0x8d			//LED显示符号"Y"
Head.h:#define		LK				0X87			//LED显示符号"E"
Head.h:#define		u				0xe3			//LED显示符号"u"
Head.h:#define		E				0x86			//LED显示符号"E"
Head.h:#define		b				0x83			//LED显示符号"b"
Head.h:sbit		KEYin=P1^2;				//键盘输入	
Head.h:sbit		DISDATA=P1^0;			//显示74HC164数据输出
Head.h:sbit     	DISCLK=P1^1;			//显示控制74HC164控制时钟
Head.h:sbit		INH1=P2^0;				//低16路采样选通位
Head.h:sbit		INH2=P2^7;				//高16路采样选通位
Head.h:sbit		CS0=P2^1;				//采样路选择位0
Head.h:sbit		CS1=P2^2;				//采样路选择位1
Head.h:sbit		CS2=P2^3;				//采样路选择位2				
Head.h:sbit 	 	VFA0=P2^4;				//采样路选择位0
Head.h:sbit 	 	VFA1=P2^5;				//采样路选择位1
Head.h:sbit 	 	VFA2=P2^6;				//采样路选择位2
Head.h:#define		road			16
Head.h:#define		type			16
Head.h:#define  	Screen  		8   	//LED数量
Head.h:#define  	displaydata    	P0		//设置显示数据输出I/O口
Head.h:#define  	settime			4		//设置LED刷新时间
Head.h:#define		LEDclk {	_nop_();\
Head.h:#define  	SET             1			//S键
Head.h:#define 	AM            	2			//AM键
Head.h:#define  	ADDdata         3			//加键
Head.h:#define  	SUBdata		 	4			//减键
Head.h:#define		VFGETTDELAY		20
Head.h:#define		cycontrol		P2
Head.h:#define		settime			4
Head.h:#define		VFGETT			200
Head.h:extern	void 		flashWB(uchar*buf,uchar sq,uint len);
Head.h:extern	void 		flashByteR(uchar *buf,uchar sq,uint sta,uint len);
Head.h:extern	void		flashFByteR(float *buf,uchar sq,uint sta,uint len)	;
Head.h:extern	void 		flashW(float*buf,uchar sq,uint len);
Head.h:extern	void	 	flashtW(int *buf,uchar sq,uint len);
Head.h:extern	void		flashtR(int*buf,uchar sq,uint sta,uint len);
Head.h:extern	void		KEYdeal();
Head.h:extern	void 		Hex2Bcd(signed int,uchar *hextemp);
Head.h:extern	void		LEDdeal(uchar k);
Head.h:extern	void		sysint();
Head.h:extern	void		VFdeal();
Head.h:extern	void 		VFstart(uchar roadn);
Hex to bcd.ASM:;					作者: lisenda
Hex to bcd.ASM:;					KEILC51调用格式: void Hex2Bcd(signed int,uchar *hextemp);
Hex to bcd.ASM:;					程序外部数据: unsigned char data BcdData[4];
Hex to bcd.ASM:;					EXTRN DATA(Fpublicvar)
Hex to bcd.ASM:;					MOV Fpublicvar,#0AH ;建负号标志
Instring.h:#ifndef __INTRINS_H__
Instring.h:#define __INTRINS_H__
Instring.h:extern void          _nop_     (void);
Instring.h:extern bit           _testbit_ (bit);
Instring.h:extern unsigned char _cror_    (unsigned char, unsigned char);
Instring.h:extern unsigned int  _iror_    (unsigned int,  unsigned char);
Instring.h:extern unsigned long _lror_    (unsigned long, unsigned char);
Instring.h:extern unsigned char _crol_    (unsigned char, unsigned char);
Instring.h:extern unsigned int  _irol_    (unsigned int,  unsigned char);
Instring.h:extern unsigned long _lrol_    (unsigned long, unsigned char);
Instring.h:extern unsigned char _chkfloat_(float);
Instring.h:#endif
Inttrup.c:#include <AT89X52.H>
Inttrup.c:#include "head.h"
Inttrup.c:extern	uchar	keyn,Chose,TMing1;
Inttrup.c:extern	uint	Sampldata1;
Inttrup.c:uint	xdata	SampldataG=0,Sampldata=0,TMing2=0;
Inttrup.c:uchar	count,kcout,jitter,jiasu,KEYbuf[4],VFnowt,Refreshtime=settime,countt=1;
Inttrup.c:bit		vfmark=0;
Inttrup.c:bit		vfcy;
Inttrup.c:extern	bit		cytwo;
Inttrup.c:void VFtime()
Inttrup.c:	if(vfmark==0)
Inttrup.c:		if(VFnowt==VFGETT)
Inttrup.c:		if(VFnowt==0)
Inttrup.c:				if(cytwo==0)
Inttrup.c:				if(cygnd==1)
Inttrup.c:					SampldataG=(uint)TH1<<8|(uint)TL1;
Inttrup.c:					{	if(cytwo==1)
Inttrup.c:							Sampldata1=(uint)TH1<<8|(uint)TL1;
Inttrup.c:							Sampldata=(uint)TH1<<8|(uint)TL1;
Inttrup.c:				if(cygnd==2)
Inttrup.c:void LEDtime()
Inttrup.c:	Refreshtime--;						//时间定为2MS刷新一次显示数据(当系统晶振为6MHZ)
Inttrup.c:	if(Refreshtime==0)
Inttrup.c:			Refreshtime=settime;		//重装刷新时间
Inttrup.c:			if(count<Screen) 			//判断是否扫描一遍LED
Inttrup.c:			if(txdat==0)				//当点亮的LED是第一个时,DISDATA为1,其余的为0
Inttrup.c:			displaydata=LEDbuf[txdat];
Inttrup.c:			if(KEYin==1)
Inttrup.c:			{	TMing2=0;
Inttrup.c:				switch(txdat)			//扫描哪个键盘被按下
Inttrup.c:			if(kcout>1)
Inttrup.c:			if(KEYbuf[0]==KEYbuf[1])	//扫描延时
Inttrup.c:				jitter++;				//判断键盘是否有没按下
Inttrup.c:				jitter=0;				//无键盘按下
Inttrup.c:			if(jitter==30)				//给键盘赋值
Inttrup.c:					jitter=0;	
Inttrup.c:			if(keyn==SET)
Inttrup.c:				TMing1++;
Inttrup.c:				TMing1=0;
Inttrup.c:				TMing2++;
Inttrup.c:void  Time0(void)interrupt	1   			//T0中断处理
Inttrup.c:	VFtime();    					//采样中断处理
Inttrup.c:	LEDtime();	 					// LED中断处理
KEYdeal.c:#include"	Head.h"
KEYdeal.c:#include "AT89X52.H"
KEYdeal.c:extern	uint		xdata	SampldataG,Sampldata;
KEYdeal.c:extern	int		xdata	kadat;
KEYdeal.c:extern	int		xdata	mimat;	
KEYdeal.c:extern	uchar	xdata	inputdat;
KEYdeal.c:extern	int		xdata	rangeL[16];
KEYdeal.c:extern	int		xdata	rangeH[16];
KEYdeal.c:extern	int		xdata	warmL[16];
KEYdeal.c:extern	int		xdata	warmH[16];
KEYdeal.c:extern	float	xdata	filt;
KEYdeal.c:extern	int		xdata	xjtime;
KEYdeal.c:extern	uchar	si[4];
KEYdeal.c:extern	uint	xdata	TMing2;
KEYdeal.c:uchar	keyn=0,TMing1=0;
KEYdeal.c:uchar	Chose=zcdisplay;
KEYdeal.c:bit		writen;			//写使能位
KEYdeal.c:bit		automic;			//手动和自动控制位;当该位为1时,手动控制,反之,则自动控制
KEYdeal.c:void		KEYdeal()
KEYdeal.c:	uint	leng,sysleng,funleng,temp;
KEYdeal.c:	bit	kt=1;
KEYdeal.c:	wk=inputdat-1;
KEYdeal.c:	if(keyn!=0)
KEYdeal.c:			if(dot[wk]==0)
KEYdeal.c:			else  if(dot[wk]==1)
KEYdeal.c:			else if(dot[wk]==2)
KEYdeal.c:			else	if(dot[wk]==3)
KEYdeal.c:			if(keyn==SET)
KEYdeal.c:					switch(Chose)
KEYdeal.c:						case zcdisplay:		//	if(TMing1>20)
KEYdeal.c:												Chose=mimadisplay;
KEYdeal.c:												TMing1=0;
KEYdeal.c:						case  mimadisplay://if(kadat==mimat)
KEYdeal.c:												Chose=mimasetdisplay;
KEYdeal.c:											//else if(mimat==10)
KEYdeal.c:											//	Chose=jianyandisplay;
KEYdeal.c:												Hex2Bcd(mimat,si);
KEYdeal.c:						case mimasetdisplay:	Chose=setdisplayst;
KEYdeal.c:												Hex2Bcd(kadat,si);
KEYdeal.c:						case	setdisplayst:	Chose=setdisplaysp;
KEYdeal.c:												if(writen==1)
KEYdeal.c:												Hex2Bcd(fundat,si);
KEYdeal.c:						case	setdisplaysp:	Chose=mimasetdisplay;
KEYdeal.c:												if(writen==1)
KEYdeal.c:						case	syscsdisplay:	Chose=syscs1;
KEYdeal.c:												Hex2Bcd(inputdat,si);
KEYdeal.c:												Hex2Bcd(typdat[wk],si);
KEYdeal.c:												if(writen==1)
KEYdeal.c:												Hex2Bcd(dot[wk],si);
KEYdeal.c:												if(writen==1)
KEYdeal.c:												Hex2Bcd(rangeL[wk],si);
KEYdeal.c:												if(writen==1)
KEYdeal.c:												Hex2Bcd(rangeH[wk],si);
KEYdeal.c:						case		syscs5:		Chose=syscsdisplay;
KEYdeal.c:												if(writen==1)
KEYdeal.c:						case	fundisplay:		if(fundat==2)
KEYdeal.c:												Hex2Bcd(warmd,si);
KEYdeal.c:												Hex2Bcd(warmH[wt],si);
KEYdeal.c:												if(writen==1)
KEYdeal.c:												Hex2Bcd(warmL[wt],si);
KEYdeal.c:												if(writen==1)
KEYdeal.c:												Hex2Bcd(warmdown[wt],si);
KEYdeal.c:												if(writen==1)
KEYdeal.c:												Hex2Bcd(warmscd[wt],si);
KEYdeal.c:						case		fun5:		Chose=fundisplay;
KEYdeal.c:												if(writen==1)
KEYdeal.c:						case  teshucsdisplay:	Chose=teshucs1;
KEYdeal.c:												Hex2Bcd(filt*10,si);
KEYdeal.c:												if(writen==1)
KEYdeal.c:												flashW(&filt, 18, 1);
KEYdeal.c:												Hex2Bcd(drt,si);
KEYdeal.c:												if(writen==1)
KEYdeal.c:												Hex2Bcd(xjtime,si);
KEYdeal.c:												if(writen==1)
KEYdeal.c:												flashtW(&xjtime, 20,1);
KEYdeal.c:												Hex2Bcd(collt,si);
KEYdeal.c:												if(writen==1)
KEYdeal.c:												Hex2Bcd(rady,si);
KEYdeal.c:												if(writen==1)
KEYdeal.c:												Hex2Bcd(bps,si);
KEYdeal.c:						case		teshucs6:	Chose=teshucsdisplay;
KEYdeal.c:												if(writen==1)
KEYdeal.c:						case	jianyandisplay:	Chose=jianyan1;
KEYdeal.c:						case		jianyan1:	Chose=jianyan2;
KEYdeal.c:												if(writen==1)
KEYdeal.c:						case		jianyan2:	Chose=jianyan3;
KEYdeal.c:												if(writen==1)
KEYdeal.c:						case		jianyan3:	Chose=jianyan4;
KEYdeal.c:												if(writen==1)
KEYdeal.c:						case		jianyan4:	Chose=jianyan5;
KEYdeal.c:												if(writen==1)
KEYdeal.c:						case		jianyan5:	Chose=jianyan6;
KEYdeal.c:						case		jianyan6:	Chose=jianyan7;
KEYdeal.c:												if(writen==1)
KEYdeal.c:						case		jianyan7:	Chose=jianyan8;
KEYdeal.c:												if(writen==1)
KEYdeal.c:						case		jianyan8:	Chose=jianyandisplay;
KEYdeal.c:												if(writen==1)
KEYdeal.c:					writen=0;
KEYdeal.c:					automic=0;
KEYdeal.c:			else if(keyn==ADDdata)
KEYdeal.c:				{	switch(Chose)
KEYdeal.c:						case	mimasetdisplay:	Chose=teshucsdisplay;
KEYdeal.c:						case	syscsdisplay:	Chose=mimasetdisplay;
KEYdeal.c:						case	fundisplay:		Chose=syscsdisplay;
KEYdeal.c:						case	teshucsdisplay:	Chose=fundisplay;
KEYdeal.c:						case	mimadisplay:	if(mimat<9999)
KEYdeal.c:													mimat++;
KEYdeal.c:												Hex2Bcd(mimat,si);
KEYdeal.c:						case	setdisplayst:	if(kadat<9999)
KEYdeal.c:												Hex2Bcd(kadat,si);
KEYdeal.c:												writen=1;
KEYdeal.c:						case	setdisplaysp:	if(fundat<2)
KEYdeal.c:												Hex2Bcd(fundat,si);
KEYdeal.c:												writen=1;
KEYdeal.c:						case		syscs1:		if(inputdat<road)
KEYdeal.c:													inputdat++;
KEYdeal.c:												Hex2Bcd(inputdat,si);
KEYdeal.c:												writen=1;
KEYdeal.c:						case		syscs2:		if(typdat[wk]<type)
KEYdeal.c:												Hex2Bcd(typdat[wk],si);
KEYdeal.c:												writen=1;
KEYdeal.c:						case		syscs3:		if(dot[wk]<3)
KEYdeal.c:												Hex2Bcd(dot[wk],si);
KEYdeal.c:												writen=1;
KEYdeal.c:						case		syscs4:		if(rangeL[wk]<rdatH)
KEYdeal.c:												Hex2Bcd(rangeL[wk],si);
KEYdeal.c:												writen=1;
KEYdeal.c:						case		syscs5:		if(rangeH[wk]<rdatH)
KEYdeal.c:												Hex2Bcd(rangeH[wk],si);
KEYdeal.c:												writen=1;
KEYdeal.c:						case		fun1:		if(warmd<road)
KEYdeal.c:												Hex2Bcd(warmd,si);
KEYdeal.c:												writen=1;
KEYdeal.c:						case		fun2:		if(warmH[wt]<9999)
KEYdeal.c:												Hex2Bcd(warmH[wt],si);
KEYdeal.c:												writen=1;
KEYdeal.c:						case		fun3:		if(warmL[wt]<9999)
KEYdeal.c:												Hex2Bcd(warmL[wt],si);
KEYdeal.c:												writen=1;
KEYdeal.c:						case		fun4:		if(warmdown[wt]<100)
KEYdeal.c:												Hex2Bcd(warmdown[wt],si);
KEYdeal.c:												writen=1;
KEYdeal.c:						case		fun5:		if(warmscd[wt]<3)
KEYdeal.c:												Hex2Bcd(warmscd[wt],si);
KEYdeal.c:												writen=1;
KEYdeal.c:						case		teshucs1:	if(filt<0.9)
KEYdeal.c:													filt+=0.1;
KEYdeal.c:												Hex2Bcd(filt*10,si);
KEYdeal.c:												writen=1;
KEYdeal.c:						case		teshucs2:	if(drt<3)
KEYdeal.c:												Hex2Bcd(drt,si);
KEYdeal.c:												writen=1;
KEYdeal.c:						case		teshucs3:	if(xjtime<9999)
KEYdeal.c:													xjtime++;
KEYdeal.c:												Hex2Bcd(xjtime,si);
KEYdeal.c:												writen=1;
KEYdeal.c:						case		teshucs4:	if(collt<2)
KEYdeal.c:												Hex2Bcd(collt,si);
KEYdeal.c:												writen=1;
KEYdeal.c:						case		teshucs5:	if(rady<255)
KEYdeal.c:												Hex2Bcd(rady,si);
KEYdeal.c:												writen=1;
KEYdeal.c:						case		teshucs6:	if(bps<4)
KEYdeal.c:												Hex2Bcd(bps,si);
KEYdeal.c:												writen=1;
KEYdeal.c:						case		jianyan1:	t0=50.0/temp;
KEYdeal.c:												writen=1;
KEYdeal.c:						case		jianyan2:	mv=500.0/temp;
KEYdeal.c:												writen=1;
KEYdeal.c:						case		jianyan3:	bsdatH=20.0/temp;
KEYdeal.c:												writen=1;
KEYdeal.c:						case		jianyan4:	bsdatL=4.0/temp;
KEYdeal.c:												writen=1;
KEYdeal.c:						case		jianyan5:	if(port<road)
KEYdeal.c:												Hex2Bcd(port,si);
KEYdeal.c:						case		jianyan6:	AR[port]=500.0/temp;
KEYdeal.c:												writen=1;
KEYdeal.c:						case		jianyan7:	IR[port]=500.0/temp;
KEYdeal.c:												writen=1;
KEYdeal.c:						case		jianyan8:	VR[port]=500.0/temp;
KEYdeal.c:												writen=1;
KEYdeal.c:						automic=0;
KEYdeal.c:			else	if(keyn==SUBdata)
KEYdeal.c:					switch(Chose)
KEYdeal.c:						case	mimasetdisplay:	Chose=syscsdisplay;
KEYdeal.c:						case	syscsdisplay:	Chose=fundisplay;
KEYdeal.c:						case	fundisplay:		Chose=teshucsdisplay;

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -