欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

標(biāo)題: 使用單片機(jī)定時(shí)器控制交通燈設(shè)計(jì) [打印本頁(yè)]

作者: 周春雨0321    時(shí)間: 2018-12-10 09:27
標(biāo)題: 使用單片機(jī)定時(shí)器控制交通燈設(shè)計(jì)
這是我課程設(shè)計(jì)需要的源代碼和原理圖,發(fā)給大家

單片機(jī)源程序如下:
  1. #include <reg51.h>
  2. #define SEG P2
  3. #define SCANP P1
  4. #define count_M1 50000
  5. #define TH_M1 (65535-count_M1)/256;
  6. #define TL_M1 (65535-count_M1)%256;
  7. int count_T0=0;
  8. #define count_M2 250
  9. #define TH_M2 (256-count_M2)
  10. #define TL_M2 (256-count_M2)

  11. char count_T1=0;
  12. char code TAB[10]={0xc0,0xf9,0xa4,0xb0,0x99,
  13.                    0x92,0x82,0xf8,0x80,0x98};
  14. char disp[2]={0x82,0xc0};
  15. bit red,green,yellow,turnred;  //定義紅綠黃燈的標(biāo)志位
  16. char scan=0;
  17. sbit hong=P3^2;
  18. sbit huang=P3^1;
  19. sbit lv=P3^0;
  20. main()
  21. {
  22. IE=0x8a;
  23. TMOD=0x21;
  24. TH0=TH_M1;TL0=TL_M1;
  25. TR0=1;
  26. TH1=TH_M2;TL1=TL_M2;
  27. TR1=1;
  28. red=1;
  29. green=0;
  30. yellow=0;
  31. hong=0;
  32. while(1);
  33. }

  34. void delay()
  35. {
  36. unsigned char a,b;
  37. for(a=100;a>0;a--)
  38. for(b=255;b>0;b--);
  39. }

  40. void TO_1s(void)interrupt 1
  41. {
  42. static char seconds = 60;
  43. TH0=TH_M1;TL0=TL_M1;
  44. if(++count_T0==20)
  45. {
  46. count_T0=0;
  47. seconds--;
  48. if(seconds==0)
  49. {if(red==1&green==0&yellow==0)
  50. {red=0;
  51. green=1;
  52. yellow=0;
  53. hong=1;
  54. lv=0;
  55. seconds=30;
  56. delay();
  57. }
  58. else if(red==0&green==1&yellow==0)
  59. {
  60. green=0;
  61. red=0;
  62. yellow=1;
  63. lv=1;
  64. huang=0;
  65. seconds=3;
  66. delay();
  67. }
  68. else if(red==0&green==0&yellow==1)
  69. {
  70. red=1;
  71. green=0;
  72. yellow=0;
  73. hong=0;
  74. huang=1;
  75. seconds=60;
  76. delay();
  77. }
  78. }
  79. disp[1]=TAB[seconds%10];
  80. disp[0]=TAB[seconds/10];
  81. }
  82. }

  83. void T1_8ms(void)interrupt 3
  84. {
  85. if(++count_T1==32)
  86. {
  87. count_T1=0;
  88. if(++scan==3)scan=1;
  89. SEG=0xff;
  90. SCANP=~scan;
  91. SEG=disp[scan-1];
  92. }
  93. }
復(fù)制代碼

所有資料51hei提供下載:
使用定時(shí)器的交通燈.rar (26.51 KB, 下載次數(shù): 12)







歡迎光臨 (http://m.raoushi.com/bbs/) Powered by Discuz! X3.1