标题: 求助大神!谁知道这个stc89c52rc流水灯程序出错在哪? [打印本页]

作者: 鸭子@    时间: 2018-1-7 13:10
标题: 求助大神!谁知道这个stc89c52rc流水灯程序出错在哪?
#include<reg52.h>
#define uint unsigned int
#define uchar unsigned char


sbit p0=P1^0;
sbit p1=P1^1;
sbit p2=P1^2;
sbit p3=P1^3;
sbit p4=P1^4;
sbit p5=P1^5;
sbit p6=P1^6;
void main(){
uint i=0;
uchar a=0;
  
  while(1){
  P0 = ~(0x01 << a);
  for(i=0;i<30000;i++);
  a++;
  if(a>7){
   a = 0;}
   } }



作者: huige@51    时间: 2018-1-7 14:52
你这个for(i=0;i<30000;i++);是用来延时的?
作者: wulin    时间: 2018-1-7 15:09
程序本身没有问题,你的LED接是在P0口?否则只要改一下 P? = ~(0x01 << a); 即可。
作者: jizi    时间: 2018-1-7 16:29
是不是你的原理图的问题
如果stc单片机接led在到gnd的话
通常是不行的 单片机没有那么高的毫安的输出
如果硬要输出的话   你就去查一下强推挽输出
看一下stc的pdf文件就知道的
还有你要设定这模式一定要用stc的头文件
否则是找不到强推挽输出的地址
会报错的
作者: le51    时间: 2018-1-7 19:05
你的P0口只连接了一个灯何来流水之说




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1