我现在做一个用单片机控制max195的程序。程序如下 #include <reg52.h> // 引用标准库的头文件 #include <intrins.h> #define uchar unsigned char #define uint unsigned int sbit max195_clk=P0^3; sbit max195_dout=P0^4; sbit max195_eoc=P0^6; sbit max195_cs=P0^5;
/******************************************* MAX195的驱动 *******************************************/ uint max195_change() { uint temp=0; uchar i=0; max195_cs=1; max195_clk=0; max195_cs=0; delay(20); max195_clk=0; max195_clk=1; max195_clk=0; max195_clk=1; max195_clk=0;
while(max195_eoc==1) { for(i=0;i<16;i++) { if(max195_dout==1) temp|=0x0001; max195_clk=1; max195_clk=0; temp=temp<<1; } max195_clk=0; max195_clk=1; max195_clk=0; max195_clk=1; max195_clk=0; max195_cs=1; } max195_cs=1; return temp; } 接线如图 可单片机显示数值一直不稳定,从小到大随机变化。那位大神帮我看看是怎么回事。
|