• 大小: 4KB
    文件类型: .c
    金币: 1
    下载: 0 次
    发布日期: 2021-05-17
  • 语言: 其他
  • 标签: 1622  读写代码  

资源简介

本资源给出了使用MCS51单片机对HT1622的控制代码,可以简单移植到其他单片机中。

资源截图

代码片段和文件信息

#include 

sbit cs=P3^0;
sbit wr=P3^1;
sbit sid=P3^2;


char code char_0_0[]={0x000x00};/*--  文字:  空  --*/
char code char_0[]={0xa00xf0};/*--  文字:  0  --*/
char code char_1[]={0xa00x00};/*--  文字:  1  --*/
char code char_2[]={0xc00xb0};/*--  文字:  2  --*/
char code char_3[]={0xe00x90};/*--  文字:  3  --*/
char code char_4[]={0xe00x40};/*--  文字:  4  --*/
char code char_5[]={0x600xd0};/*--  文字:  5 --*/
char code char_6[]={0x600xf0};/*--  文字:  6  --*/
char code char_7[]={0xa00x80};/*--  文字:  7  --*/
char code char_8[]={0xe00xf0};/*--  文字:  8  --*/
char code char_9[]={0xe00xd0};/*--  文字:  9  --*/


/*=======延时================*/
void delay(int i)               
{
 int jk;
 for(j=0;j for(k=0;k<110;k++);
}



/*=======等按键================*/
void Switch()
{
 repeat:
   if (P2&0x01) goto repeat;
else ;
if (P2&0x01) goto repeat;
else delay(400);
}

/*模式选择*/
void mode_select(int data1)
{
int i;
for(i=0;i<3;i++)
{
wr=0;
if(data1&0x80) sid=1;
else sid=0;
//delay(20);
wr=1;
data1=data1<<=1;
 }
}



/*=========写指令===============*/
void wcom(int data1)   
{
int i;
cs=0;
mode_select(0x80);
for(i=0;i<8;i++)
{
wr=0;
if(data1&0x80) sid=1;
else sid=0;
//delay(2);
wr=1;
wr=0;
data1=data1<<=1;
 }
wr=0;
wr=1;
cs=1;
}

/*=========写数据===============*/
void wdata(int data1)   
{
int i;

for(i=0;i<4;i++)
{
wr=0;
if(data1&0x80) sid=1;
else sid=0;
wr=1;
data1=data1<<=1;
 }
}

/*写地址*/
void select_address(int data1)
{
int i;
cs=1;
cs=0;
mode_select(0xa0);/*模式选择*/
data1=data1<<=1;
data1=data1<<=1;
for(i=0;i<6;i++)
{
wr=0;
if(data1&0x80) sid=1;
else sid=0;
wr=1;
data1=data1<<=1;
 }
}



/*清屏*/
void clear()
{
int i;
select_address(0x18);
for(i=0;i<4;i++)
{
wdata(0x00);
        wdata(0x00);
}
}
/*全显示*/
void full_display()
{
int i;
select_address(0x18);
for(i=0;i<4;i++)
{
wdata(0xf0);
wdata(0xf0);
}
}

/*显示数字*/
void char_disp(int data1)
{
   unsigned char *dp;    //define data pointer
   int i;
dp=char_0;
for(i=0;i {
dp++;
dp++;
}
wdata(*dp);
dp++;

评论

共有 条评论