论坛风格切换切换到宽版
  • 1534阅读
  • 0回复

dds ad9854的送数 [复制链接]

上一主题 下一主题
离线BG7YDO
 
发帖
3654
只看楼主 倒序阅读 0楼 发表于: 2008-11-05
只是摸索着写的,自己心里也没有底,请高手纠错一下....


dds_ud bit   p3.2
m_rst bit   p3.3
io_rst bit   p3.4
dds_d bit   p3.5
dds_clk bit p3.6
dds_cs bit   p3.7


org   00h
sjmp start
org   60h
start:
;lcall ppl
setb   m_rst
nop
nop
nop
nop
clr   m_rst           ;芯片复位
setb io_rst
nop
clr   io_rst           ;端口复位
nop
clr   dds_clk
clr   dds_d
clr   dds_cs
clr   dds_ud
;..........................
start1:
setb   dds_cs
clr   dds_cs
mov   a,#07h         ;功能寄存器设置
lcall dds_w
mov   a,#10h
lcall dds_w
mov   a,#20h
lcall dds_w
mov   a,#01h
lcall dds_w
mov   a,#40h
lcall dds_w
clr   dds_clk
nop
setb   dds_ud
nop
clr   dds_ud
nop
nop
setb   dds_cs
nop
nop
;........................................
clr   dds_cs
nop
mov   a,#02h           ;f1 ftw地址
lcall dds_w     ;
mov   a,#0ch
lcall dds_w     ;......
mov   a,#0cch
lcall dds_w
mov   a,#0cch
lcall dds_w
mov   a,#0cch
lcall dds_w
mov   a,#0cch
lcall dds_w
mov   a,#0cdh       ;ftw=0c cc cc cc cc cdh
lcall dds_w
clr   dds_clk      
nop
setb   dds_ud
nop
clr   dds_ud
nop
nop
setb   dds_cs
nop
nop
nop
nop
nop
ljmp   $

dds_w:
mov   r0,#8
w_1:
rlc   a
mov   dds_d,c
nop
clr dds_clk
nop
nop
nop
nop
nop
setb   dds_clk
djnz r0,w_1
ret

end