OpenVINOTM,给你看得见的未来!>>
电子产品世界 » 论坛首页 » 综合技术 » 基础知识 » SED1335 [求教]SED1335驱动大屏幕液晶的问题.

共2条 1/1 1 跳转至

SED1335 [求教]SED1335驱动大屏幕液晶的问题.

院士
2006-12-22 22:43:00    评分
SED1335 [求教]SED1335驱动大屏幕液晶的问题.



关键词: SED1335     求教     驱动     大屏幕     液晶     问题    

院士
2006-12-22 22:43:00    评分
2楼
问 做毕业设计需要用到液晶显示,我拟用SED1335来驱动液晶
我看了它的使用说明书,这是自代的演示程序
----------------------------------------------------------------------
三.图形方式下汉字显示方法
在图形方式下显示汉字,其汉字库是建立在系统程序区内,由程序逐字节地向图形显示区相应单元写入,以期在显示屏上显示出相应的汉字.这种方法如同作固定图形块显示一样.显示子程序如下.子程序需要的汉字库为CCTAB    1.汉字代码是根据汉字在库中排列的先后顺序而定义的,使用该程序中可以在图形区任意位置上写入汉字.
1.    图形方式下显示子程序
OXL   EQU   34H  ;X坐标低8位寄存器(字节)
OY    EQU   36H  ;Y坐标寄存器(点行)
CODE  EQU   37H  ;汉字代码
AP    EQU   20H  ;AP值为SYSTEM SET指令参数P9
                 ;以DMF682为例
CCTW:MOV   A,CODE  ;计算机汉字字模数据首地址
MOV   B,#20H
MUL   AB
MOV   DPTR,#CCTAB1   ;汉字库入口地址
ADD   A,DPL
PUSH  ACC            ;入栈DPL
MOV   A,B
ADDC  A,DPH
PUSH  ACC            入栈DPH
MOV   A,OY           ;计算光标地址
MOV   B,#AP      ;在计算时假定AP值等于SYSTEM SET指令P9
MUL   AB         ;而P10=0
ADD   A,OXL
MOV   OXL,A    ;存光标地址低字节
MOV   A,B  
ADDC  A,#40H    ;加入显示二区起始地址SAD2H        !<---这个是什么意思?
MOV   OY,A    ;存光标地址高字节
MOV   DPTR,#WC_ADD
MOV   A,#4FH    ;CSRDIR代码(下移)
MOVX  @DPTR,A
MOV   COUNT1,#02H   ;设置计数器1=2
CCTW1:MOV  DPTR,#WC_ADD
MOV  A,#46H    ;CSRW代码
MOVX @DPTR,A
MOV  DPTR,#WD_ADD
MOV  A,OXL       ;设置光标地址CSR
MOVX @DPTR,A
MOV  A,OY
MOVX @DPTR,A
MOV  DPTR,#WC_ADD
MOV  A,#42H    ;MWRITE代码
MOVX @DPTR,A
MOV  COUNT2,#10H  ;设置计数器2=16
CCTW2:POP  DPH  ;出栈DPH
POP  DPL  ;出栈DPL
CLR  A    
MOVC A,@A+DPTR  ;取字模数据
INC  DPTR    ; 指针加一
PUSH DPL       ;入栈DPL
PUSH DPH     ;入栈DPH
MOV  DPTR,#WD_ADD
MOVX @DPTR,A     ;写入数据
DJNZ  COUNT2,CCTW2  ;循环
MOV  A,OXL  ;修正光标地址
ADD  A,#01H   ;(加一)
MOV  OXL,A
MOV  A,OY
ADDC A,#00H
MOV  OY,A
DJNZ COUNT1,CCTW1  ;循环
POP  ACC           ;修正栈值
POP  ACC
RET
2.    使用图形方式下汉字显示子程序的演示程序
MOV   OXL,#10H     ;设置X坐标
MOV   OY,#30H      ;设置Y坐标
MOV   CODE,#00H    ;设置汉字代码
LCALL CCTW         ;调汉字写入子程序
MOV   OXL,#12H     ;设置X坐标
MOV   OY,#3OH      ;设置Y坐标
MOV   CODE,#01H    ;设置汉字代码
LCALL CCTW         ;调汉字写入子程序
MOV   OXL,#14H    ;设置X坐标
MOV   OY,#30H     ;设置Y坐标
MOV   CODE,#02H   ;设置汉字代码
LCALL CCTW         ;调汉字写入子程序
MOV   OXL,#16H    ;设置X坐标
MOV   OY,#30H     ;设置Y坐标
MOV   CODE,#03H   ;设置汉字代码
LCALL CCTW         ;调汉字写入子程序
SJMP  $
----------------------------------------------------------------
中间我打<---的那句是什么意思?向了解的朋友求教.
我理解的这个算法(中间的将坐标转换成ram地址的算法)可能是这样的,显示地址用行列交叉计算法得到,分别用寄存器R1和R2来控制行值和列值,对应显存地址为:R2+R1×N。N为每行的字节数,采用320×240的LCD时,N=320/8=40。

采用320×240的LCD时那每行只有40个定点是吗?我的意思是只能在(0,0)(0,8)(0,16)...等的点上插入图形?(我是以液晶屏幕上每一个点都有一个坐标的话.)
不然为什么只乘40就够?不乘320?

理解有问题,刚接触这个,请高手赐教.    谢谢了 1: 求教...求教... 2: 推荐更好用的VT1335bwww.viewtech.cn 3: 继续- -RT...

共2条 1/1 1 跳转至

回复

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