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

📄 globedef.h

📁 一个带收音的功放程序, VFD显示驱动用一个非常实用的方法, 稍加修改即可换成不同的VFD, 功放芯片用M61538
💻 H
字号:
#ifndef __GLOBEDEF_H__
#define __GLOBEDEF_H__


#define 	HIGH 		1
#define 	LOW			0
#define 	TRUE		1
#define 	FALSE		0

#define     Volume_Max  60
#define     Volume_Min  0

typedef	 	unsigned char			BYTE;
typedef	  	unsigned short			WORD;
typedef	  	unsigned long			DWORD;
typedef	  	signed char				SignBYTE;
typedef	  	void              		VOID;
#define 	EXT         			extern
#define 	PAGE_RAM				pdata
#define 	EXT_RAM					xdata
#define 	HIGH_RAM				idata
#define 	CODE_ROM				code
#define     NULL				    (void *)0

sbit 		M61538_DATA     = P0^0;
sbit 		M61538_CLK      = P0^1;

//2CH OR 5CH select
sbit 		CD4053_SELECT   = P0^2;

sbit 		VFD_CS          = P1^4;
sbit 		VFD_CLK         = P1^5;
sbit 		VFD_DATA        = P1^6;

//3 channel 2ch select
sbit 		Pin_4052A       = P2^6;
sbit 		Pin_4052B       = P2^7;

sbit 		Pin_I2CSCL      = P3^6;
sbit 		Pin_I2CSDA      = P3^7;

sbit		Vocal_Ctrl_2    = P3^4;
sbit 		Jog_A_Input     = P3^0;
sbit 		AV_STANDBY      = P1^0;
sbit 		Jog_B_Input     = P3^1;

#define 	CLEAR_VFD_CLK 			(VFD_CLK = 0)
#define     SET_VFD_CLK    		 	(VFD_CLK = 1)
#define     CLEAR_VFD_DATA 		 	(VFD_DATA = 0)
#define     SET_VFD_DATA   		 	(VFD_DATA = 1)
#define     CLEAR_VFD_CS    		(VFD_CS = 0)
#define     SET_VFD_CS      		(VFD_CS = 1)
#define     VFD_DATA_HIGH   		(VFD_DATA & 0x1)
#define     TRISTATE_DATA   		(SET_VFD_DATA)

#define 	CLEAR_M61538_CLK 		(M61538_CLK = 0)
#define     SET_M61538_CLK	    	(M61538_CLK = 1)
#define     CLEAR_M61538_DATA  		(M61538_DATA = 0)
#define     SET_M61538_DATA    		(M61538_DATA = 1)

#define 	LowByte(x)   			(BYTE)(x & 0xff)
#define 	HighByte(x)  			(BYTE)((x & 0xff00)>>8)
#define 	Low4Bit(x)   			(BYTE)(x & 0xf)
#define 	High4Bit(x)  			(BYTE)((x & 0xf0) >> 4)
#define 	IR_SYSTEM_CODE          0xFF


//STC MCU具有关掉ALE的功能
#define     USE_STC_MCU
#ifdef      USE_STC_MCU
sfr AUXR = 0x8E;
#endif

enum InputMode
{
	STANDBY 	= 0,
	TUNER 		= 1,
	AUX1 		= 2,
	AUX2 		= 3,
	CH5         = 4
	
};

enum VolumeChannel
{
	TOTAL_VOLUME      = 0,
	FrontL_VOLUME     = 1,
	FrontR_VOLUME     = 2,

	SUBWOOFER_VOLUME  = 3,
	CENTER_VOLUME     = 4,
	SURROUNDL_VOLUME  = 5,
	SURROUNDR_VOLUME  = 6
};

enum VolumeTune
{
	ALLCH_Vol 	= 0,
	FLR_Vol     = 1,
	BASSCEN_Vol = 2,	
	SLR_Vol     = 3	
};




#ifdef      Variable_GLOBE
#define     VAR_EXT
#else
#define     VAR_EXT  extern
#endif

VAR_EXT 	BYTE	 Current_Key;
VAR_EXT	    BYTE	 Current_State;
VAR_EXT		BYTE     POWER_Status;
VAR_EXT		BYTE     Mute_Switch;

VAR_EXT		BYTE     IR_KeyAct;
VAR_EXT		WORD     RepCount;
VAR_EXT		BYTE     Jog_KeyAct;
VAR_EXT		BYTE     Jog_Key;
VAR_EXT		BYTE     Jog_A_Buffer;
VAR_EXT		BYTE     Jog_B_Buffer;
VAR_EXT		BYTE     Panel_KeyAct;
VAR_EXT		BYTE     Panel_Key;
VAR_EXT		BYTE 	 IrState;
VAR_EXT		WORD 	 IRDataTemp;
VAR_EXT		BYTE 	 IRDataCount;
VAR_EXT		BYTE 	 Remote_value;

VAR_EXT     BYTE     VOLUME_CHANNEL[7];
VAR_EXT     BYTE     ReadKey_Timer;
VAR_EXT     BYTE     Volume_Key_Dealed;
VAR_EXT		BYTE     Current_Remote_In;

//这个变量很重要, 是关系到所有显示的定时时间
VAR_EXT     WORD     TO_MAIN_DISPLAY;
VAR_EXT     BYTE     Volume_Control;
VAR_EXT     BYTE     Key_Timer;
VAR_EXT     BYTE  	 FUNCTION_Count;
VAR_EXT     BYTE     FMAM_PRESSED;//FM/AM与autoscan复用
VAR_EXT     BYTE     Digital_Number;
VAR_EXT     BYTE     String_Display[5];
VAR_EXT     BYTE     VOL_Difference;
VAR_EXT     BYTE 	 FLASH_TEMP;
#endif

⌨️ 快捷键说明

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