导航: 老古网老古论坛XMOS公共讨论区XMOS开源项目区单片机程序设计嵌入式系统广告区域
→大家能帮我看看这个个程序错在哪里了呢?[stn123]

 *第35692篇: 大家能帮我看看这个个程序错在哪里了呢?

  
楼 主:stn123 2005年11月12日17:17
 大家能帮我看看这个个程序错在哪里了呢?
大家能帮我看看这个个程序错在哪里了呢?
我用视波器为什么检测不到正弦波呢?        

org 0000h
        mov r5,#00h
sin: mov a,r5
     mov dptr,#tab
     movc a,@a+dptr
     mov dptr,#7fffh
     movx @dptr,a
     inc r5
     ajmp sin
tab: db 80h, 82h,84h,86h,88h,8ah,8ch
     db 8eh, 8ch,8ah,88h,86h,84h,82h
     db 80h, 7eh,7ch,7ah,78h,76h,74h
     db 72h, 74h,76h,78h,7ah,7ch,7eh

  
2楼:tuweiwei 2005年11月13日22:05
 看着有点花```
以后拿汇编写程序``最好用大写```
  
3楼:Kuang-chingTsui 2005年11月14日11:25
 你只读出并输出了一次表格内容,以后读出和输出的不是表格的内容。
将AJMP SIN改为AJMP 0000H试试
  
4楼:caidenghua 2005年11月14日12:50
 算法不对吧
你是怎样实现正弦波的?好像不是等比增加吧。你这样应该是产生一条斜线吧。我觉得应该是函数不对,没有用正弦函数去实现。
  
5楼:lenglianxi 2005年11月14日16:11
 程序应当是没问题的.
你查没查过你的数模转换部分?
  
6楼:虚子心 2005年11月14日21:59
 你用的是什么D/A,其位数是多少,希望输
你用的是什么D/A,其位数是多少,希望输出sin的频率是多少?
R5在读完表后应归零,否则R5内容大于28后读的是什么?


  
7楼:gzwzx2010 2005年11月14日22:33
 DPTR在运行前后保护一下。
DPTR在运行前后保护一下。
  
8楼:tanxiaodong 2005年11月19日22:32
 你的程序频率太高  D/A受不了


你的程序频率太高  D/A受不了


你应该用一个定时器每个一定 的时间输出一个数据到DA以控制频率

  
9楼:diannaoza 2005年11月22日11:10
 看这样写,你试试。
     org 0000h
        
main:mov r5,#00h
      mov r7,#28
sin: mov a,r5
  mov dptr,#tab
     movc a,@a+dptr
     mov dptr,#7fffh
     movx @dptr,a
    mov p1,a;;;;;;;;;;;;;;; 
    mov 40h,a
    inc r5
    djnz r7,sin     
ajmp main
;;ajmp over;;;;;;若输出一次的话加这句,重复的话加上面一句
tab: db 80h,82h,84h,86h,88h,8ah,8ch,8eh,8ch,8ah
     db 88h,86h,84h,82h,80h,7eh,7ch,7ah,78h,76h
     db 74h,72h,74h,76h,78h,7ah,7ch,7eh
over:
end


>>>>>>对该主题发表你的看法

本主题贴数9,分页: [第1页]


[上一篇主题]:推荐一个教学资源网

[下一篇主题]:招聘>>>>>助理工程师!!