这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » 综合技术 » 基础知识 » LPC2132 请教LPC2132管脚定义问题。

共2条 1/1 1 跳转至

LPC2132 请教LPC2132管脚定义问题。

院士
2006-09-17 18:14:16     打赏
LPC2132 请教LPC2132管脚定义问题。



关键词: LPC2132     请教     管脚     定义     问题    

院士
2006-12-22 22:43:00     打赏
2楼
问 我用LPC2132实验板去控制一个HT1622的LCD,结果没有显示,我查明原因,
问题是这样:
我的原码:
const uint32 CS = 1 << 1;
const uint32 WR = 1 << 3;
const uint32 DATA = 1 << 5;

void write_lcdbit(unsigned char bit)
{
    IO0CLR=WR;
    if(!bit)
       IO0CLR=DATA;
    else   
       IO0SET=DATA;  
    IO0SET=WR;   
}

void write_lcdcmd(unsigned char cmd)
{
    unsigned char i;
    IO0CLR=CS;
    write_lcdbit(1);
    write_lcdbit(0);
    write_lcdbit(0);
    for(i=0;i<8;i++)
    {
      write_lcdbit(cmd&0x80);
      cmd<<=1;
    }
    write_lcdbit(1);
    IO0SET=CS;
}



       int main (void)
{
    PINSEL0=0x00000000;
    IO0DIR=CS;
    IO0DIR=WR;
    write_lcdcmd(0x02);
    write_lcdcmd(0x06);
    while(1)
    {
    write_lcdbyte(0x2F,0x04);
    }
}                                               
在程序执行中,我用示波器测量过,
在执行 IO0CLR=CS 语句之后,CS脚怎么没有输出低电平?
但是在执行 IO0CLR=WR 语句之后,WR脚输出低电平,
IO0SET=WR 语句之后,WR输出高电平。

可是在执行 IO0CLR=DATA 语句之后,同样没有低电平输出?
请问这是什么原因?
请高人指点!谢谢! 1: 仔细看看文档(置位和清零是两个不同的指令)for(i=0;i<8;i++)
    {
      write_lcdbit(cmd&0x80);
      cmd<<=1;
    }


以上语句需要变换变换!

置位和清零是两个不同的指令! 2: 回复但是我用反汇编看了,这几句反汇编之后没有问题呀。
您再看看这是怎么回事。
谢谢!

共2条 1/1 1 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]