好文档 - 专业文书写作范文服务资料分享网站

单片机控制DAC0832输出正弦波三角波汇编程序

天下 分享 时间: 加入收藏 我要投稿 点赞

.

单片机控制DAC0832输出正弦波三角波

汇编程序

org 0000h LJMP MAIN ORG 0003H LJMP L0

MAIN:MOV R2,#0aH ;调幅倍数 MOV R4,#01H ;增减选择 MOV R5,#01H pp: SETB EA

SETB EX0 ;延时计数个数 MOV A,#0FFH ;读取波形状态 MOV P1,A MOV A,P1

JNB ACC.0,ZXB ;P1.0=0 则选择正弦波 JNB ACC.1,SJB ;P1.1=0 则选择三角波 JNB ACC.2,FB ;P1.2=0 则选择方 波 AJMP PP ZXB:MOV R1,#00H LOOP1:MOV A,R1

Word 文档

.

MOV DPTR,#TABLE1 ;读取正弦波数据首地址 MOVC A,A+DPTR ;去表格数据 MOV B,R2

MUL AB ;幅度大小 INC R1 XCH A,R1 CLR C

SUBB A,#0AH ;是否已采样半个周期

JNC LK1 ;C=0跳转,即R1大于0A,以采样半个周期以上 ADD A,#0AH

XCH A,R1 ;还原R1

ADD A,#80H ;8OH为零点,取得正的幅度值 AJMP LK0 LK1:ADD A,#0AH XCH A,R1 MOV R3,A MOV A,#80H CLR C

SUBB A,R3 ;80H为零点,取得负的幅度值 LK0:MOV DPTR,#8000H ;送DA转换入口地址

Word 文档

.

MOVX DPTR,A MOV A,R5

KD:DEC R5 ;调用延时 CALL DELAY CJNE R5,#00H,KD MOV R5,A

CJNE R1,#12H,LOOP1 LJMP PP FB:MOV R1,#00H LOOP2:MOV A,R1

MOV DPTR,#TABLE2 ;读取方波数据首地址 MOVC A,A+DPTR ;去表格数据 MOV B,R2

MUL AB ;幅度大小 INC R1 XCH A,R1 CLR C

SUBB A,#0AH ;是否已采样半个周期

JNC LK3 ;C=0跳转,即R1大于0A,以采样半个周期以上 ADD A,#0AH

Word 文档

单片机控制DAC0832输出正弦波三角波汇编程序

.单片机控制DAC0832输出正弦波三角波汇编程序org0000hLJMPMAINORG0003HLJMPL0MAIN:MOVR2,#0aH;调幅倍数MOVR4,#01H;增减选择MOVR5,#01Hpp:SETB
推荐度:
点击下载文档文档为doc格式
8gcbi45cki37lyd0yjbf83hrt8bf8q008qc
领取福利

微信扫码领取福利

微信扫码分享