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

📄 define.h

📁 mtv230 的源程序,供大家参考.
💻 H
字号:
/***********************************************************************
* Project:      MTV230+CS7110+UPS017                                                        
*                                                                                                                          
* File:         MAIN.c (Source)                                                                                  
*                                                                                                                          
* Version:      V1.0                                                                                               
*                                                                                                                          
* Created:      2004.11.2                                                                                      
* Last Change:    2005.7.11                                                                                 
*                                                                                                                          
* Author:       Yuan K                                                                                         
*							       			   			  	       	    
* Company:		MYSON										       	    
*                                                                                                                         
* Compiler:     KEIL C51 V7.04                                                                              
*                                                                                                                         
* Description:  									                                       
*			                                             			                                       
* MTV230(@12MHz)                                    	       	                            	    
*
*Copyright (c) Century Integration Technology, Inc.
*All rights reserved.
*
***********************************************************************/
#ifndef __DEFINE_H

#define __DEFINE_H

#include "REG8051.h"

#define PowerCtrl byM230_Port46

#define	USE_WD

#define   TIME_BASE1   2     // ms

#define   MAKEWORD(V1,V2)	(((WORD)(V1)<<8)+(((WORD)(V2))))
#define   LoByte(w)      	((BYTE)(w))
#define   HiByte(w)      	((BYTE)(((WORD)(w) >> 8) & 0xFF))
#define   LoNibble(w)      ((BYTE)(w) & 0x0F)
#define   HiNibble(w)      ((BYTE)(((BYTE)(w) >> 4)   & 0x0F))
#define   MakeByte(x,y)  	(BYTE)((BYTE)x << 4 | y)
#define   Max(a,b)         (((a) > (b)) ? (a) : (b))
#define   Min(a,b)         (((a) < (b)) ? (a) : (b))
#define   Abs(a,b)         (((a) > (b)) ? (a-b) : (b-a))
#define   SetBit(byData,nBit)\
         byData=(byData | ((BYTE) (1)   << nBit))
#define   ClrBit(byData,nBit)\
         byData=(byData & ~((BYTE) (1) << nBit))
#define   ValBit(byData,nBit)\
         ((byData & ((BYTE) (1) << nBit)))
#define  Get_Timer(T)      (T * 4)           // T sec

typedef    bit	  BIT;
typedef    unsigned char	BYTE;
typedef    unsigned char	uchar;
typedef    unsigned int		WORD;
typedef    unsigned long	LWORD;
typedef    unsigned long	LONG;
typedef    BYTE *			PTBYTE;
typedef    WORD *		PTWORD;

union	work          
{			
	WORD ui;		  		  // 16bit		
	BYTE uc[2];		  	  // 8bit * 2	
};

//keypad operation constant
#define NO_KEY		0
#define POWER_KEY	1
#define MODE_KEY	2
#define DOWN_KEY	3
#define UP_KEY		4
#define SOURCE_KEY	5

//key press
#define pressMODE	((P1_3&0x01)==0)		//定式!!!!!!!
#define pressUP		((P1_2&0x01)==0)
#define pressDOWN	((P1_4&0x01)==0)
#define pressSOURCE	((P1_0&0x01)==0)
#define pressPOWER	((P1_1&0x01)==0)

//define key disable interval time
#define KEY_DISABLE_COUNT	3000		

//PASSWORD
#define PASSH		0x37	
#define PASSL		0x23	

//slave address
#define EEPROM_ADDRESS 0xA0
#define WRSel	0
#define RDSel	1

#define	EEPROM_WAIT		8		


//reset data
#define Reset_BRI	0xB5
#define Reset_CON	0xB5
#define Reset_COL	0xB0
#define Reset_TINT	0xC0


//EEPROM map
#define EAD_PASSH	0x00
#define EAD_PASSL	0x05
#define EAD_COL		0x30
#define EAD_CON		0x20
#define EAD_BRI		0x10
#define EAD_TINT	0x40

//register data max limit
#define ColorX		0xFF//150
#define ContrastX		0xEF
#define ComAmpX	0xDF//155
#define TintX			0xFF

//register data min limit
#define ColorN		0x60//0x00
#define ContrastN	0x78//60			//2004.6.12 debug
#define ComAmpN	0x70//45
#define TintN			0x80//0x00

//define screen display parameter
// OSD start address
#define VETICAL 3
#define VETICAL_FIR	2
#define HORIZON_N 10
#define HORIZON_P 12
#define VETICAL_LEN 20
#define VETICAL_FAC	9
#define VETICAL_SEC	VETICAL_FIR+VETICAL_FAC+6

//OSD font  ****************************			MTV130P-01.pat
#define	__	0x00
#define	_0	0x01
#define	_1	0x02
#define	_2	0x03
#define	_3	0x04
#define	_4	0x05
#define	_5	0x06
#define	_6	0x07
#define	_7	0x08
#define	_8	0x09
#define	_9	0x0a

#define	_A	0x0b 
#define	_B	0x0c
#define	_C	0x0d
#define	_D	0x0e
#define	_E	0x0f
#define	_F	0x10
#define	_G	0x11
#define	_H	0x12
#define	_I	0x13
#define	_J	0x14
#define	_K	0x15
#define	_L	0x16
#define	_M	0x17
#define	_N	0x18
#define	_O	0x01//_0
#define	_P	0x19
#define	_Q	0x1a
#define	_R	0x1b
#define	_S	0x1c
#define	_T	0x1d
#define	_U	0x1e
#define	_V	0x1f
#define	_W	0x20
#define	_X	0x21
#define	_Y	0x22
#define	_Z	0x23

#define	_a	0x24
#define	_b	0x25
#define	_c	0x26
#define	_d	0x27
#define	_e	0x28
#define	_f	0x29
#define	_g	0x2a
#define	_h	0x2b
#define	_i	0x2c
#define	_j	0x2d
#define	_k	0x2e
#define	_l	0x2f
#define	_m	0x30
#define	_n	0x31
#define	_o	0x32
#define	_p	0x33
#define	_q	0x34
#define	_r	0x35
#define	_s	0x36
#define	_t	0x37
#define	_u	0x38
#define	_v	0x39
#define	_w	0x3a
#define	_x	0x3b
#define	_y	0x3c
#define	_z	0x3d

#define	_DOT	0x76		// .
#define _COM	 0x77			// :
#define	_UP	    0x7b			//向上的箭头
#define	_DOWN   0x7c
#define	_LEFT	0x7d
#define	_RIGHT  0x7e
#define	_PLUS	0x72		// +
#define	_DASH	0x73		// -
#define	_PERSENT 0x74		// %
#define	_SLASH	0x75		// /
#define _UNDERLINE 	0x70	//
#define _STAR	0x6F		//
#define DataEnd	0xfe		//

#define 	_hand	0x8B

#define	_BAR_F		0x81	//
#define	_BAR_2		0x83	//
//#define	_BAR_1		0x1bf	//
#define	_BAR_EMP	0x85	//
#define	_BAR_S		0x80
#define	_BAR_END	0x86

#define _Brightness_L 	0xAC
#define _Brightness_R	0xAD
#define _Color_L		0xB0
#define _Color_R		0xB1
#define _Contrast_L	0xAE 
#define _Contrast_R	0xAF
#define _Tint_L		0xF8
#define _Tint_R		0xF9
#define _Picture_L	0xF6
#define _Picture_R	0xF7


//chinese char
#define _liang              0x19c
#define _du                  0x19d
#define _dui                 0x19e
#define _bi                   0x19f
#define _se                  0x15d
#define _diao               0x14d
#define _cai                  0x1d4
#define _zhi             0x16d
#define _shi              0x178
#define _mu              0x177
#define _shi_fan              0x13f
#define _xian              0x1d5
#define _tiao			0x108
#define _zheng 		0x109
#define _she			0x11d
#define _ding 		0x11e






//OSD color******************
#define black		0x00
#define blue		0x01
#define green	0x02
#define cyan		0x03
#define red		0x04
#define magent	0x05
#define yellow	0x06
#define white		0x07

#define OSD_ATTRIBUTE 	0x40
#define OSD_DISPLAY		0x00
#define SecondPage		0xff
#define OSD_ENABLE		0x80
#define OSD_ENABLE_B	0xC0
#define WEN_Clr			0x04
#define RAM_Clr			0x02
#define WEN_En			0x04
#define D_Height			0x02
#define D_Width			0x01
#define RINT				0x04


//declare MTV230 register
extern BYTE xdata byM230_PadMode1;//  _at_ 0xF2B; // HIICE IIICE HVE HclpE - - FclkE P62E
extern BYTE xdata byM230_PadMode2;//  _at_ 0xF2C; // DA3E  DA2E DA1E DA0E AD3E AD2E AD1E AD0E
extern BYTE xdata byM230_PadMode3;//  _at_ 0xF2D; // P47oe P46oe P45oe P44oe P43oe P42oe P41oe P40oe
extern BYTE xdata byM230_PadMode4;//  _at_ 0xF2E; // P57oe P56oe P55oe P54oe P53oe P52oe P51oe P50oe
extern BYTE xdata byM230_Option1;//   _at_ 0xF2F; // PWMF DIV253 SlvAbs1 SlvAbs0 ENSCL Msel MIICF1 MIICF0


//I/O ports
extern BYTE xdata byM230_Port40;//    _at_ 0xF30;
extern BYTE xdata byM230_Port41;//    _at_ 0xF31;
extern BYTE xdata byM230_Port42;//    _at_ 0xF32;
extern BYTE xdata byM230_Port43;//    _at_ 0xF33;
extern BYTE xdata byM230_Port44;//    _at_ 0xF34;
extern BYTE xdata byM230_Port45;//    _at_ 0xF35;
extern BYTE xdata byM230_Port46;//    _at_ 0xF36;
extern BYTE xdata byM230_Port47;//    _at_ 0xF37;


extern BYTE xdata byM230_Port50;//    _at_ 0xF38;
extern BYTE xdata byM230_Port51;//    _at_ 0xF39;
extern BYTE xdata byM230_Port52;//    _at_ 0xF3A;
extern BYTE xdata byM230_Port53;//    _at_ 0xF3B;
extern BYTE xdata byM230_Port54;//    _at_ 0xF3C;
extern BYTE xdata byM230_Port55;//    _at_ 0xF3D;
extern BYTE xdata byM230_Port56;//    _at_ 0xF3E;
extern BYTE xdata byM230_Port57;//    _at_ 0xF3F;
extern BYTE xdata byM230_Port60;
extern BYTE xdata byM230_Port61;
extern BYTE xdata byM230_Port62;//    _at_ 0xF2A;


// define MTV230M's PWM DAC register
extern BYTE xdata byM230_DA0;//	    _at_ 0xF20; // pulse width of PWM DAC0
extern BYTE xdata byM230_DA1;//	    _at_ 0xF21;
extern BYTE xdata byM230_DA2;//	    _at_ 0xF22;
extern BYTE xdata byM230_DA3;//	    _at_ 0xF23;

//define MTV230M's H/V Sync processor register
extern BYTE xdata byM230_HVSTUS;//    _at_ 0xF40; // CVpre - Hpol Vpol Hpre Vpre Hiff Voff
extern BYTE xdata byM230_HCNTH;//     _at_ 0xF41; // Hovf - HF13 HF12 HF11 HF10 HF9 HF8
extern BYTE xdata byM230_HCNTL;//     _at_ 0xF42; // HF7 HF6 HF5 HF4 HF3 HF2 HF1 HF0
extern BYTE xdata byM230_VCNTH;//     _at_ 0xF43; // Vvof - - - VF11 VF10 VF9 VF8
extern BYTE xdata byM230_VCNTL;//     _at_ 0xF44; // VF7 VF6 VF5 VF4 VF3 VF2 VF1 VF0
extern BYTE xdata byM230_INTFLG;//    _at_ 0xF48; // HPRchg VPRchg HPLchg VPLchg HFchg VFchg - Vsync
extern BYTE xdata byM230_INTEN;//     _at_ 0xF49; // EHPR EVPR EHPL EVPL EHF EVF - EVsync


//define MTV230's DDC&IIC's control
extern BYTE xdata byM230_IIC_CTR;//        _at_ 0xF00; // IIC interface control
extern BYTE xdata byM230_IIC_STUS1;//      _at_ 0xF01; // IIC interface status
extern BYTE xdata byM230_IIC_STUS2;//      _at_ 0xF02;
extern BYTE xdata byM230_IIC_INTEN;//	    _at_ 0xF04; // interrupt enable
extern BYTE xdata byM230_IIC_MBUF;//	    _at_ 0xF05; // master IIC data shiftregister
extern BYTE xdata byM230_IIC_TXRCABUF;//   _at_ 0xF06; // slave A IIC receive/transmit buffer 
extern BYTE xdata byM230_IIC_SLVAADR;//    _at_ 0xF07; // ENSlvA  slave A IIC address
extern BYTE xdata byM230_IIC_TXRCBBUF;//   _at_ 0xF08; // slave B IIC receive/transmit buffer
extern BYTE xdata byM230_IIC_SLVBADR;//    _at_ 0xF09; // ENSlvB  slave B IIC address
//BYTE xdata byM230_IIC_DBUF     _at_ 0xF0A;

// ISP
extern BYTE xdata byM230_ISPSLV;//         _at_ 0xF0B; // ISP slave address
extern BYTE xdata byM230_ISPEN;//          _at_ 0xF0C; // write 0x93H to enable ISP mode


//define MTV230's A/D converter
extern BYTE xdata byM230_WDT;//	    _at_ 0xF18; // WEN WCLR - - - WDT2 WDT1 WDT0

//define OSD register
extern BYTE xdata byM230_OSDRA;// 	     _at_ 0xFA0;
extern BYTE xdata byM230_OSDCA;//  	     _at_ 0xFA1;
extern BYTE xdata byM230_OSDDT0;//  	  _at_ 0xFA2;
extern BYTE xdata byM230_OSDDT1;//  	  _at_ 0xFA3;
//extern BYTE xdata byM230_WinReg[12];//   _at_ 0xFC0;
extern BYTE xdata byM230_W1ROW;//          _at_ 0xFC0;
extern BYTE xdata byM230_W1COL1;//         _at_ 0xFC1;
extern BYTE xdata byM230_W1COL2;//         _at_ 0xFC2;
extern BYTE xdata byM230_W2ROW;//          _at_ 0xFC3;
extern BYTE xdata byM230_W2COL1;//         _at_ 0xFC4;
extern BYTE xdata byM230_W2COL2;//         _at_ 0xFC5;
extern BYTE xdata byM230_W3ROW;//          _at_ 0xFC6;
extern BYTE xdata byM230_W3COL1;//         _at_ 0xFC7;
extern BYTE xdata byM230_W3COL2;//         _at_ 0xFC8;
extern BYTE xdata byM230_W4ROW;//          _at_ 0xFC9;
extern BYTE xdata byM230_W4COL1;//         _at_ 0xFCA;
extern BYTE xdata byM230_W4COL2;//         _at_ 0xFCB;
extern BYTE xdata byM230_VERTD;//  	     _at_ 0xFCC;
extern BYTE xdata byM230_HORD;//         _at_ 0xFCD;
extern BYTE xdata byM230_CH;// 		     _at_ 0xFCE;
extern BYTE xdata byM230_RSPACE;//  	  _at_ 0xFD0;
extern BYTE xdata byM230_OSDCON;//  	  _at_ 0xFD1;
extern BYTE xdata byM230_OSDCON1;//  	  _at_ 0xFD2;
extern BYTE xdata byM230_CHSC;//  	     _at_ 0xFD3;
extern BYTE xdata byM230_FSSTP;//  	     _at_ 0xFD4;
extern BYTE xdata byM230_WINSW;//  	     _at_ 0xFD5;
extern BYTE xdata byM230_WINSH;//  	     _at_ 0xFD6;
extern BYTE xdata byM230_WINSC;//  	     _at_ 0xFD7;
extern BYTE xdata byM230_WINSC1;//  	  _at_ 0xFD8;
extern BYTE xdata byM230_XDEL;//         _at_ 0xFD9;

#define	ENABLE_WD()	byM230_WDT=0x80 // 0x80
#define	DISABLE_WD() byM230_WDT=0x00
//#define  UPDATE_WD() byM230_WDT=0xC0

#endif

⌨️ 快捷键说明

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