<求助>用leonardo操作lcd1602无正确效果-Arduino中文社区 - Powered by Discuz!

Arduino中文社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 4458|回复: 1

[已解决] <求助>用leonardo操作lcd1602无正确效果

[复制链接]
发表于 2013-8-10 23:40 | 显示全部楼层 |阅读模式
本帖最后由 iago 于 2013-8-10 23:48 编辑

如题,用汇编写的在计算机上模拟正常,改写到leonardo上就没任何反应了,一下为代码,求达人指导.
51汇编如下ORG     100H
RS      EQU     P2.0
RW      EQU     P2.1
E       EQU     P2.2

CLR     RS   ;0 COMMAND,1 DATA
CLR     RW     ;0 WRITE  ,1 READ
SETB    E     ;NEGATTIVE EDGE EXECUTE,1 READ STAT

MOV     R7,#38H
CALL    WRITE
MOV     R7,#0FH
CALL    WRITE
MOV     R7,#01H
CALL    WRITE

;COMMANDS FINISH,WRITE DATA BELLOW
SETB      RS
SETB      E
MOV       R0,#0
MOV       R1,#0CH
MOV       DPTR,#TAB
LOOP:
MOV       A,R0
MOVC      A,@A+DPTR
MOV       P3,A
CLR       E
SETB      E
CALL      DELAY
INC       R0
MOV       A,R0
DJNZ      R1,LOOP
SJMP      $

;-------------------------------FUNCTIONS BELLOW----------------------
;     DELAY 6ms
DELAY:
MOV   R5,#30
LOOP2:
MOV   R4,#64H
LOOP1:
DJNZ  R4,LOOP1
DJNZ  R5,LOOP2
RET

;WIRTE DATA INTO LCD1602
WRITE:
MOV   P3,R7
CLR   E
CALL  DELAY
SETB  E
RET

;TABLES BELLOW
TAB:    DB "Hello,World!"



以下为arduino代码:

const unsigned        char        LED8Pin[]={5,6,7,8,9,10,11,12}        ;        //D0~D7
int        RS        =2;
int        RW        =3;
int        E        =4;

void        setup()
{        
        for(int i=2;i<13;i++)
        {        
                pinMode(i,OUTPUT);
        }
        digitalWrite(RS,0);
        digitalWrite(RW,0);
        digitalWrite(E,1);
        LED8Show(0x38);
        LED8Show(0x0F);
        LED8Show(0x01);
        digitalWrite(RS,1);        
        LED8Show(0x48);
}

void        loop()
{
        
}
void        LED8Show(char        data)
{               
        for(int        i=0;i<8;i++)
        {        
                digitalWrite(LED8Pin,bitRead(data,i));
        }
        digitalWrite(E,0);
        delay(6);
        digitalWrite(E,1);
        delay(6);
}
这个本应该出现一个"H"的,可是什么反应都没有,咋么回事?


发表于 2013-8-11 02:26 | 显示全部楼层
额,arduino ide自带了一个1602的库...
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|Archiver|手机版|Arduino中文社区

GMT+8, 2024-12-3 07:37 , Processed in 0.116091 second(s), 15 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表