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

標題: 智能小車控制程序 [打印本頁]

作者: daniu    時間: 2014-12-27 16:47
標題: 智能小車控制程序


  1. ;======================================================================
  2. ;編寫者:蘭建文 時間:2009-7-24  地點:源點IC嵌入式培訓機構
  3. ;多功能小車 (小車能尋跡、壁障、無線遙控、電機調速)  
  4. ;使用ATMEL89C2051單片機
  5. ;P1.7控制后輪前進方向  P1.3----循跡左
  6. ;P1.6控制后輪后退方向  P1.2----循跡右
  7. ;P1.5控制前輪左轉方向  P3.1----蜂鳴器
  8. ;P1.4控制前輪右轉方向  P3.5----左轉指示燈
  9. ;P3.2壁障紅外檢測   P3.4----右轉指示燈
  10. ;P3.0無線遙控檢測   P3.3控制555產生38KHZ紅外線
  11. ;定時器中斷0用于調節電機速度,調節PWM
  12. ;===========================系統程序===================================
  13.   ORG  0000H
  14.   JMP  START
  15.   ORG  000BH
  16.   JMP  IN_T1
  17.   ORG  0030H
  18. ;===========================程序開始===================================
  19. START:
  20.   MOV  P1,#0FFH  ;端口初始化
  21.   MOV  P3,#0FFH

  22.   MOV    TMOD,#01H     ;定時器0工作方式1
  23.   MOV    TL0,#0D4H  ;定時0.9ms 設定時初值
  24.   MOV    TH0,#0FEH
  25.   MOV    IE,#82H   ;開總中斷與定時器中斷
  26.   SETB   TR0    ;開定時器
  27.   MOV  R1,#3   ;設置占空比
  28.   SETB F0     ;節拍標志位
  29. MAIN:
  30.   JNB  P1.2,NEXT1  ;判斷是否左轉,光電對管出軌跡,就繼續判斷。
  31.   JNB  P1.3,NEXT2  ;判斷是否右轉,光電對管出軌跡,就右轉。
  32. ;=========================== 小車直走===================================
  33. NEXT4:
  34.   SETB P1.6   ;二個光電對管都在軌跡內,小車就向前直走。
  35.   SETB P1.5
  36.   SETB P1.4
  37.   SETB P3.5
  38.   SETB P3.4
  39.   JMP  MAIN1

  40. NEXT1:
  41.   JB  P1.3,NEXT3
  42. ;=========================== 小車后退===================================
  43.   SETB P1.7   ;兩個光電對管都出了軌跡就后退。
  44.   CLR  P1.6   
  45.   SETB P1.5
  46.   SETB P1.4
  47.   CLR  P3.5     ;亮后退指示燈
  48.   CLR  P3.4
  49. ;=========================== 小車左轉 ==================================     
  50. NEXT3:  
  51.   SETB P1.6
  52.   CLR  P1.4   
  53.   SETB P1.5

  54.   SETB P3.5
  55.   CLR  P3.4   ;亮左轉指示燈
  56.   JMP  MAIN1
  57. ;=========================== 小車右轉 ==================================
  58. NEXT2:      
  59.   SETB P1.6
  60.   SETB P1.4
  61.   CLR  P1.5   

  62.   CLR  P3.5   ;亮右轉指示燈
  63.   SETB P3.4
  64.   JMP  MAIN1
  65. ;=============================調節PWM==================================
  66. MAIN1:
  67.   JNB  F0,MAIN
  68.   CLR  F0
  69.   DJNZ R1,LL
  70.   MOV  R1,#3
  71.   SETB P1.7
  72.   SETB P1.6
  73.   JMP  MAIN
  74. LL:
  75.   CLR  P1.7
  76.   SETB P1.6
  77.   JMP  MAIN
  78. ;==========================定時器中斷0服務子程序=======================
  79. ;輸入: TL0、TH0
  80. ;輸出:無
  81. ;實現的功能:影響標志位F0
  82. ;======================================================================   
  83. IN_T1:
  84.   MOV    TL0,#0D4H    ;定時0.9MS
  85.   MOV    TH0,#0FEH
  86.   SETB F0
  87.   RETI
  88. ;==========================延時子程序==================================
  89. ;輸入: 無
  90. ;輸出:無
  91. ;實現的功能:延時一段時間
  92. ;======================================================================
  93. DELAY:
  94.   MOV  R7,#200
  95. L:
  96.   MOV  R6,#200
  97.   DJNZ R6,$
  98.   DJNZ R7,L
  99.   RET  
  100. ;===========================程序結束===================================
  101.   END
復制代碼



作者: whrui5033    時間: 2015-1-12 13:10
研究研究




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