电路设计,软件开发,专业项目团队承接电子产品开发!


ISPRO下载型编程器
火爆销售中

RS232/TTL转换器
全IC串口窃电

RS232/TTL转换线
全IC串口窃电

ByteBlasterMV Cable
CPLD/FPGA并口下载线

ByteBlaster II Cable ISPRO下载型编程器
支持S51/AVR/PIC
超级51开发板套件
前卫实用超值

PC/MCU/CPLD
三合一学习套件

全新万年历方案
AVR单片机开发板
 

Min51单片机仿真机
迷你型

ARM7开发板
仅售260元!
 

RS-232/RS-485双向接口电平转换器  

51单片机升级STM32
火爆销售中
MPLAB-ICD2
火爆销售中
LED51开发板
玩具又名图文显示棒

面板模块/开发板
经济危机明智决择

       

GSM MODEM GSM猫

SMS短信模块 工业级/全自动
火爆销售中

大功率数传电台

高速数传电台

您当前位置:电子技术资料 -> 外围驱动 -> LCD液晶显示 ->

祝您阅读愉快!

ISPRO下载型编程器

RS232 TO TTL转换器
↑↑本文相关产品介绍↑↑

SMC1601接口程序(MCS51模拟口线方式)


类别:技术文章
来源:未知
作者:未知
关键字:SMC1601
加入日期:2010-8-4

; SMC1601接口程序(MCS51模拟口线方式)
;***************************************************************************
;中国电子网 www.EC66.com
;***************************************************************************
;连线图: *LCM---8031* *LCM---8031* *LCM------------8031*
; *DB0---P1.0* *DB4---P1.4* *RS-------------P3.0*
; *DB1---P1.1* *DB5---P1.5* *RW-------------P3.1*
; *DB2---P1.2* *DB6---P1.6* *E--------------P3.5* (参见说明书)
; *DB3---P1.3* *DB7---P1.7* *VLCD接10K可调电阻到GND*
;注:8031的晶振频率为12MHz
;**************************************************************************
RSPIN EQU P3.0
RWPIN EQU P3.1
EPIN EQU P3.5
XPOS EQU 20H ;列方向地址指针(用于LCDPOS子程序)

ORG 0000H
JMP START
START: MOV SP,#60H
CLR EPIN
MAIN:
MOV R7,#'0' ;测试主程序
MN_PA: ;整屏循环显示"0"到"9"及空格
CALL LCDRESET
MOV A,R7
CALL LCDFILL
CALL DELAY400MS
INC R7
MOV A,R7
CJNE A,#'9'+1,MN_PA
MOV A,#' '
CALL LCDFILL
CALL DELAY400MS
JMP MAIN
LCDFILL:
MOV B,A
MOV XPOS,#0 ;整屏显示A中所代表字符
LFL_PA: MOV A,B
CALL LCDWRITE
INC XPOS
MOV A,XPOS
CJNE A,#16,LFL_PA
RET

LCDPOS: ;设置第XPOS个字符的DDRAM地址
PUSH ACC
ANL XPOS,#0FH ;X位置范围(0到15)
MOV A,XPOS ;XPOS对应DDRAM地址
JNB ACC.3,LPS_LAX ;(前8个字符)X: 第0-----7个字符
ANL A,#07H ; DDRAM: 0-----7(十六进制)
ADD A,#40H ;(后8个字符)X: 第8----15个字符
; ; DDRAM: 40---47(十六进制)
LPS_LAX:ORL A,#80H ;设置DDRAM地址
CALL LCDWC
POP ACC
RET

LCDWRITE: ;定位写字符子程序
CALL LCDPOS ;定位显示地址
CALL LCDWD ;写字符
RET

LCDRESET: ;初始化程序
CALL DELAY5MS ;延时15MS
CALL DELAY5MS
CALL DELAY5MS
MOV A,#38H ;显示模式设置(不检测忙信号)
CALL LCDWCN ;共三次
CALL DELAY5MS
MOV A,#38H
CALL LCDWCN
CALL DELAY5MS
MOV A,#38H
CALL LCDWCN

MOV A,#38H ;显示模式设置(以后均检测忙信号)
CALL LCDWC
MOV A,#08H ;显示关闭
CALL LCDWC
MOV A,#01H ;显示清屏
CALL LCDWC
MOV A,#06H ;显示光标移动设置
CALL LCDWC
MOV A,#0CH ;显示开及光标设置
CALL LCDWC
RET
LCDWC: ;送控制字子程序(检测忙信号)
CALL WAITIDLE
LCDWCN: ;送控制字子程序(不检测忙信号)
CLR RSPIN ;RS=0 RW=0 E=高脉冲
CLR RWPIN
MOV P1,A
SETB EPIN
NOP
CLR EPIN
RET
LCDWD: ;写字符子程序
CALL WAITIDLE
SETB RSPIN ;RS=1 RW=0 E=高脉冲
CLR RWPIN
MOV P1,A
SETB EPIN
NOP
CLR EPIN
RET
WAITIDLE:
PUSH ACC ;正常读写操作之前必须检测LCD控制器状态
MOV P1,#0FFH
CLR RSPIN ;RS=0 RW=1 E=高电平
SETB RWPIN
SETB EPIN
WTD_PA: NOP ;DB7: 0 LCD控制器空闲
JB P1.7,WTD_PA ; 1 LCD控制器忙
CLR EPIN
POP ACC
RET
DELAY5MS:
MOV R1,#25 ;延时子程序(5MS)
DL5_PA: MOV R2,#100
DJNZ R2,$
DJNZ R1,DL5_PA
RET
DELAY400MS:
MOV R0,#20 ;延时子程序(400MS)
DL4_PA: MOV R1,#100
DL4_PB: MOV R2,#100
DJNZ R2,$
DJNZ R1,DL4_PB
DJNZ R0,DL4_PA
RET
END


您可能还会关注的相关技术资料:

中国电子网
www.EC66.com
QQ:34740080 EMAIL:iloveaoe@163.com
最佳浏览:1024*768
Copyright (C) 2001-2010 EC66.COM All Rights Reserved
Aoe/帝国 制作维护
粤ICP备18061901号