音影先锋亚洲天堂网|电影世界尽头的爱完整版播放|国产 熟女 91|高清无码免费观看欧美日韩|韩国一区二区三区黄色录像|美女亚洲加勒比在线|亚洲综合网 开心五月|7x成人在线入口|成人网站免费日韩毛片区|国产黄片?一级?二级?三级

登錄 免費(fèi)注冊(cè) 首頁(yè) | 行業(yè)黑名單 | 幫助
維庫(kù)電子市場(chǎng)網(wǎng)
技術(shù)交流 | 電路欣賞 | 工控天地 | 數(shù)字廣電 | 通信技術(shù) | 電源技術(shù) | 測(cè)控之家 | EMC技術(shù) | ARM技術(shù) | EDA技術(shù) | PCB技術(shù) | 嵌入式系統(tǒng)
驅(qū)動(dòng)編程 | 集成電路 | 器件替換 | 模擬技術(shù) | 新手園地 | 單 片 機(jī) | DSP技術(shù) | MCU技術(shù) | IC 設(shè)計(jì) | IC 產(chǎn)業(yè) | CAN-bus/DeviceNe

LCD12232 For ARMlpc214x 顯示程序移植OK.

作者:boy123 欄目:ARM技術(shù)
LCD12232 For ARMlpc214x 顯示程序移植OK.

源程序工程下載地址:
http://www.mcu123.net/bbs/dispbbs.asp?boardid=28&ID=1160&replyID=3530&skin=1
/*============================================================
LPC214X 液晶功能演示
作者: Mingtree    ycxms88@163.com   bbs.mcu123.com
==============================================================

/*
引腳分布
P0.0 P0.1 P0.2 P0.3 P0.4 P0.5 P0.6 P0.7
TX0     RX0            CS1          K4   K3

P0.8 P0.9 P0.10 P0.11 P0.12 P0.13 P0.14 P0.15
TX1     RX1  RW     SCL      SDA     K1      VRST    K2

P0.16 P0.17 P0.18 P0.19 P0.20 P0.21 P0.22 P0.23
BEEP  SCK1    MISO  MOSI    SSEL  RS_COM RW       VB
P0.24 P0.25 P0.26 P0.27 P0.28 P0.29 P0.30 P0.31
      AOUT    D+       D-    A_IN1 A_IN2     CS2   ULED

LED引腳
L1---------L8
P1.16----P1.23
*/
=============================================================*/
#include <LPC214X.H>                        /* LPC214x definitions */

#include <lcd_ok.H>
#define    uCHAR unsigned CHAR
#define uint unsigned int


#define E1    4      //塊1  左邊
#define E2    30      //塊2  右邊

#define RW    22      //讀寫(xiě)控制端       0為寫(xiě) 1為讀
#define A0    21      //A0為1時(shí)是數(shù)據(jù),0時(shí)為指令數(shù)據(jù)


#define DATA PORTB     //數(shù)據(jù)




void Io_Set(uCHAR pin)       //單個(gè)IO口置位函數(shù)
{
unsigned int io_data=1;
io_data=io_data<<pin;
IOSET0=io_data;         //IOSET0為IO線上置位寄存器,1有效,0無(wú)
}


void Io_Clr(uCHAR pin)       //單個(gè)IO口清零函數(shù)
{
unsigned int io_data=1;
io_data=io_data<<pin;
IOCLR0=io_data;         //IOCLR0為IO線上清零寄存器,1有效,0無(wú)
}


void Io_Set1(uCHAR pin)       //單個(gè)IO口置位函數(shù)
{
unsigned int io_data=1;
io_data=io_data<<pin;
IOSET1=io_data;         //IOSET0為IO線上置位寄存器,1有效,0無(wú)
}


void Io_Clr1(uCHAR pin)       //單個(gè)IO口清零函數(shù)
{
unsigned int io_data=1;
io_data=io_data<<pin;
IOCLR1=io_data;         //IOCLR0為IO線上清零寄存器,1有效,0無(wú)
}
void OUT_DATA(unsigned CHAR data)
{
unsigned CHAR i;
for(i=0;i<8;i++)
  {
  
   if(data&1) {Io_Set1(i+16);}     //把相應(yīng)的IO口置位或者清零
   else {Io_Clr1(i+16);}
   data=data>>1;
   }
}



//延時(shí)
void delay(unsigned int i)
{
    unsigned int k=1000;
    while(i>0)
    {
        i--;
    }
    while(k>1)k--;
}


void delayms (unsigned int i) {                        /* Delay function */
unsigned int n;
while(i>1)
{
    for(n=65535;n>1;n--);
    i--;
}
}
//左頁(yè)
//發(fā)送數(shù)據(jù)
void    OUTMD(unsigned CHAR i)
{
    Io_Set(A0);    //A0_1;    //寫(xiě)數(shù)據(jù)
    delay(1);
    Io_Set(E1);    //E1_1;
    delay(1);
    OUT_DATA(i);//    DATA=i;
    delay(1);
    Io_Clr(E1);    //E1_0;
    
}
//左頁(yè)
//發(fā)送命令
void    OUTMI(unsigned CHAR i)
{
    Io_Clr(A0);    //A0_0;    //寫(xiě)指令
    delay(1);
    Io_Set(E1);    //E1_1;
    delay(1);
    OUT_DATA(i);    //DATA=i;
    delay(1);
    Io_Clr(E1);    //E1_0;
    
}
//右頁(yè)
//發(fā)送數(shù)據(jù)
void    OUTSD(unsigned CHAR i)
{
    Io_Set(A0);    //A0_1;    //寫(xiě)數(shù)據(jù)
    delay(1);
    Io_Set(E2);    //E2_1;
    delay(1);
    OUT_DATA(i);    //DATA=i;
    delay(1);
    Io_Clr(E2);    //E2_0;

}
//右頁(yè)
//發(fā)送命令
void    OUTSI(unsigned CHAR i)
{
    Io_Clr(A0);    //A0_0;    //寫(xiě)指令
    delay(1);
    Io_Set(E2);    //E2_1;
    delay(1);
    OUT_DATA(i);    //DATA=i;
    delay(1);
    Io_Clr(E2);    //E2_0;
    
}




//初始化
void    lcdini(void)
{
    Io_Clr(RW);        //RW_0;
    OUTMI(0XE2);
    delay(1);
    OUTSI(0XE2);//復(fù)位
    delay(1);
    OUTMI(0XAE);
    delay(1);
    OUTSI(0XAE);//POWER SAVE
    delay(1);
    OUTMI(0XA4);
    delay(1);
    OUTSI(0XA4);//動(dòng)態(tài)驅(qū)動(dòng)
    delay(1);
    OUTMI(0XA9);
    delay(1);
    OUTSI(0XA9);//1/32占空比
    delay(1);
    OUTMI(0XA0);
    delay(1);
    OUTSI(0XA0);//時(shí)鐘線輸出
    delay(1);
    OUTMI(0XEE);
    delay(1);
    OUTSI(0XEE);//寫(xiě)模式
    delay(1);
    OUTMI(0X00);
    OUTMI(0XC0);
    OUTSI(0X00);
    OUTSI(0XC0);
    
    OUTMI(0XAF);
 
2樓: >>參與討論
hotpower
謝謝!!!要是串行的就更好了
 
3樓: >>參與討論
manet
非常感謝!希望能有更多這樣的好漢出現(xiàn)!
 
4樓: >>參與討論
hotpower
今天開(kāi)發(fā)版到,爭(zhēng)取1/2天搞定串行LCD12232/LCD12864
 
5樓: >>參與討論
boy123
不客氣,我也是剛接觸ARM,從我的51那邊移植過(guò)來(lái)的.
hotpower
你用的是哪款A(yù)RM CPU?

參與討論
昵稱:
討論內(nèi)容:
 
 
相關(guān)帖子
問(wèn)個(gè)關(guān)于ucosII的簡(jiǎn)單問(wèn)題
求教!不使用操作系統(tǒng)時(shí),可以使用文件函數(shù)fread,fseek嗎?
菜鳥(niǎo)問(wèn)題
關(guān)于cy7c028雙口RAM
請(qǐng)問(wèn)周公:LDR和偽指令LDR的應(yīng)用場(chǎng)合?
免費(fèi)注冊(cè)為維庫(kù)電子開(kāi)發(fā)網(wǎng)會(huì)員,參與電子工程師社區(qū)討論,點(diǎn)此進(jìn)入


Copyright © 1998-2006 m.58mhw.cn 浙ICP證030469號(hào)