📄 test2155.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 + -