51单片机控制灯泡亮度的仿真

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

ADC0831模拟量转换为对应8位数字量时延时大小的调节电路及程序

CS BIT P2.2 CLK BIT P2.1 DO BIT P2.0 ADCD EQU 35H PWM BIT P3.0 TB BIT P3.2

ORG 0000H AJMP MAIN ORG 0003H AJMP ZD

ORG 0100H MAIN:

MOV SP,#30H SETB IT0

;CLR IT0

SETB EA

SETB EX0 LCALL ADC

;MOV ADCD,#51

WAIT:

CLR PWM MOV A,ADCD LCALL DELAY SETB PWM MOV A,#0FFH SUBB A,ADCD LCALL DELAY

SJMP W AIT

ADC:

SETB PWM

SETB CS

CLR CLK

NOP

NOP

CLR CS

NOP

NOP

SETB CLK

NOP

NOP

CLR CLK

NOP

NOP

SETB CLK

NOP

NOP

CLR CLK

NOP

NOP

SETB CLK

NOP

MOV R0,#08H

ADCKS:

CLR CLK

MOV C,DO

RLC A

SETB CLK

NOP

NOP

DJNZ R0,ADCKS

SETB CS

MOV ADCD,A

RET

DELAY:

MOV R5,A

D1:

MOV R6,#18

DJNZ R6,$

DJNZ R5,D1

RET

ORG 0200H

ZD:

PUSH ACC

MOV A,#255

SUBB A,ADCD

LCALL DELAY

CLR PWM

POP ACC

RETI

END

ADC0832的应用

A_0832_CS EQU P2.0 A_0832_CLK EQU P2.1 A_0832_DO EQU P2.2 A_0832_T EQU 30H

A_0832_DA EQU 31H PWM BIT P3.0

TB BIT P3.2

ORG 0000H

LJMP MAIN

ORG 0003H

AJMP ZD

ORG 0100H

MAIN:

MOV SP,#30H

SETB IT0

SETB EA

SETB EX0

WAIT:

LCALL ADC_RD SJMP W AIT

ADC_RD:

MOV A_0832_T,#8 CLR A_0832_CLK CLR A_0832_CS SETB A_0832_DO

;START

SETB A_0832_CLK

;第一个上升沿

NOP

NOP

CLR A_0832_CLK NOP

NOP

SETB A_0832_DO

;选择CH0 NOP

SETB A_0832_CLK

;第二个上升沿

NOP

NOP

NOP

CLR A_0832_CLK

NOP

NOP

SETB A_0832_DO

;选择CH0

NOP

SETB A_0832_CLK

;第三个上升沿

NOP

NOP

NOP

CLR A_0832_CLK

;首个下降沿

NOP

NOP

NOP

SETB A_0832_CLK

NOP

NOP

A_0832_RD:

;读取前,8位

CLR A_0832_CLK

NOP

NOP

NOP

SETB A_0832_CLK

MOV C,A_0832_DO

RLC A

DJNZ

A_0832_T,A_0832_RD

MOV A_0832_DA,A

RR A

MOV A_0832_T,#7

A_0832_RD1:

;读后7位,+前1位

CLR A_0832_CLK

NOP

NOP

NOP

SETB A_0832_CLK

MOV C,A_0832_DO

RRC A

DJNZ

A_0832_T,A_0832_RD1

CJNE

A,A_0832_DA,ADC_RD

SETB A_0832_CS

RET

DELAY:

MOV R5,A

D1:

MOV R6,#14

DJNZ R6,$

DJNZ R5,D1

RET

ORG 0200H

ZD:

PUSH ACC

CLR PWM

MOV A,A_0832_DA

LCALL DELAY

SETB PWM

NOP

NOP

NOP

CLR PWM

POP ACC

RETI

END

相关文档
最新文档