欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 1350|回復(fù): 0
打印 上一主題 下一主題
收起左側(cè)

LCD液晶發(fā)送數(shù)據(jù) 飛思卡爾單片機

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:386134 發(fā)表于 2018-8-14 12:11 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
#include "derivative.h"      /* derivative-specific definitions */
#include "LCD.h"      

unsigned char adress_table[]=                 //定義液晶點陣的坐標
{
0x80,0x81,0x82,0x83,0x84,0x85,0x86,0x87,      //第一行漢字位置
0x90,0x91,0x92,0x93,0x94,0x95,0x96,0x97,      //第二行漢字位置
0x88,0x89,0x8A,0x8B,0x8C,0x8D,0x8E,0x8F,      //第三行漢字位置
0x98,0x99,0x9A,0x9B,0x9C,0x9D,0x9E,0x9F       //第四行漢字位置
};


/*************************************************************/
/*                      初始化液晶接口                       */
/*************************************************************/
void INIT_PORT(void)
{
PSB_dir = 1;
RS_dir = 1;
RW_dir = 1;
EN_dir = 1;
DATA_dir = 0xff;
DATA = 0;
PSB = 1;
EN = 0;
RW = 0;
RS = 0;
}

/*************************************************************/
/*                     向液晶發(fā)送數(shù)據(jù)                        */
/*************************************************************/
void write_Data(unsigned char b)
{
     RS = 1;
     RW = 0;
     EN = 1;
     somenop();
     DATA = b;
     somenop();
     EN = 0;
}

/*************************************************************/
/*                      向液晶發(fā)送命令                       */
/*************************************************************/
void write_command(unsigned char b)
{
     RS = 0;
     RW = 0;
     EN = 1;
     somenop();
     DATA = b;
     somenop();
     EN = 0;
}

/*************************************************************/
/*                         延時函數(shù)1                         */
/*************************************************************/
void delay20us(unsigned int n)
{
    unsigned int i;
    for(i=0;i<n;i++)
    {
        TFLG1_C0F = 1;              //清除標志位
        TC0 = TCNT + 5;             //設(shè)置輸出比較時間為20us
        while(TFLG1_C0F == 0);      //等待,直到發(fā)生輸出比較事件
    }
}

/*************************************************************/
/*                         延時函數(shù)2                         */
/*************************************************************/
void delay1ms(unsigned int n)
{
    unsigned int i;
    for(i=0;i<n;i++)
    {
        TFLG1_C0F = 1;              //清除標志位
        TC0 = TCNT + 250;             //設(shè)置輸出比較時間為1ms
        while(TFLG1_C0F == 0);      //等待,直到發(fā)生輸出比較事件
    }
}

/***************************************************************************/
/*                            清屏子程序                                   */
/***************************************************************************/
void lcd_clear(void)
{
    write_command(0x30);//0011,0000 功能設(shè)置,一次送8位數(shù)據(jù),基本指令集
    delay20us(4);       //延時80us
    write_command(0x03);//AC歸0,不改變DDRAM內(nèi)容
    delay1ms(5);        //延時5ms
    write_command(0x01);//0000,0001 清DDRAM
    delay1ms(5);        //延時5ms
    write_command(0x06);//寫入時,游標右移動
    delay20us(4);       //延時80us
    write_command(0x0C);//0000,1100  整體顯示,游標off,游標位置off
    delay20us(4);       //延時80us
}

/***************************************************************************/
/*                           向LCD發(fā)送字符串                               */
/***************************************************************************/
void lcd_string(unsigned char row,unsigned char col,char *data1)   //row為寫入數(shù)據(jù)所在的行數(shù),col為寫入數(shù)據(jù)所在的列數(shù),*data1為寫入的數(shù)據(jù)
{
  for(;row<4&&(*data1)!=0;row++)
  {
      for(;col<8&&(*data1)!=0;col++)
      {
          write_command(adress_table[row*8+col]);
          delay20us(4);       //延時80us

          write_Data(*data1++);
          delay20us(4);       //延時80us
          write_Data(*data1++);
          delay20us(4);       //延時80us
      }
      col=0;
  }
}


分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復(fù)

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機教程網(wǎng)

快速回復(fù) 返回頂部 返回列表