?? 1.c
字號:
#include <c8051f020.h>
#include<intrins.h>
#define uint unsigned int
#define uchar unsigned char
#define x1 0x80
#define x2 0x88
#define y 0x80
#define comm 0
#define dat 1
sbit cs = P3^3;
sbit std = P3^6;
sbit sclk = P3^2;
sbit rst=P3^5;
void delay(uchar time)
{
while(time--);
}
void wr_lcd (uchar dat_comm,uchar content)
{
uchar a,i,j;
delay (50);
a=content;
cs=1;
sclk=0;
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_(); //8
_nop_(); //9
_nop_();
_nop_();
_nop_();//12
_nop_();
_nop_();//14
std=1;
for(i=0;i<5;i++)
{
sclk=1;
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_(); //8
_nop_(); //9
_nop_();
_nop_();
_nop_();//12
_nop_();
_nop_();//14
sclk=0;
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_(); //8
_nop_(); //9
_nop_();
_nop_();
_nop_();//12
_nop_();
_nop_();//14
}
std=0;
sclk=1;
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_(); //8
_nop_(); //9
_nop_();
_nop_();
_nop_();//12
_nop_();
_nop_();//14
sclk=0;
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_(); //8
_nop_(); //9
_nop_();
_nop_();
_nop_();//12
_nop_();
_nop_();//14
if(dat_comm)
std=1; //data
else
std=0; //command
sclk=1;
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_(); //8
_nop_();// 9
_nop_();
_nop_();
_nop_();//12
_nop_();
_nop_(); //14
sclk=0;
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_(); //8
_nop_(); //9
_nop_();
_nop_();
_nop_();//12
_nop_();
_nop_();//14
std=0;
sclk=1;
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_(); //8
_nop_(); //9
_nop_();
_nop_();
_nop_(); //12
_nop_();
_nop_(); //14
sclk=0;
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_(); //8
_nop_(); //9
_nop_();
_nop_();
_nop_(); //12
_nop_();
_nop_();//14
for(j=0;j<2;j++)
{
for(i=0;i<4;i++)
{
a=a<<1;
std=CY;
sclk=1;
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_(); //8
_nop_();// 9
_nop_();
_nop_();
_nop_(); //12
_nop_();
_nop_(); //14
sclk=0;
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_(); //8
_nop_(); //9
_nop_();
_nop_();
_nop_();//12
_nop_();
_nop_();//14
}
std=0;
for(i=0;i<4;i++)
{
sclk=1;
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_(); //8
_nop_(); //9
_nop_();
_nop_();
_nop_(); //12
_nop_();
_nop_(); //14
sclk=0;
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_(); //8
_nop_(); //9
_nop_();
_nop_();
_nop_();//12
_nop_();
_nop_();//14
}
}
}
void clrram (void)
{
wr_lcd (comm,0x30);
wr_lcd (comm,0x01);
delay (180);
}
void Init_lcd(void)//液晶初始化
{
wr_lcd (comm,0x30); /*30---基本指令動作*/
wr_lcd (comm,0x01); /*清屏,地址指針指向00H*/
delay (100);
wr_lcd (comm,0x06); /*光標的移動方向*/
wr_lcd (comm,0x0b); /*開顯示,關游標*/
}
void shuzi(uchar m)
{
uchar i,j;
wr_lcd(comm,0x30);
wr_lcd(comm,0x80);
j=0;
for(i=1;i<2;i++)
{
wr_lcd(dat,0x30|m);
//wr_lcd(dat,0x30|n);
//wr_lcd(dat,0x2e);
//wr_lcd(dat,0x30|g);
//wr_lcd(dat,0x30|h);
}
}
void Init_SYSCLK(void)
{
uint i;
OSCXCN = 0X67;//開始外部22.1184M晶振
//OSCXCN=0X75;
for(i = 0;i < 256;i++); //等待外部起振
while(!(OSCXCN & 0X80)); //查詢標志位
//OSCICN = 0X88;//用外部晶振,并使能始終丟
OSCICN=0x0c;
// OSCICN=0X15;
/*
int n = 0;
OSCXCN = 0x67;
for (n = 0; n < 255; n++) ;
while ( (OSCXCN & 0x80) == 0 );
OSCICN = 0x0c; */
}
void Init_PORT(void)
{
XBR2=0X40;
P3MDOUT=0XFF;
}
void main(void)
{
//Init_SYSCLK();
Init_PORT();
Init_lcd();
while(1)
{
shuzi(1);
//wr_lcd(comm,0x30);
//wr_lcd(comm,0x80);
//wr_lcd(dat,0x31);
}
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -