折腾了一天,DAC7512始终不能输出电压来。 昨晚反复看了英文datasheet,下面谈谈程序注意点: 1。它有上电复位电路,所以单片机程序上电后,要延时一会儿再对7512进行操作。 2。7512的电源电压用4.096V,而单片机用的是5V是没问题的。 下面将DA程序贴出来,以方便大家 void send(uint ia) { uchar data ci,cj,cdt; union nort iw; bSYNC=1; iw.iword=ia; if((iw.byt.chi&0xf0)!=0) iw.iword=0; bSYNC=0; ci=0; bSCK=0; while(ci<2) { if(!ci) cdt=iw.byt.chi; else cdt=iw.byt.clw; for(cj=8;cj>0;cj--) { if(cdt&0x80) bSDin=1; else bSDin=0; // bSDin=(bit)cdt&0x80; cdt=cdt<<1; bSCK=1; _nop_(); _nop_(); _nop_(); _nop_(); bSCK=0; } ci += 1; } _nop_(); _nop_(); _nop_(); bSYNC=1; } |