秋天的童话 发表于 2023-6-9 17:32:20

端口设置

为啥在LED流水灯程序内必须要对端口定义,如#define led P2,如果直接用P2输入程序混乱.void main() {
      P2=~0x01;
          delay(50000);
       while(1)
        {
          for(i=0;i<7;i++)
          {
          P2=_crol_(P2,1);
          delay(50000);
          }


zhong_zhiqi 发表于 2023-6-10 10:10:49

本帖最后由 zhong_zhiqi 于 2023-6-10 10:12 编辑

“为啥在LED流水灯程序内必须要对端口定义,如#define led P2...”- 不是必须的,这个宏定义只是为了写代码和读代码方便而已,可以直接让读代码的人立即明白管脚的目的是操作LED。
把#define led P2注释掉然后在后续的代码中直接用P2操作也是可以的,例如把你的代码完善后就是:

# include "reg52.h"
# include "intrins.h"

//#define led P2
typedef unsigned int u16;
typedef unsigned char u8;

void delay(u16 ten_us)
{
      while(ten_us--);
}

void main()
{
      u8 i;
      P2=~0x01;
      

      delay(50000);
      while(1)
      {
                for(i=0;i<7;i++)
                {
                        P2=_crol_(P2,1);
                        delay(50000);
                }
      }
}

编译和执行也都是正常的。


秋天的童话 发表于 2023-6-12 14:42:09

谢谢啦刚开始学理解不够
页: [1]
查看完整版本: 端口设置