No.21493 作者:zjzj2008 邮件:zhangjianyufang@yahoo.com.cn ID:87039 登陆:1次 文章数:1篇 最后登陆IP:124.78.124.244 最后登陆:2007/10/11 14:08:20 注册:2007/8/14 13:18:03 财富:105 发帖时间:2007/8/14 13:24:23 发贴者IP:124.78.129.196 标题:zjzj2008:ad9832技术问题 摘要:No.21493ad9832技术问题 /* load SFR definitions and macros */ #include "p30fxxxx.h" #define uint unsigned int #define uchar unsigned char #define ulong unsigned long #define some_nop Nop();Nop();Nop();Nop();Nop();Nop();Nop();Nop();Nop();Nop();Nop();Nop();Nop();Nop();Nop();Nop();Nop();Nop();Nop() //LATDbits.LATD0 ^= 1; //#define DDS_CS2 PORTFbits.RF5 //#define DDS_CS1 PORTFbits.RF4 //#define DDS_CLK PORTFbits.RF8 //#define DDS_SDATA PORTFbits.RF7 #define DDS_CS2 LATFbits.LATF5 #define DDS_CS1 LATFbits.LATF4 #define DDS_CLK LATFbits.LATF8 #define DDS_SDATA LATFbits.LATF7 ////////按键常量及变量////////// #define keytim 1 //10ms #define kftim 17 //300ms #define KT 7 //200ms 按键连续有效的速度 uchar keydata=0,keyold=0,cun=0; uint key_tim=0,kf_tim=0,keyov_tim=0; uchar keyov_flag=0,keyfirst=0,first=0,keyover=0; //////////////////////////// uchar inc_flag=0,dec_flag=0; uint inc_dat=0,dec_dat=0 ; uchar send_buf[10]={0x1b,12,0,0xff}; uchar aaa=0,bbb=0,flag1=0; void delay(void) { uint d=60000; while(--d); } void delay1(uchar d) { //uint d=60000; while(--d); } // 发送指令及数据 void ddssend(uchar cs,uint svcom) { uchar i; uint dat; DDS_CS1=1;some_nop; DDS_CS2=1;some_nop; DDS_CLK=1;some_nop; if(cs==0){DDS_CS1=0;some_nop;DDS_CS2=1;} else if(cs==1){DDS_CS2=0;some_nop;DDS_CS1=1;} some_nop; //传输时CS低电平有效 for(i=0;i <16;i++) { dat=svcom&0x8000; if(dat!=0)DDS_SDATA=1; else DDS_SDATA=0; svcom=svcom < <1; //数据左移一位 DDS_CLK=0; //SCLK时钟下降沿将书写入 some_nop; DDS_CLK=1; //SCLK=1为下次数据移入时钟准备 some_nop; ......
>>返回讨论的主题
|