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

📄 test2155.c

📁 E1测试仪软件(TMS320VC5410+DS2155)
💻 C
字号:
#include <stdio.h>

#include "test2155.h"
#include "global.h"

//int test_2155(int num);
int test_JP(void);

int test_YJ(void);
int test_CLK(void);
void testAudio(void);
void Delay(void);
static int writeCmd0(unsigned char block);
static int writeData0(unsigned char data);
static int readStatus0(void);
static int writeCmd1(unsigned char block);
static int writeData1(unsigned char data);
static int readStatus1(void);
static int writeCmd2(unsigned char block);
static int writeData2(unsigned char data);
static int readStatus2(void);
static int write(unsigned char* chara, unsigned char page,unsigned char colume);
static void initYJ(void);
static void clearLCD(void);
static int init2155(int num);
static void clearREG(int num);
static void initE1(int num);
static void clearTEST(int num);

static unsigned char AAA[8] = {0x000,0x07e,0x011,0x011,0x011,0x07e,0x000,0x000};
static unsigned char BBB[8] = {0x000,0x041,0x07f,0x049,0x049,0x036,0x000,0x000};

void main()
{
	unsigned char	datatemp;
	printf("Here We Go!!! \n");
		
	test_2155(1);
	test_2155(2);
		test_YJ();
/*
	test_JP();
	test_YJ();
	test_CLK();


	testAudio();	
	for(;;){
		Delay();
		//port18 = 0x01;
		//datatemp = port18;
		datatemp = port30;
		datatemp &=0xff;
		printf("Device 2155_1 REG INFO7 is: %x\n",datatemp);			
	}
*/	
}

void testAudio(void)
{
	port6001 = 0x0f;
	port6002 = 0x1c;
}

int test_2155(int num)
{
	unsigned char	datatemp;
	init2155(num);
	return OK; 
}

int test_JP(void)
{
	unsigned char	datatemp;
	//Delay(); 
	datatemp = port6000;
	printf("JP VALUE is: %x\n",datatemp);
	//Delay();	
	return OK; 
}

int test_YJ(void)
{
	int i;
	initYJ();
	clearLCD();
	//for(i=0;i<24;i++)
	write(AAA,6,10);
	write(BBB,7,20);
	printf("display ok!!!\n");	
	return OK; 
}

int test_CLK(void)
{
	unsigned char	year,month,date,day,hour,minutes,seconds;
/////////////////////////////////////year
//	portfff8 |= 0x80;
//	portffff = 4;
//	portfff8 &= 0x7f;

	portfff8 |= 0x40;
	year = portffff;
	year &=0xff;
	portfff8 &= 0xbf;
////////////////////////////////////month	
//	portfff8 |= 0x80;	
//	portfffe = 18;
//	portfff8 &= 0x7f;

	portfff8 |= 0x40;
	month = portfffe;
	month &=0x1f;
	portfff8 &= 0xbf;
////////////////////////////////////date
//	portfff8 |= 0x80;
//	portfffd = 4;
//	portfff8 &= 0x7f;
	
	portfff8 |= 0x40;
	date = portfffd;
	date &=0x3f;
	portfff8 &= 0xbf;
////////////////////////////////////day	
//	portfff8 |= 0x80;
//	portfffc = 1;
//	portfff8 &= 0x7f;
	
	portfff8 |= 0x40;
	day = portfffc;
	day &=0x07;
	portfff8 &= 0xbf;
///////////////////////////////////////hour	
//	portfff8 |= 0x80;
//	portfffb = 2;
//	portfff8 &= 0x7f;
	
	portfff8 |= 0x40;
	hour = portfffb;
	hour &=0x3f;
	portfff8 &= 0xbf;
/////////////////////////////////////////minutes	
//	portfff8 |= 0x80;
//	portfffa = 3;
//	portfff8 &= 0x7f;
	
	portfff8 |= 0x40;
	minutes = portfffa;
	minutes &= 0x7f;
	portfff8 &= 0xbf;
/////////////////////////////////////////seconds	
//	portfff8 |= 0x80;
//	portfff9 = 4;
//	portfff8 &= 0x7f;

	portfff8 |= 0x40;
	seconds = portfff9;
	seconds &=0xff;
	portfff8 &= 0xbf;
	//Delay();
	printf("CLK  VALUE is: %x-%x-%x %x:%x:%x  %x \n",year,month,date,hour,minutes,seconds,day);

	return OK; 
}

void Delay(void)
{
	int i,j;	
	for(i=1;i<0xf;i++){
   			for(j=1;j<0xffff;j++)
   				{;}
   	}    
}

static void initYJ(void)
{
	writeCmd0(0xc0); //set dispay start line
	writeCmd1(0xc0);
	writeCmd2(0xc0);
	
	writeCmd0(0x3f); //set open display
	writeCmd1(0x3f);
	writeCmd2(0x3f);
		
}

static void clearLCD(void)
{
	unsigned char page,pagecount;
	unsigned char colume,colcount;
	unsigned char data;
	for(pagecount = 0;pagecount<8;pagecount++) {
		page = 0xb8+pagecount;
		writeCmd0(page); //set page
		writeCmd1(page);
		writeCmd2(page);
	
		colume =0x40;
		writeCmd0(colume); //set page
		writeCmd1(colume);
		writeCmd2(colume);

		for(colcount = 0;colcount<0x40;colcount++) {	
			data = 0x00;
			writeData0(data);		
			writeData1(data);
			writeData2(data);
		}
	}
}

static int writeCmd0(unsigned char command)
{
	while(readStatus0()==ERROR) {
		//Delay();
		//printf("read busy...\n");
	}
	port4000 = command;
	return OK;
}

static int writeData0(unsigned char data)
{
	while(readStatus0()==ERROR) {
		//Delay();
		//printf("read busy...\n");
	}
	port4004 = data;
		return OK;
}

static int readData0(unsigned char *data)
{
	unsigned char datatemp = 0xff;
	while(readStatus0()==ERROR) {
		//Delay();
		//printf("read busy...\n");
	}
	*data = port4004;
	printf("read data is %x \n",datatemp);
	return OK;
}
 
static int readStatus0(void)
{
	unsigned char datatemp;
	datatemp = port4000;
	datatemp &= 0xff;
	if((datatemp&0x80) !=0) 
		return ERROR;
	return OK;
}
	
static int writeCmd1(unsigned char command)
{
	while(readStatus1()==ERROR) {
		//Delay();
		//printf("read busy...\n");
	}
	port4001 = command;
	return OK;
}

static int writeData1(unsigned char data)
{
	while(readStatus1()==ERROR) {
		//Delay();
		//printf("read busy...\n");
	}
	port4005 = data;
	return OK;
}

static int readData1(unsigned char *data)
{
	unsigned char datatemp = 0xff;
	while(readStatus1()==ERROR) {
		//Delay();
		//printf("read busy...\n");
	}
	*data = port4005;
	printf("read data is %x \n",datatemp);
	return OK;
}
 
static int readStatus1(void)
{
	unsigned char datatemp = 0xff;
	datatemp = port4001;
	datatemp &= 0xff;
	if((datatemp&0x80) !=0) 
		return ERROR;
	return OK;
}

static int writeCmd2(unsigned char command)
{
	while(readStatus2()==ERROR) {
		//Delay();
		//printf("read busy...\n");
	}
	port4002 = command;
	return OK;
}

static int writeData2(unsigned char data)
{
	while(readStatus2()==ERROR) {
		//Delay();
		//printf("read busy...\n");
	}
	port4006 = data;
	return OK;
}

static int readData2(unsigned char *data)
{
	unsigned char datatemp = 0xff;
	while(readStatus2()==ERROR) {
		//Delay();
		//printf("read busy...\n");
	}
	*data = port4006;
	printf("read data is %x \n",datatemp);
	return OK;
}
 
static int readStatus2(void)
{
	unsigned char datatemp = 0xff;
	datatemp = port4002;
	datatemp &= 0xff;
	if((datatemp&0x80) !=0) 
		return ERROR;
	return OK;

}

static int write(unsigned char* chara, unsigned char page,unsigned char colume)
{
	int charcount;

	page |=0xb8;
	
	if((colume>=0)&&(colume<8)) { 
		colume *=8;
		colume |=0x40;
		writeCmd0(page);	
		writeCmd0(colume);
		for(charcount = 0;charcount<8;charcount++) {
			writeData0(chara[charcount]);	
		}
	}
	else if((colume>=8)&&(colume<16)) {
		colume %=8;
		colume *=8;
		colume |=0x40;
		writeCmd1(page);	
		writeCmd1(colume);
		for(charcount = 0;charcount<8;charcount++) {
			writeData1(chara[charcount]);	
		}
	}
	else if((colume>=16)&&(colume<24)) {
		colume %=8;
		colume *=8;
		colume |=0x40;
		writeCmd2(page);	
		writeCmd2(colume);
		for(charcount = 0;charcount<8;charcount++) {
			writeData2(chara[charcount]);	
		}
	}

	return OK;
}

static int init2155(int num)
{

	clearTEST(num);
	clearREG(num);
	initE1(num);
	return OK;
}

static void clearTEST(int num)
{	
	if(num==1) {
		portf0 = 0;
		portf1 = 0;
		portf2 = 0;
		portf3 = 0;
		portf4 = 0;
		portf5 = 0;
		portf6 = 0;
		portf7 = 0;
		portf8 = 0;
		portf9 = 0;
		portfa = 0;
		portfb = 0;
		portfc = 0;
		portfd = 0;
		portfe = 0;
		portff = 0;					
	}
	else {
		port20f0 = 0;
		port20f1 = 0;
		port20f2 = 0;
		port20f3 = 0;
		port20f4 = 0;
		port20f5 = 0;
		port20f6 = 0;
		port20f7 = 0;
		port20f8 = 0;
		port20f9 = 0;
		port20fa = 0;
		port20fb = 0;
		port20fc = 0;
		port20fd = 0;
		port20fe = 0;
		port20ff = 0;	
	}
}

static void clearREG(int num)
{	
	if(num==1) {
		port0 = 0;port1 = 0;port2 = 0;port3 = 0;port4 = 0;port5 = 0;port6 = 0;port7 = 0;
		port8 = 0;port9 = 0;porta = 0;portb = 0;portc = 0;portd = 0;porte = 0;portf = 0;
		port10 = 0;port11 = 0;port12 = 0;port13 = 0;port14 = 0;port15 = 0;port16 = 0;port17 = 0;
		port18 = 0;port19 = 0;port1a = 0;port1b = 0;port1c = 0;port1d = 0;port1e = 0;port1f = 0;					
		port20 = 0;port21 = 0;port22 = 0;port23 = 0;port24 = 0;port25 = 0;port26 = 0;port27 = 0;
		port28 = 0;port29 = 0;port2a = 0;port2b = 0;port2c = 0;port2d = 0;port2e = 0;port2f = 0;					
		port30 = 0;port31 = 0;port32 = 0;port33 = 0;port34 = 0;port35 = 0;port36 = 0;port37 = 0;
		port38 = 0;port39 = 0;port3a = 0;port3b = 0;port3c = 0;port3d = 0;port3e = 0;port3f = 0;					
		port40 = 0;port41 = 0;port42 = 0;port43 = 0;port44 = 0;port45 = 0;port46 = 0;port47 = 0;
		port48 = 0;port49 = 0;port4a = 0;port4b = 0;port4c = 0;port4d = 0;port4e = 0;port4f = 0;					
		port50 = 0;port51 = 0;port52 = 0;port53 = 0;port54 = 0;port55 = 0;port56 = 0;port57 = 0;
		port58 = 0;port59 = 0;port5a = 0;port5b = 0;port5c = 0;port5d = 0;port5e = 0;port5f = 0;					
		port60 = 0;port61 = 0;port62 = 0;port63 = 0;port64 = 0;port65 = 0;port66 = 0;port67 = 0;
		port68 = 0;port69 = 0;port6a = 0;port6b = 0;port6c = 0;port6d = 0;port6e = 0;port6f = 0;					
		port70 = 0;port71 = 0;port72 = 0;port73 = 0;port74 = 0;port75 = 0;port76 = 0;port77 = 0;
		port78 = 0;port79 = 0;port7a = 0;port7b = 0;port7c = 0;port7d = 0;port7e = 0;port7f = 0;					
		port80 = 0;port81 = 0;port82 = 0;port83 = 0;port84 = 0;port85 = 0;port86 = 0;port87 = 0;
		port88 = 0;port89 = 0;port8a = 0;port8b = 0;port8c = 0;port8d = 0;port8e = 0;port8f = 0;					
		port90 = 0;port91 = 0;port92 = 0;port93 = 0;port94 = 0;port95 = 0;port96 = 0;port97 = 0;
		port98 = 0;port99 = 0;port9a = 0;port9b = 0;port9c = 0;port9d = 0;port9e = 0;port9f = 0;					
		porta0 = 0;porta1 = 0;porta2 = 0;porta3 = 0;porta4 = 0;porta5 = 0;porta6 = 0;porta7 = 0;
		porta8 = 0;porta9 = 0;portaa = 0;portab = 0;portac = 0;portad = 0;portae = 0;portaf = 0;					
		portb0 = 0;portb1 = 0;portb2 = 0;portb3 = 0;portb4 = 0;portb5 = 0;portb6 = 0;portb7 = 0;
		portb8 = 0;portb9 = 0;portba = 0;portbb = 0;portbc = 0;portbd = 0;portbe = 0;portbf = 0;					
		portc0 = 0;portc1 = 0;portc2 = 0;portc3 = 0;portc4 = 0;portc5 = 0;portc6 = 0;portc7 = 0;
		portc8 = 0;portc9 = 0;portca = 0;portcb = 0;portcc = 0;portcd = 0;portce = 0;portcf = 0;					
	}
	else {
		port2000 = 0;port2001 = 0;port2002 = 0;port2003 = 0;port2004 = 0;port2005 = 0;port2006 = 0;port2007 = 0;
		port2008 = 0;port2009 = 0;port200a = 0;port200b = 0;port200c = 0;port200d = 0;port200e = 0;port200f = 0;
		port2010 = 0;port2011 = 0;port2012 = 0;port2013 = 0;port2014 = 0;port2015 = 0;port2016 = 0;port2017 = 0;
		port2018 = 0;port2019 = 0;port201a = 0;port201b = 0;port201c = 0;port201d = 0;port201e = 0;port201f = 0;					
		port2020 = 0;port2021 = 0;port2022 = 0;port2023 = 0;port2024 = 0;port2025 = 0;port2026 = 0;port2027 = 0;
		port2028 = 0;port2029 = 0;port202a = 0;port202b = 0;port202c = 0;port202d = 0;port202e = 0;port202f = 0;					
		port2030 = 0;port2031 = 0;port2032 = 0;port2033 = 0;port2034 = 0;port2035 = 0;port2036 = 0;port2037 = 0;
		port2038 = 0;port2039 = 0;port203a = 0;port203b = 0;port203c = 0;port203d = 0;port203e = 0;port203f = 0;					
		port2040 = 0;port2041 = 0;port2042 = 0;port2043 = 0;port2044 = 0;port2045 = 0;port2046 = 0;port2047 = 0;
		port2048 = 0;port2049 = 0;port204a = 0;port204b = 0;port204c = 0;port204d = 0;port204e = 0;port204f = 0;					
		port2050 = 0;port2051 = 0;port2052 = 0;port2053 = 0;port2054 = 0;port2055 = 0;port2056 = 0;port2057 = 0;
		port2058 = 0;port2059 = 0;port205a = 0;port205b = 0;port205c = 0;port205d = 0;port205e = 0;port205f = 0;					
		port2060 = 0;port2061 = 0;port2062 = 0;port2063 = 0;port2064 = 0;port2065 = 0;port2066 = 0;port2067 = 0;
		port2068 = 0;port2069 = 0;port206a = 0;port206b = 0;port206c = 0;port206d = 0;port206e = 0;port206f = 0;					
		port2070 = 0;port2071 = 0;port2072 = 0;port2073 = 0;port2074 = 0;port2075 = 0;port2076 = 0;port2077 = 0;
		port2078 = 0;port2079 = 0;port207a = 0;port207b = 0;port207c = 0;port207d = 0;port207e = 0;port207f = 0;					
		port2080 = 0;port2081 = 0;port2082 = 0;port2083 = 0;port2084 = 0;port2085 = 0;port2086 = 0;port2087 = 0;
		port2088 = 0;port2089 = 0;port208a = 0;port208b = 0;port208c = 0;port208d = 0;port208e = 0;port208f = 0;					
		port2090 = 0;port2091 = 0;port2092 = 0;port2093 = 0;port2094 = 0;port2095 = 0;port2096 = 0;port2097 = 0;
		port2098 = 0;port2099 = 0;port209a = 0;port209b = 0;port209c = 0;port209d = 0;port209e = 0;port209f = 0;					
		port20a0 = 0;port20a1 = 0;port20a2 = 0;port20a3 = 0;port20a4 = 0;port20a5 = 0;port20a6 = 0;port20a7 = 0;
		port20a8 = 0;port20a9 = 0;port20aa = 0;port20ab = 0;port20ac = 0;port20ad = 0;port20ae = 0;port20af = 0;					
		port20b0 = 0;port20b1 = 0;port20b2 = 0;port20b3 = 0;port20b4 = 0;port20b5 = 0;port20b6 = 0;port20b7 = 0;
		port20b8 = 0;port20b9 = 0;port20ba = 0;port20bb = 0;port20bc = 0;port20bd = 0;port20be = 0;port20bf = 0;					
		port20c0 = 0;port20c1 = 0;port20c2 = 0;port20c3 = 0;port20c4 = 0;port20c5 = 0;port20c6 = 0;port20c7 = 0;
		port20c8 = 0;port20c9 = 0;port20ca = 0;port20cb = 0;port20cc = 0;port20cd = 0;port20ce = 0;port20cf = 0;					
	}
}

static void initE1(int num)
{
	unsigned char datatemp;
	if(num==1) {	
		port0  = 0x02;
		port2  = 0x03;
					
		port33 = 0x20;
		port35 = 0x05;
		port70 = 0x04;
		port78 = 0x03;     //0x3 for 75,0x23 for 120
		port79 |= 0x90;
		port7b = 0x0f;
		
		port88 = 0x02;
		
		//reset LIU
		port79 |= 0x40;
		//Delay();
		port79 &= 0xbf;
		
		datatemp = portf;
		datatemp &=0xf0;		
		//port73 = 0x0a;
   		//port73 = 0x05;   
		printf("Device 2155_%d ID is: %x\n",num,datatemp);
	
	}
	else {
		port2000  = 0x02;
		port2002  = 0x03;
		port2033 = 0x20;
		port2035 = 0x24;
		port2070 = 0x04;
		port2078 = 0x3;     //0x3 for 75,0x23 for 120
		port2079 |= 0x80;
		port207b = 0x05;
		
		port2088 = 0x02;
		
		//reset LIU
		port2079 |= 0x40;
		//Delay();
		port2079 &= 0xbf;

		datatemp = port200f;
		datatemp &=0xf0;
		//port2073 = 0x0a;
		//Delay();
		//port2073 = 0x05;
		printf("Device 2155_%d ID is: %x\n",num,datatemp);	
	}
}





⌨️ 快捷键说明

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