单片机交流
直播中

陈勇

7年用户 1236经验值
私信 关注
[问答]

怎样去点亮基于51单片机编程的LED灯呢

怎样去点亮基于51单片机编程的LED灯呢?有哪些实验步骤?

回帖(1)

h1654155275.5614

2021-10-26 16:36:40
  1、使用uVision4创建项目
  
  2、选择MCU的型号:Atmel-》AT89C52
  
  
  3、是否创建C51启动文件,选否。启动文件以前汇编常用,现在少用了。
  
  4、新建文件,需指定命名为.c文件
  
  5、双击Source Group 1,添加led.c 或 右键Add Files to Group ‘Source Group 1’
  
  或
  
  最终将led.c增加到Source Group 1目录下:
  
  6、开始在led.c下编写c语言代码
  //单片机编程都要写上这个头文件
  #include 《reg52.h》
  //***it对位操作的声明,该行表示将P1.0口重新命名为LED1,对p1^0口输出为0就会发光了,操作第二个灯可设变量***it LED2 = P1^1;
  ***it LED1 = P1^0; void main()
  {
  //给LED1赋值0,相当于灯亮。
  LED1 = 0;
  }
  原理图辅助理解:
  
  
  7、点击编译,代码通过
  
  8、生成HEX 文件,用于烧入硬件
  
  再点击编译,生成成功:
  
  9、启动stc-isp,选择打开程序文件-》test.hex-》下载/编程,进行烧入
  
  操作成功显示:
  
  灯亮了
  10、查看头文件方式:选择#include-》Open document
  
  sfr告诉编译器,寄存器的地址:
  
  11、其他代码,延时效果
  #include《reg52.h》
  ***it LED1 = P1^0;
  unsigned int a;
  void main()
  {
  while(1){
  LED1 = 0; //点亮LED1
  a = 3000;
  while(a--); //软件延时
  LED1 = 1; //熄灭LED1
  a = 3000;
  while(a--); //软件延时
  }
  }
举报

更多回帖

发帖
×
20
完善资料,
赚取积分