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

標題: 關于用51單片機完成尋跡小車的一些程序問題 [打印本頁]

作者: jiangxi    時間: 2018-5-25 14:57
標題: 關于用51單片機完成尋跡小車的一些程序問題
   這是我根據論壇內一位大神的程序序修改得到的一個程序,但是我有三個問題,如上所示。當我去掉這個for循環后,L298N直接就帶不起來直流電機了,在這里我想問一下各位大佬這個for循環和這兩個delay函數的作用是什么?

單片機源程序如下:
  1. #include <reg51.h>
  2. sbit IN1=P0^0;               
  3. sbit IN2=P0^1;
  4. sbit IN3=P0^2;
  5. sbit IN4=P0^3;
  6. sbit L_PWM=P0^4;           
  7. sbit R_PWM=P0^5;           
  8. sbit hongwai_l=P1^0;
  9. sbit hongwai_r=P1^1;
  10. #define L_go      IN1=1;IN2=0
  11. #define L_back    IN1=0;IN2=1
  12. #define L_stop    IN1=0;IN2=0        
  13. #define R_go      IN3=1;IN4=0
  14. #define R_back    IN3=0;IN4=1
  15. #define R_stop    IN3=0;IN4=0
  16. #define car_go               L_go;R_go;               
  17. #define car_back             L_back;R_back        
  18. #define car_left             R_go;L_stop               
  19. #define car_right            L_go;R_stop              
  20. #define car_stop             L_stop;R_stop        
  21. #define car_left_360         R_go;L_back               
  22. #define car_right_360        L_go;R_back               
  23. unsigned char l_tt=0;        
  24. unsigned char l_Lpwm=3;        
  25. unsigned char l_Rpwm=3;      
  26. void timer0()interrupt 1   using 2
  27. {
  28.         TH0=0XFC;        
  29.         TL0=0X17;
  30.         l_tt++;
  31.         if(l_tt>9)l_tt=0;        
  32.         
  33.         if(l_tt<=l_Lpwm){
  34.                  L_PWM=1;
  35.         }
  36.         else{
  37.                 L_PWM=0;
  38.         }
  39.         if(l_tt<=l_Rpwm){
  40.                 R_PWM=1;
  41.         }
  42.         else{
  43.                 R_PWM=0;
  44.         }
  45. }        

  46. void Delay(unsigned int t)
  47. {
  48.         unsigned int c;
  49.         while(t--){
  50.                 c=10000;
  51.                 while(c--);
  52.         }
  53. }
  54. void time1init()
  55. {
  56.        EA=1;                                                
  57.         TMOD|=0X11;                        
  58.         TH0= 0XFC;               
  59.         TL0= 0X14;
  60.         TR0= 1;
  61.         ET0= 1;        
  62. }
  63. void main(void)
  64. {
  65.         unsigned char i;
  66.          
  67.       if(hongwai_r==0&&hongwai_l==0)
  68.             {
  69.             while(1)
  70.       {      
  71.           l_Lpwm=3;
  72.                 l_Rpwm=3;                 
  73.                 car_go;                        
  74.                 for(i=0;i<10;i++)   //問題一:這里的這個for循環的作用是什么??
  75.        {
  76.                         l_Lpwm++;            
  77.                         Delay(20000);              //問題二:這里的這個Delay函數的作用是什么??
  78.               }               
  79.                 Delay(5);                           //問題三:這里的這個Delay函數的作用是什么??
  80.       }
  81.        }
復制代碼








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