我要实现的功能是,用2051将16位数据同时送出,我把P1口与两个373数据端连接,P3.0和P3.1接两个373的LE端,OE端接地。编好控制程序,用一个LED在373的一个输出端测试,亮度极其小,而且闪灭频率不是按照程序走。 真郁闷!2051最小系统工作正常。
#include <reg51.h> #define dataout P1 sbit LE1=P3^0; sbit LE2=P3^1; //************************************* //373控制引脚初始化 //************************************* void initial() { LE1=0; LE2=0; }
//************************************* //延时100ms子程序。 //************************************* void delay() {int i,j; for(j=20;j>=0;j--) { for(i=5000;i>=0;i--); } }
//****************************************** //主程序 //****************************************** main() { initial(); while(1) { initial(); LE2=1; dataout=0x00; LE2=0;//片2锁存 LE1=1; dataout=0xff; LE1=0;//片1锁存 delay();//延时
initial(); LE1=1; dataout=0x00; LE1=0;//片1锁存 LE2=1; dataout=0xff; LE2=0;//片2锁存 delay(); }
} |