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

📄 passat_tester.h

📁 PIC16f876制作的空调控制器测试仪 源码 图纸全部资料
💻 H
字号:
#define uint unsigned int
#define uchar unsigned char



#define bitset(var, bitno) ((var) |=  (1<<(bitno)))
#define bitclr(var, bitno) ((var) &= ~(1<<(bitno)))

#define led_status_clk_0	bitclr(PORTB,1)
#define led_status_clk_1	bitset(PORTB,1)
#define led_status_dat_0	bitclr(PORTB,2)
#define led_status_dat_1	bitset(PORTB,2)

#define volatage_clk_0	bitclr(PORTC,1)
#define volatage_clk_1	bitset(PORTC,1)
#define volatage_dat_0	bitclr(PORTC,0)
#define volatage_dat_1	bitset(PORTC,0)
#define relay_con_0		bitclr(PORTC,2)
#define relay_con_1		bitset(PORTC,2)

#define led_success_on	bitclr(PORTA,3)
#define led_success_off	bitset(PORTA,3)
#define led_failure_on	bitclr(PORTA,4)
#define led_failure_off	bitset(PORTA,4)
#define pass_led_status	 	led_success_on;led_failure_off
#define failure_led_status  led_failure_on;led_success_off
#define led_reset 			led_failure_off;led_success_off



#define volatage_out_con_0	bitclr(PORTA,5)
#define volatage_out_con_1	bitset(PORTA,5)

#define beep_con_off	    bitclr(PORTC,5)
#define beep_con_on     	bitset(PORTC,5)

#define key_auto RB0
#define key_hand RB3
#define key_save RB4
#define key_stop RB5


#define rang_left_right 20

#define delay_rang_long  0xffff  ///10M about 4second
#define delay_rang_mid   0x5ff
#define delay_rang_short 0xff

static volatile unsigned char acc @ 0x20;
static volatile bit acc0     @ (unsigned)&acc*8+0;
static volatile bit acc7     @ (unsigned)&acc*8+7;

static volatile unsigned char err @ 0x21;
static volatile bit err0     @ (unsigned)&err*8+0;
static volatile bit err3     @ (unsigned)&err*8+3;
static volatile bit err6     @ (unsigned)&err*8+6;
static volatile bit err7     @ (unsigned)&err*8+7;
/*
#define  SCL   RC3 //1  ;24C01-6
#define  SDA   RC4 //2  ;24C01-5
#define  SCLIO  TRISC //1
#define  SDAIO  TRISC //2
#define  SLAW   0x0A0//寻址字节写
#define  SLAR   0x0A1//寻址字节读

  
*/

#define  nop()  asm("nop")          //定义nop()函数

	const char tab[]={0x3F,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x40,0x00,0x71,0x37};//0-9,-,全灭,f,n //定义常数0-9的数据表格

	const char standder[1]=0x00;

	const uchar voltage_tab[8]={0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80};//control_vol_out_table_code
			
    bank1 uchar disp_data_buffer[9]={13,13,13,13,13,13,13,13,13};
	//uchar  Reeprom[4];
	//13.2 v system vol tab
    const uchar standder_data[]=
		{0,9,0,0,//1
		 0,8,0,6,//2
		 0,7,0,6,//3
		 0,6,0,9,//4
		 0,4,0,3,//5
		 0,3,0,7,//6
		 0,0,8,8 //7		
	}; //标准数据缓冲区
/*
	//13.2 v system vol tab
    const uchar standder_data[]=
		{1,0,9,8,// step 1
		 0,8,9,4,//step 2
		 0,7,6,8,//step 3
		 0,5,5,0,//step 4
		 0,4,4,8,//step 5
		 0,4,1,0,//step 6
		 0,0,6,0 //step 7			
	}; //标准数据缓冲区
*/	
	unsigned char N,M;
	//bank1 unsigned short int ad[2];
	bank1 float AD_GET[2];
	uchar hand_step=0x00; 
	uchar auto_step=0x00;
	//14K 16K 18K 20K 22K 24K 50K
	//用于存放A/D、D/A的结果
union ad_re
{
int Y1;
unsigned char ad[2];
}adresult;
////////////////////////////----------------------------------------------
 void delay(uint control);              //delay函数申明DELAY
 void DELAY(unsigned int delay_temp);              //delay函数申明
 void init(void);               //I/O口初始化函数申明
 void led_status_seg(char dat);
 void refrush_display(void);
 void key_proccess(void);
 void auto_test_process(void);
 void hand_test_process(void);
 void ad_go(char channel);
 void init(void);
 void data_caculator_change_format(void);
 void system_initial(void);
 void write_eeprom ( void );
 void read_eeprom( void );
 void data_save_process(uchar step);
 void beep(uchar type);
 uchar quality_look(uchar step);
 //----------------------------------------------------------------
 const unsigned char PWM[8]={0x00,0X34,0X44,0X55,0X6a,0X99,0xb7,0Xff};		

⌨️ 快捷键说明

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