衡阳派盒市场营销有限公司

您好,歡迎來電子發燒友網! ,新用戶?[免費注冊]

您的位置:電子發燒友網>源碼下載>匯編編程>

AD0832數字電壓表多種應用程序案例分享

大小:0.12 MB 人氣: 2017-09-05 需要積分:0

1、AD0832數字電壓表1602液晶

? ? ? ? ? AD_CLK? EQU? P1.0????? ;ADC0832 時鐘
????????? AD_DAT? EQU? P1.1????? ;ADC0832 數據端
????????? AD_CS?? EQU? P3.4????? ;ADC0832 片選信號
????????? LCD_RS? EQU? P2.0????? ;LCD 數據/命令選擇端
????????? LCD_RW? EQU? P2.1????? ;LCD 讀/寫選擇端
????????? LCD_EN? EQU? P2.2????? ;LCD 使能信號
????????? LCD_X?? EQU? 20H?????? ;LCD 地址變量
??????????? ORG? 0000H
??????????? JMP? START
;===================================================
START:????? MOV? SP,#60H
??????????? MOV? P0,#0FFH
??????????? MOV? P2,#0FFH
??????????? CALL? SET_LCD
START1:???? CALL? AD_CONV??????? ;AD轉換
??????????? CALL? AD_CHULI?????? ;數據處理
??????????? CALL? LCD_CONV?????? ;數據顯示
??????????? JMP?? START1
;====================================================
;? LCD 初始化設置
;====================================================
SET_LCD:
????????? CLR? LCD_EN
????????? CALL? INIT_LCD???? ;初始化 LCD
????????? CALL? DELAY1
????????? MOV? DPTR,#INFO1?? ;指針指到顯示信息1
????????? MOV? A,#1????????? ;顯示在第一行
????????? CALL? LCD_SHOW
????????? MOV? DPTR,#INFO2?? ;指針指到顯示信息2
????????? MOV? A,#2????????? ;顯示在第二行
????????? CALL? LCD_SHOW
????????? RET
;-----------------------------------------------------
INFO1:? DB? "DIGITALVOLTMETER",0? ;LCD 第一行顯示信息
INFO2:? DB? " VOLTAGE:???? V ",0? ;LCD 第二行顯示信息
;-----------------------------------------------------
;-----------------------------------------------------
; LCD 接口初始化
;-----------------------------------------------------
INIT_LCD:
????????? MOV? A,#38H???? ;雙列顯示,字形5*7點陣
????????? CALL? WCOM
????????? CALL? DELAY1
????????? MOV? A,#38H???? ;雙列顯示,字形5*7點陣
????????? CALL? WCOM
????????? CALL? DELAY1
????????? MOV? A,#38H???? ;雙列顯示,字形5*7點陣
????????? CALL? WCOM
????????? CALL? DELAY1
????????? MOV? A,#0CH???? ;開顯示,關光標,
????????? CALL? WCOM
????????? CALL? DELAY1
????????? MOV? A,#01H???? ;清除 LCD 顯示屏
????????? CALL? WCOM
????????? CALL? DELAY1
????????? RET
;-------------------------------------------------
DELAY1:??????????????????? ;延時5MS
????????? MOV? R6,#25
? DEL1:?? MOV? R7,#100
????????? DJNZ? R7,$
????????? DJNZ? R6,DEL1
????????? RET
;==================================================
;在LCD的第一行或第二行顯示信息字符
;==================================================
LCD_SHOW:
????????? CJNE? A,#1,LINE2? ;判斷是否為第一行
? LINE1:? MOV? A,#80H?????? ;設置 LCD 的第一行地址
????????? CALL? WCOM??????? ;寫入命令
????????? CALL? CLR_LINE??? ;清除該行字符數據
????????? MOV? A,#80H?????? ;設置 LCD 的第一行地址
????????? CALL? WCOM??????? ;寫入命令
????????? JMP? FILL
? LINE2:? MOV? A,#0C0H????? ;設置 LCD 的第二行地址
????????? CALL? WCOM??????? ;寫入命令
????????? CALL? CLR_LINE??? ;清除該行字符數據
????????? MOV? A,#0C0H????? ;設置 LCD 的第二行地址
????????? CALL? WCOM
? FILL:?? CLR? A??????????? ;填入字符
????????? MOVC? A,@A+DPTR?? ;由消息區取出字符
????????? CJNE? A,#0,LC1??? ;判斷是否為結束碼
????????? RET
? LC1:??? CALL? WDATA?????? ;寫入數據
????????? INC? DPTR???????? ;指針加1
????????? JMP? FILL???????? ;繼續填入字符
????????? RET
;---------------------------------------------------
CLR_LINE:????????????????? ;清除該行 LCD 的字符
????????? MOV? R0,#24
?? CL1:?? MOV? A,#' '
????????? CALL? WDATA
????????? DJNZ? R0,CL1
????????? RET
;======================================================
; 寫指令使能子程序
;RS=L,RW=L,D0-D7=指令碼,E=高脈沖
;=====================================================
WCOM:
????????? MOV? P0,A
????????? CLR? LCD_RS
????????? CLR? LCD_RW
????????? SETB LCD_EN
????????? CALL? DELAY0
????????? CLR? LCD_EN
????????? RET

非常好我支持^.^

(0) 0%

不好我反對

(1) 100%

      發表評論

      用戶評論
      評價:好評中評差評

      發表評論,獲取積分! 請遵守相關規定!

      ?
      试玩区百家乐官网1000| 尊龙百家乐官网娱乐平台| e世博娱乐| 百家乐辅助分析软件| 禄丰县| 威尼斯人娱乐城 2013十一月九问好 | 大发888真人新浪微群| 百家乐在线投注系统| 保时捷百家乐官网娱乐城| 澳门顶级赌场娱乐城| 至尊百家乐停播| 网上百家乐官网网站导航| 德州扑克哪个平台好| 做生意店门口有个马葫芦盖风水| 香港六合彩开奖号码| 百家乐最好投| 澳门百家乐登陆网址| 大集汇百家乐官网的玩法技巧和规则 | 百家乐平注常赢玩法| 去澳门百家乐的玩法技巧和规则| 赌场百家乐官网代理| 肯博88国际网| 大发888游戏平台 34| 沙龙百家乐娱乐场开户注册| 利高百家乐游戏| 网上玩百家乐官网会出签吗| 百家乐官网网上投注代理商| 临泉县| 网上百家乐官网骗人| 九游棋牌大厅| 大发888188| 蓝盾百家乐的玩法技巧和规则 | 百家乐庄闲统计数| 循化| 霞浦县| 太和县| 如何玩百家乐官网扑克| 境外赌博下| 花莲县| 玩机器百家乐官网心得| 富民县|