找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 1702|回复: 0
打印 上一主题 下一主题
收起左侧

void xs 这个函数是如何执行的 还有为什么要判断j==20 求帮助

[复制链接]
跳转到指定楼层
楼主
ID:253678 发表于 2017-12-3 19:42 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
  1. #include <stc15f2k60s2.h>
  2. #include <intrins.h>
  3. #define LED P2
  4. sbit L1=P4^4;
  5. sbit L2=P4^2;
  6. sbit L3=P4^1;
  7. sbit L4=P3^7;
  8. sbit L5=P3^6;
  9. sbit L6=P3^5;
  10. sbit L7=P3^4;
  11. sbit L8=P3^3;
  12. void Timer1Init();//¶¨Ê±Æ÷³õʼ
  13. unsigned char code table[]={0x3f,0x06,0x5b,0x4f,
  14.                             0x66,0x6d,0x7d,0x07,
  15.                             0x7f,0x6f};
  16. unsigned char i,j;
  17. void xs();//ÊýÂë¹ÜÏÔʾ
  18. void Delay1ms()  //@11.0592MHz
  19. {
  20. unsigned char i, j;
  21. _nop_();
  22. _nop_();
  23. _nop_();
  24. i = 11;
  25. j = 190;
  26. do
  27. {
  28.   while (--j);
  29. } while (--i);
  30. }
  31. void main()
  32. {
  33. Timer1Init();
  34. while(1)
  35. {
  36.   xs();
  37.   if(j==20)
  38.   {
  39.    i++;
  40.    j=0;
  41.   }
  42.   
  43. }
  44. }
  45. void xs()
  46. {
  47.   L1=0;L2=1;L3=1;L4=1;L5=1;L6=1;L7=1;L8=1;
  48. LED=table[i/100%10];
  49. Delay1ms();

  50. L1=1;L2=0;L3=1;L4=1;L5=1;L6=1;L7=1;L8=1;
  51. LED=table[i/10%10];
  52. Delay1ms();
  53. L1=1;L2=1;L3=0;L4=1;L5=1;L6=1;L7=1;L8=1;
  54. LED=table[i/1%10];
  55. Delay1ms();
  56. }
  57. void Timer1Init()  ////¶¨Ê±Æ÷³õʼ
  58. {
  59.     TMOD = 0x01;
  60.    TH0 = (65536-50000)/256;  
  61.     TL0 = (65536-50000)/256;
  62.     EA = 1;   
  63.     ET0 = 1;   
  64.     TR0 = 1;
  65. }
  66. void Timer0() interrupt 1
  67. {
  68.    TH0 = (65536-50000)/256;  
  69.     TL0 = (65536-50000)/256;
  70.   j++;
  71. }
  72. //void xs 这个函数是如何执行的 还有为什么要判断j==20
复制代码


分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表