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

標(biāo)題: 我的48V電池組在線單個(gè)電池充電程序(匯編) [打印本頁]

作者: LWB2005_2    時(shí)間: 2017-10-24 16:01
標(biāo)題: 我的48V電池組在線單個(gè)電池充電程序(匯編)
這是我前些時(shí)間用匯編語言編寫的48V電池組在線單個(gè)電池充電程序。請(qǐng)各指教。
下載:
充電器.doc (22 KB, 下載次數(shù): 12)

  1. ; 中斷入口程序 ;;
  2. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  3. ORG 0000H              ;程序執(zhí)行開始地址
  4. LJMP START             ;跳到標(biāo)號(hào)START執(zhí)行
  5. ORG 0003H              ;外中斷0中斷程序入口
  6. RETI                   ;外中斷0中斷返回
  7. ORG 0013H              ;外中斷1中斷程序入口
  8. RETI                   ;外中斷1中斷返回
  9. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  10. ;; 主 程 序 ;;
  11. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  12. START:
  13. MOV R0,#70H           ;清70H-7AH共11個(gè)內(nèi)存單元
  14. MOV R7,#0BH ;
  15. MOV  A,#00H            ;清P1口
  16. MOV  P1,A
  17. MOV  A,#0FFH            ;P3口置高電平
  18. MOV  P3,A
  19. LCALL YS3S
  20. CLEARDISP:
  21. MOV @R0,#00H ;
  22. INC R0 ;
  23. DJNZ R7,CLEARDISP ;
  24. MOV 20H,#00H           ;清20H(標(biāo)志用)
  25. START1:
  26. MOV  A,#20H             ;J4吸動(dòng)啟動(dòng)48V充電回路
  27. MOV  P1,A
  28. LCALL YS3S
  29. MOV  A,70H
  30. CJNE A ,#0FFH,JS       ; 判斷充電是否結(jié)束 (70H中的數(shù)不等于FF則轉(zhuǎn)JS)
  31. AJMP   WC
  32. JS:
  33. JB P3.3,JS1        ;P3.3口為1時(shí)程序往下繼續(xù)
  34. LCALL  DGDCCD      ;P3.3口為0時(shí)調(diào)用單個(gè)電池充電程序(DGDCCD)
  35. JS1:
  36. JB P3.7,JS2        ;P3.7口為1時(shí)程序往下繼續(xù)
  37. LCALL  XZCDFS      ;P3.7口為0時(shí)調(diào)用選擇電池充電方式程序(XZCDFS)
  38. JS2:
  39. SJMP START1            ;P3.3,P3.7口均為1時(shí)跳回START1 繼續(xù)等待
  40. ;延時(shí)3秒鐘子程序,F(xiàn)=12MHz
  41. YS3s:
  42. MOV  R3,#28
  43. MOV  R2,#253
  44. MOV  R1,#219
  45. LOOP1:
  46. DJNZ R1,$
  47. DJNZ R2, LOOP1
  48. DJNZ R3, LOOP1
  49. NOP
  50. RET
  51. ;延時(shí)1秒鐘子程序,F(xiàn)=12MHz
  52. YS1s:
  53. MOV  R3,#9
  54. MOV  R2,#253
  55. MOV  R1,#219
  56. LOOP2:
  57. DJNZ R1,$
  58. DJNZ R2, LOOP2
  59. DJNZ R3, LOOP2
  60. NOP
  61. RET
  62. DGDCCD:                 ;單個(gè)電池充電程序
  63. LCALL YS3s
  64. JB P3.3,TC              ;P3.3不為"0"退出子程序回到主程序繼續(xù)等待 P3.3為“1”轉(zhuǎn)移到TC
  65. CLR  P1.5               ;釋放J4的48V充電回路
  66. MOV  R4,#3
  67. DD:                     ;單個(gè)電池充電程序(DGDCCD)
  68. LCALL YS1s
  69. SETB P1.7               ;點(diǎn)亮1燈
  70. SETB P1.6               ;J5吸動(dòng)啟動(dòng)18V充電回路對(duì)第一個(gè)電池充電
  71. LCALL YS3s
  72. JB P3.4,DD              ;P3.4 不為"0" 繼續(xù)等待
  73. LCALL YS3s
  74. LCALL YS3s
  75. JB P3.4,DD              ;P3.4 不為"0" 繼續(xù)等待
  76. SETB P1.2               ;J1吸動(dòng)對(duì)第二個(gè)電池充電
  77. CLR  P1.7               ;熄滅1燈
  78. DD1:
  79. LCALL YS1s
  80. JB P3.4,DD1              ;P3.4 不為"0" 繼續(xù)等待
  81. LCALL YS3s
  82. LCALL YS3s
  83. JB P3.4,DD1              ;P3.4 不為"0" 繼續(xù)等待
  84. CLR  P1.2               ;釋放J1
  85. LCALL YS1s
  86. SETB P1.3               ;J2吸動(dòng)對(duì)第三個(gè)電池充電
  87. DD2:
  88. LCALL YS1s
  89. JB P3.4 ,DD2             ;P3.4 不為"0" 繼續(xù)等待
  90. LCALL YS3S
  91. LCALL YS3s
  92. JB P3.4 ,DD2             ;P3.4 不為"0" 繼續(xù)等待
  93. CLR  P1.3               ;釋放J2
  94. LCALL YS1s
  95. SETB P1.4               ;J3吸動(dòng)對(duì)第四個(gè)電池充電
  96. DD3:
  97. LCALL YS1s
  98. JB P3.4 ,DD3            ;P3.4 不為"0" 繼續(xù)等待
  99. LCALL YS3S
  100. LCALL YS3s
  101. JB P3.4 ,DD3             ;P3.4 不為"0" 繼續(xù)等待
  102. CLR  P1.4               ;釋放J3
  103. LCALL YS1s
  104. CLR  P1.6               ;釋放J5 充電全部結(jié)束
  105. DJNZ R4, DD

  106. MOV 70H ,#0FFH          ;設(shè)置充電結(jié)束標(biāo)記
  107. TC:
  108. RET
  109. XZCDFS:                 ;選擇電池充電方式程序
  110. LCALL YS3s
  111. JB P3.7,TC1              ;P3.7不為"0"退出子程序回到主程序繼續(xù)等待
  112. SS:

  113. LCALL YS1s
  114. CLR P3.0                 ;點(diǎn)亮常規(guī)充電燈
  115. JNB P3.7 , CS
  116. JB P3.5 ,SS           ;P3.5 不為"0" 繼續(xù)等待(電池未充滿繼續(xù))
  117. LCALL YS3s
  118. JB P3.5 ,SS           ;P3.5 不為"0" 繼續(xù)等待(電池未充滿繼續(xù))
  119. SJMP SS0
  120. CS:                    ;測試各單個(gè)電池電壓
  121. LCALL YS3s
  122. JB P3.7,SS             ;P3.7不為"0"繼續(xù)等待
  123. ;CLR P3.0               ;關(guān)常規(guī)充電燈
  124. CLR P3.1               ;點(diǎn)亮測試各單個(gè)電池電壓燈
  125. LCALL YS1s
  126. JB P3.7,SS             ;P3.7不為"0"繼續(xù)等待
  127. SETB P1.7              ;1 燈點(diǎn)亮測量第一個(gè)電池
  128. SS1:
  129. LCALL YS3s
  130. JB P3.7,SS1             ;P3.7不為"0"繼續(xù)等待
  131. LCALL YS1s
  132. CLR  P1.7
  133. SETB P1.2               ;測量第二個(gè)電池
  134. SS2:
  135. LCALL YS3s
  136. JB P3.7,SS2             ;P3.7不為"0"繼續(xù)等待
  137. LCALL YS1s
  138. CLR  P1.2
  139. SETB P1.3               ;測量第三個(gè)電池
  140. SS3:
  141. LCALL YS3s
  142. JB P3.7,SS3             ;P3.7不為"0"繼續(xù)等待
  143. LCALL YS1s
  144. CLR  P1.3
  145. SETB P1.4              ;測量第四個(gè)電池
  146. SS4:
  147. LCALL YS3s
  148. JB P3.7,SS4             ;P3.7不為"0"繼續(xù)等待
  149. LCALL YS1s
  150. CLR  P1.4
  151. SETB P3.1
  152. AJMP DD                  ;返回單個(gè)電池充電程序
  153. SS0:
  154. CLR  P1.5               ;釋放J4
  155. LCALL YS1s
  156. CLR  P1.6               ;釋放J5 充電全部結(jié)束
  157. MOV 70H ,#0FFH          ;設(shè)置充電結(jié)束標(biāo)記
  158. TC1:
  159. RET
  160. WC:
  161. END

復(fù)制代碼







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