搜索
bottom↓
回复: 5

我用MEGA8做了个爱德万6843万用表数锯采集器。

[复制链接]

出0入0汤圆

发表于 2009-10-21 20:33:52 | 显示全部楼层 |阅读模式
我用MEGA8做了个爱德万6843万用表数锯采集器。是从数码管译码前采数据,从选通处读位数,用光隔232传输,一秒4次,已成功。有人要吗。

出0入0汤圆

发表于 2009-10-21 20:36:39 | 显示全部楼层
能做34401A的吗?

出0入0汤圆

 楼主| 发表于 2009-10-21 20:39:00 | 显示全部楼层
要是数码管显示就行。

出0入0汤圆

发表于 2009-10-21 21:08:28 | 显示全部楼层
上图!!!

出0入0汤圆

 楼主| 发表于 2009-10-21 21:32:47 | 显示全部楼层
这是程序,已好用。
.INCLUDE "m8def.INC"  ; 4M内部RC
.def  dl=r12
.DEF  DT=R17

.equ sz0=0x0100
.equ sz1=0x0101
.equ sz2=0x0102
.equ sz3=0x0103



.ORG  $0000
     RJMP RESET

.ORG 0X0010
RESET:       ldi r16,0x04 ; Put stack near top of SRAM (0x045F)
             out SPH,r16
             ldi r16,0x5F
             out SPL,r16
             ldi r16,0xff      ;看门狗2秒
             out wdtcr,r16
             ldi r16,0x0f      ;看门狗2秒
             out wdtcr,r16

             ldi r16,0        ;关输出
             out portb,R16       ;0-3数据
             out ddrb,R16

             ldi r16,0
             out ddrd,R16       ;设D口  3,第一位 4第2位数据 5,6,7   高电平时选通
             out portd,R16      ;d输出0

             ldi r16,0
             out ddrc,R16      ;设c低4位为输入高4位为输出pc3,pc2为4052的A,B
             out portc,R16      ;设c没有上拉电阻

             ldi r16,0b00100000  ;串囗初始化
             out ucsra,r16
             ldi r16,0b00001000  ;串囗初始化
             out ucsrb,r16
             ldi r16,0b10001110  ;串囗初始化
             out ucsrc,r16
             ldi r16,0b0000000  ;串囗初始化
             out ubrrh,r16
             ldi r16,25         ;9600bit/s  4M时25
             out ubrrl,r16

main:     wdr
          sbis pind,7     ;=1跳一行
          rjmp main
          rcall dell
          in r16,pinb
          andi r16,0x0f
          sts sz1,r16

jc1:      nop
          sbis pind,6     ;=1跳一行
          rjmp jc1
          rcall dell
          in r16,pinb
          andi r16,0x0f
          swap r16
          sts sz2,r16


jc2:       nop
          sbis pind,5     ;=1跳一行
          rjmp jc2
           rcall dell
          in r16,pinb
          andi r16,0x0f
          lds r17,sz2
          or r17,r16
          sts sz2,r17


jc3:      nop
          sbis pind,4     ;=1跳一行
          rjmp jc3
           rcall dell
          in r16,pinb
          andi r16,0x0f
          swap r16
          sts sz3,r16


jc4:       nop
          sbis pind,3     ;=1跳一行
          rjmp jc4
           rcall dell
          in r16,pinb
          andi r16,0x0f
          lds r17,sz3
          or r17,r16
          sts sz3,r17

       rcall dyzcx

       ldi dt,200   ;延时2。5秒
       rcall delay
        rjmp main





dyzcx:      ldi r16,0xaa
             sts sz0,r16
            ldi r18,4        ;20个字串行发送 发送温度和输出
            ldi zh,0x01  ;01
            ldi zl,0  ;4e
dy4:        sbis ucsra,udre
            rjmp dy4
            ld r21,z+
            ldi dt,4
            rcall  delay
            WDR
            out udr,r21
            subi r18,0x01  ;计数减1
            brne dy4       ;不等转移

dy5:        sbis ucsra,udre
            rjmp dy5
            ret






dell: ldi r16,10
del3: nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
dec r16
brne del3
ret

delay: ldi r16,250    ;4M时钟延时1.25MS
del2: nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
dec r16
brne del2
dec dt
brne delay
ret
.exit

出0入0汤圆

发表于 2009-10-21 21:34:36 | 显示全部楼层
34401A直接读RS-232输出就是了
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-5-9 09:59

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

快速回复 返回顶部 返回列表