?? adc0832-led.asm
字號:
;********************************************************************************
;* 標題: ME300系列單片機開發系統演示程序 - ADC0832數字電壓表LED顯示 *
;* 硬件: ME300A+,ME300B *
;* 文件: ADC0832_LED.asm *
;* 日期: 2005-3-20 *
;* 版本: 1.0 *
;* 作者: gguoqing *
;* 郵箱: gguoqing@sxicc.ac.cn *
;* 網站: http://www.willar.com *
;********************************************************************************
;* 描述: *
;* ADC0832數字電壓表LED顯示 *
;* *
;* 調節ADC0832旁邊的電位器,發光二極管顯示 ADC0832 轉換值 *
;********************************************************************************
;* 跳線設置: *
;* ME300B JP1 短接,JP2短接3-4端,JP3短接AD端,JP4的P10-P12必須取下 *
;* *
;********************************************************************************
;* 【版權】 Copyright(C)偉納電子 www.willar.com All Rights Reserved *
;* 【聲明】 此程序僅用于學習與參考,引用請注明版權和作者信息! *
;********************************************************************************
;------------ ADC0832 端口定義 -----------------
CLK EQU P1.0
DAT EQU P1.1
CS EQU P3.4
;-----------------------------------------------
ORG 0000H
JMP START
;-----------------------------------------------
;===============================================
;
;ADC0832 初始化、轉換、顯示子程序
;
;===============================================
START: MOV SP,#60H
MOV A,#00H
MOV P0,#0FFH
SETB CS ;一個轉換周期開始
CLR CLK
CLR CS ;CS置0,片選有效
SETB DAT ;DI置1,起始位
NOP
SETB CLK ;第一個脈沖
CLR DAT ;在負跳變之前加一個DI反轉操作
CLR CLK ;
SETB DAT ;DI置1,設為單通道
NOP
SETB CLK ;第二個脈沖
CLR DAT
CLR CLK
CLR DAT ;DI置0,選擇通道0
NOP
SETB CLK ;第三個脈沖
SETB DAT
CLR CLK ;
NOP
SETB CLK ; 第四個脈沖
MOV R1,#08H ;計數器初值,讀取8位數據,
READ: CLR CLK ;下降沿
MOV C,DAT ;讀取DO端數據
RLC A ;C移入A,高位在前
SETB CLK ;下一個脈沖
DJNZ R1,READ ;沒讀完繼續
SETB CS
CPL A
MOV P0,A ;轉換結果送 P0 口顯示
MOV R5,#100 ;延時500ms
DELAY1: CALL DELAY5MS
DJNZ R5,DELAY1
AJMP START ;下一個轉換周期開始
;===============================================
;延時子程序
;(R5)×5ms
;===============================================
DELAY5MS:
MOV R6,#25
DEL1: MOV R7,#100
DJNZ R7,$
DJNZ R6,DEL1
RET
;===============================================
END ;結束
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -