文号
t32212
阅读
6051
回复
10
收藏
7
关于12864液晶编程问题
2011/02/17
IP:浙江
这几天在搞12864液晶模块带字库,我使用汇编。在网上看了很多资料,很多都是在查表处的表格中书写直接的汉字如下
HZ: DB  '我爱单片机'
但是这样的数据表格汇编后显示:  I 0000I  
    
我直接在表格内输入12864液晶说明书上的十六进制代码如:
HZ: DB  0B0H ,0D0H, 0B0H ,0D1H, 0B0H ,0D2H,0B0H ,0D3H,0B0H ,0D4H  
汇编后显示正常,是对应的汉字
请问为什么第一种方法不行啊。
15年11个月前IP:未同步
282873
5楼
在表格中输入的字符和数字都能正确显示,那么如果是汇编格式问题的话该如何解决啊。我用的是KEIL汇编软件。
引用
评论
15年11个月前IP:未同步
290195
6楼
12864带字库汇编遇到问题
程序如下,显示不正确,表格中汉字不能显示,出现IOOOOOOI,字符可以YUN DA,如果数字的话也正常
;*******************************
;下列为LCD主程序
;*******************************
LCD_CSH:MOV A,#30H   开显示,初始化
    LCALL SEND_ZL
    MOV A,#30H   开显示
    LCALL SEND_ZL
    MOV A,#01H  
    LCALL SEND_ZL
    MOV A,#06H  
    LCALL SEND_ZL
    MOV A,#0CH  
    LCALL SEND_ZL
    
;*******************************
;      汉字显示程序
;*******************************
LCD:MOV A,#90H
LCALL SEND_ZL
    MOV R2,#10H
MOV DPTR,#HZ
LCD1:CLR A
MOVC A,@A+DPTR
INC DPTR
LCALL SEND_SJ   ;;发送汉字
DJNZ R2,LCD1
LJMP LCD

;       ;
;*********************************
;        发送指令       ;
;*********************************
SEND_ZL[s:10]CALL BUSY   ;;检测是否忙
  CLR RS     准备
  CLR RW     ;
  MOV P0,A    送数据到总线
  SETB E     ;
  NOP      
  NOP      ;
  NOP      
  NOP      
  CLR E     ;传送
        
  RET      
;;
;*********************************
;        发送数据       ;
;*********************************        
SEND_SJ[s:10]CALL BUSY     检测是否忙
  SETB RS     ;;检测是否忙
  CLR RW   ;
  MOV P0,A  ;送数据到总线
  SETB E    
  NOP     ;
  NOP     ;
  NOP    
  NOP    
  CLR E   ;;传送
       ;;
  RET     ;
;
;*********************************
;        查询是否忙       ;
;*********************************
BUSY:MOV P0,#0FFH    送P0为高电平
  CLR   RS     准备
  SETB  RW     ;准备读内部状态
  SETB  E     ;读取内部状态
  JB  P0.7,$   ;检测是否空闲
  CLR E     ;恢复使能端

  RET            

HZ: DB   ' 我爱电子 YUN DAO'
引用
评论
笔记
{{note.content}}
{{n.user.username}}
{{fromNow(n.toc)}} {{n.status === noteStatus.disabled ? "已屏蔽" : ""}} {{n.status === noteStatus.unknown ? "正在审核" : ""}} {{n.status === noteStatus.deleted ? '已删除' : ''}}
  • 编辑
  • 删除
  • {{n.status === 'disabled' ? "解除屏蔽" : "屏蔽" }}
我也是有底线的