求AD转换单片机实验的汇编程序

求AD转换单片机实验的汇编程序,第1张

接线:p3.6接srd

p3.7接swr

p3.0接pin

p3.1接clk

ad0809的clk接脉冲

cs接8000h的译码电路程序:ad0809 xdata 8000h

org 0000h

ajmp main

org 0030h

main:mov dptr,#8000h

mov a,#01h

movx @dptr,a

call delay

movx a,@dptr

mov r0,a

call disp

call delay

call delay

call delay

ajmp maindisp:mov a,r0

anl a,#00001111b

acall dsend

mov a,r0

swap a

anl a,#00001111b

acall dsend

ret

dsend:mov dptr,#tab

movc a,@a+dptr

mov sbuf,a

jnb ti,$

clr ti

ret delay:mov r4,#250

delay1:mov r5,#250

djnz r5,$

djnz r4,delay1

ret

tab:db 03h 0

db 9fh 1

db 25h 2

db 0dh 3

db 99h 4

db 49h 5

db 41h 6

db 1fh 7

db 01h 8

db 09h 9

db 11h 灭

db 11h

db 0c1h

db 63h

db 85h

db 61h

db 71h

db 00h

end

取10次的平均值

计算机,是用二进制的,除以2、4、8、16...256,都是很方便的。

为什么要取10次呢?

还没有脱离小时候学过的十进制,对吧?

----------

单片机A/D转换测量16次平均值保存在外部RAM2000h汇编程序如下:

AVR16:

MOV R7, #16 测量 16 次

CLR A

MOV B, A

AV1:ADD A, P1累加采样值

JNC AV2

INC B进位

AV2:DJNZ R7, AV1 循环16次

ANL A, #240

ADD A, B 除以16

SWAP A求出平均值

MOV DPTR, #2000H

MOVX @DPTR, A 存到指定单元

RET

写这些,就可以了,比楼主的要求,精度还要高。

END


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/7839411.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-10
下一篇 2023-04-10

发表评论

登录后才能评论

评论列表(0条)

保存