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

📄 mymainedited1

📁 这是符合国家一级汉字标准的汉字显示液晶模块程序
💻
字号:
#pragma	SFR		//special function register
#pragma NOP
#pragma	DI
#pragma	EI

/*
**PROJECT	= HDTV REMOTE CONTROL RECEPTION PROCESSING
**MODULE	= MyMainModi.c
**SHORT DESC.	= Main programme 
**DEVICE	= UPD789417
**VERSION	= 0.1
**DATE		= 03.07.2003
**LAST CHANGE	= -
*/

#include "MyDefine.h"
#include "Main.h"
#include "MyCommIO.h"
#include <string.h>

#define		s_g_LCDLEDCTL	P0.1		//set to 0 when initialized
#define		s_g_LCDPWRCTL	P0.2		//set to 0 when initialized
#define		s_g_RST		P9.0 

extern void InitReceive();
Uchar getASCII(Uchar dataCode);
Uchar getIrKey(Uchar dataCode);

extern bit g_btRPT;			//g_btRPT -- RePeaT(flag for repeat valid time)
extern bit g_btRMDTSET;		//g_btRMDTSET -- ReMote DaTa SET

extern sreg Uchar g_TempRMDATA;

//2003-10-30 10:49
extern void GetDataFromReception();
extern void CommReceptionEnabled();
extern void InitializeCom();
extern void SetDataTransmitBuffer();

extern Uchar g_bufTransmit[SERIAL_BUF_TRANSMIT];		//Transmit buffer
extern sreg Uchar *g_p_bufTransmit;
extern Uchar g_keyValue; 

//extern Uchar hanZiByteAmount;     //2003-10-30 15:20
//2003-10-30 10:49

bit g_btReceptionEnd;
bit g_btTransmitStart;
bit btHanziEnable;
//2003-10-30 10:50

Uchar *ChinCharStr;

//main programme for test
int main(void)
{	
	Uchar keyValue;	
	
	Uchar keyASCIIValue;	
				
	char pinYin[7];
	
	char pinYinVar[7] = {0x00, 0x00, 0x00, 0x00, 0x00,0x00, 0x00};
			
	Uchar letterCnt = 0;
	
	DI();
	
	
	PCC = 0X00;	//fx:5.0MHz(0.2us)(Processor clock control register)	
	SCKM = 0x01;	//not use subsystem clock(Suboscillation mode register)	
	CSS = 0x00;	//use main system clock(Subclock contol register)
	      
	PM0 = 0xF0;	//PORT0 is all set to output mode--  
							//P0.0:LCD_E2; P0.1:LCD_Ctl; P0.2:LCD_VDD(WR_Ctl); 
							//P0.3:unused
							
	PM2 = 0x14;	//PORT2 is set to 00010100b. 
		  	      //output mode-P2.0:MAX_Power_ctl;P2.1:TXD;P2.3:unused;
		  	      //						P2.5:IIC_SCK;P2.6:IIC_SYNC;P2.7:unused; 	
		  	      //input mode-P2.2:RXD; P2.4/INTP0:Infrared Reception;		
		  	      	 		
	PM4 = 0xFF;	//PORT4 is set to input mode(switch DIP-8).	
	
	//PORT5.3 is set to output mode, and PORT5.0~PORT5.2 are unused.
	PM5 = 0xFC;		
	
	PM8 = 0x00;	//PORT8 is all set to output mode.
	
	//PORT9 including only PORT9.0, PORT9.1, PORT9.2 and PORT9.3, 
	//is all set to output mode.      
	PM9 = 0x00;	
	
	//PU00:PU0.0(PORT0)--doesn't use on-chip pull-up resistor;							
	//PU04:PU0.4(PORT4)--uses on-chip pull-up resistor. 	   
	PU0 = 0x10;		
	
	//input mode-P2.2:RXD; P2.4/INTP0:Infrared Reception.  			
	//The others are output mode. P2.5, P2.6 用外部上拉(不用内部的上拉).
	PU1 = 0x14;	
		
	PU2 = 0x00;	//PORT8&PORT9 don't use on-chip pull-up resistor
		
	LCDM0.7 = 0x00;	//LCD Display OFF(LCD Display Mode Register)
		
	LPS0 = 0x00;	//PORT8 and PORT9 are used as ports
	
	ADCS0 = 0x00;	//disable AD conversion 

	PIF0 = 0;		 
	PMK0 = 1;	//disable INTP0

	//注意须加入看门狗定时器:1、启动看门狗定时器;2、每隔一段程序看门狗清零。
	
	CR01 = 0x1c;	//Resolution -- 51.2 us
	TMC01 =	0x82;	//8bitTimer1 is set to 1.5ms
	
	CR02 = 0x74;	//Resolution -- 25.6 us  03-7-3 15:12
	TMC02 =	0x82;	//8bitTimer2 is set to 3ms and disabled.
	
	//2003-9-25 14:26
	TMMK01 = 0; 	// Enable INTTM1 
	
	TMMK02 = 0; 	// Enable INTTM2
		
  InitReceive();

	InitializeCom();
	
	s_g_LCDPWRCTL = 1;
	s_g_LCDLEDCTL = 1;	
	
  EI();
   	
  s_g_RST	= 0;
	s_g_RST	= 1;		//置为

⌨️ 快捷键说明

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