新人报道,我将成为这个大家庭一员

[复制链接]
 楼主| xiongxiaoshuang 发表于 2013-12-27 17:10 | 显示全部楼层 |阅读模式
我是新人,刚开始学习单片机,来这里报个到。
有段程序,好像有点问题:
  1. #include
  2. #define uchar unsigned char
  3. void delay(uchar n);


  4. void main()
  5. {
  6. uchar i;
  7. i=P1;
  8. i=0xfe;
  9. for(;;i++)
  10. delay(100);
  11. while(1);
  12. }

  13. void delay(uchar n)
  14. {
  15. uchar j,k;
  16. for  (n;n--;n>0)
  17. for (j=10;j--;j>0)
  18. for (k=10;k--;k>0);
  19. }                                                                                                     


 楼主| xiongxiaoshuang 发表于 2013-12-27 17:12 | 显示全部楼层
  1. #include <reg51.h>
  2. #define uchar unsigned char
  3. void delay(uchar n);
  4. void main()
  5. {
  6. uchar i;
  7. i=P1;
  8. i=0xfe;
  9. for(;;i++)
  10. delay(100);
  11. while(1);
  12. }

  13. void delay(uchar n)
  14. {
  15. uchar j,k;
  16. for  (n;n--;n>0)
  17. for (j=10;j--;j>0)
  18. for (k=10;k--;k>0);
  19. }

zhangmangui 发表于 2013-12-27 17:29 | 显示全部楼层
欢迎新朋友
dirtwillfly 发表于 2013-12-27 20:48 | 显示全部楼层
欢迎楼主,多多交流
dirtwillfly 发表于 2013-12-27 20:49 | 显示全部楼层
你这段代码是想做啥?
 楼主| xiongxiaoshuang 发表于 2013-12-27 23:07 | 显示全部楼层
dirtwillfly 发表于 2013-12-27 20:49
你这段代码是想做啥?

让一个led灯闪烁
dirtwillfly 发表于 2013-12-28 08:45 | 显示全部楼层
xiongxiaoshuang 发表于 2013-12-27 23:07
让一个led灯闪烁

额,51单片机可以直接位操作,让一个灯闪烁一般是先在main()函数之前把对应的引脚定义一个别名,类似:sbit LD1 = P1^1
然后再main()中的while(1)循环中每delay一段时间对LD1进行取反操作就可以了
您需要登录后才可以回帖 登录 | 注册

本版积分规则

4

主题

23

帖子

1

粉丝
快速回复 在线客服 返回列表 返回顶部