trojanxem

Untitled

Jun 25th, 2015
277
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 3.23 KB | None | 0 0
  1. 'służy do określania taktowania z jakim będzie pracować procesor w Hz
  2. $crystal = 3579545
  3. 'Zdefiniowanie wielkosci wyswieltacza 16 znakow x 1 wiersz
  4. Config Lcd = 16 * 1a
  5. 'deklaracja zmiennej x jako byte [1bajt do 255]
  6. Dim x As Byte
  7. 'Zerowanie zmiennej pomocniczej X oraz adresów pamięci mikrokontrolera
  8. x = 0
  9. Adres0 = &H00
  10. Adres1 = &H00
  11. Adres2 = &H00
  12. Adres3 = &H00
  13. Adres4 = &H00
  14. Adres5 = &H00
  15. Adres6 = &H00
  16. 'Alias przypisuje nazwie zminnej J0 = ADRES6.0 ETC
  17. J0 Alias Adres6.0
  18. J1 Alias Adres6.1
  19. J2 Alias Adres6.2
  20. J3 Alias Adres6.3
  21. 'wysterowanie matrycy w zaleznosci od SHK   jak na moje jest to sterowanie linia WL która odblokowuje tranzystory, w zaleznosci od SHK
  22. Dim UK(6) As Byte
  23. 'trzeba podać kompilatorowi jakie porty będą wejściami a jakie wyjściami      nadanie adresow zmiennych POM0 = 0 POM1 = 16 POM2 = 32 POM3 = 48 POM4 = 64 POM5 = 80
  24. POM0 = &B00000000
  25. POM1 = &B00010000
  26. POM2 = &B00100000
  27. POM3 = &B00110000
  28. POM4 = &B01000000
  29. POM5 = &B01010000
  30. 'zapamietanie adresów SHK    jest to prosta implemntacja stosu imo wrzuca sie jeden na drugi tak jak C, tylko w bascomie masz 3 rodzaje stosow, tu wrzucane sa na stos systemowy i zdefiniowanie ich jako BYTE
  31. Dim Poprzedni_adres As Byte
  32. Dim Biezacy_adres As Byte
  33. Poprzedni_adres = &H00
  34. Biezacy_adres = &H00
  35. '
  36. Dim F_1 As Byte
  37. Dim F_2 As Byte
  38. F_1 = &H00
  39. F_2 = &H00
  40. Main:
  41. Do
  42. Biezacy_adres = Adres1
  43. If Biezacy_adres.x > Poprzedni_adres.x Then
  44. Poprzedni_adres = Biezacy_adres
  45. Goto Obsluga_abonenta
  46. End If
  47. If Biezacy_adres.x < Poprzedni_adres.x Then
  48. Poprzedni_adres = Biezacy_adres
  49. Goto Obsluga_rozlaczenia_abonenta
  50. End If
  51. If x = 5 Then
  52. x = 0
  53. End If
  54. Incr x
  55. Loop
  56. Obsluga_abonenta:
  57. If Adres0.7 = 0 Then
  58. Goto Wysterowanie_matrycy_odb1
  59. End If
  60. If Adres0.7 = 1 Then
  61. If Adres0.6 = 0 Then
  62. 'WYSTEROWANIE_MATRYCY_ODB2
  63. End If
  64. 'odrzucenia zadania
  65. If Adres0.6 = 1 Then
  66. Poprzedni_adres.x = 0
  67. End If
  68. End If
  69. Goto Main
  70. Obsluga_rozlaczenia_abonenta:
  71. 'zwalnianie zasobow przy rozlaczeniu abonenta obslugiwanego OCZ1
  72. If F_1.x = 1 Then
  73.  Waitms 30
  74.  Adres0.7 = 0
  75.  J0 = 0
  76.  J1 = 0
  77.  'zerowanie flagi
  78. F_1.x = 0
  79. End If
  80. 'zwalnianie zasobow przy rozlaczeniu abonenta obslugiwanego OCZ2
  81.  If F_2.x = 1 Then
  82.  Waitms 30
  83.  Adres0.6 = 0
  84.  J2 = 0
  85.  J3 = 0
  86.  'zerowanie flagi
  87. F_2.x = 0
  88. End If
  89. Goto Main
  90. Wysterowanie_matrycy_odb1:
  91. 'zajecie zasobow komutatora
  92. Adres0.7 = 1
  93. J0 = 1
  94. J1 = 1
  95. F_1.x = 1
  96. 'przygotowanie drogi dla abonenta
  97. UK(x).0 = 1
  98. Adres2 = UK(x)
  99. Waitms 30
  100. 'zatrzask rejestrow
  101. Adres2.7 = 1
  102. Adres3 = &B01110001
  103. Waitms 30
  104. 'zatrzask rejestrow
  105. Adres3.7 = 1
  106. Adres4 = &B01110010
  107. Waitms 30
  108. 'zatrzask rejestrow
  109. Adres4.7 = 1
  110. UK(x).0 = 0
  111. UK(x).1 = 1
  112. Adres5 = UK(x)
  113. Waitms 30
  114. 'zatrzask rejestrow
  115. Adres5.7 = 1
  116. UK(x).1 = 0
  117. Waitms 30
  118. 'zwolnienie zatrzaskow rejestrow
  119. Adres2.7 = 0
  120. Adres3.7 = 0
  121. Adres4.7 = 0
  122. Adres5.7 = 0
  123. Goto Main
  124. 'analogicznie jak przy WYSTEROWANIE_MATRYCY_ODB1
  125. Wysterowanie_matrycy_odb2:
  126. Adres0.6 = 1
  127. J2 = 1
  128. J3 = 1
  129. F_2.x = 1
  130. UK(x).2 = 1
  131. Adres2 = UK(x)
  132. Waitms 10
  133. Adres2.7 = 1
  134. Adres3 = &B01110100
  135. Waitms 10
  136. Adres3.7 = 1
  137. Adres4 = &B01111000
  138. Waitms 10
  139. Adres4.7 = 1
  140. UK(x).2 = 0
  141. UK(x).3 = 1
  142. Adres5 = UK(x)
  143. Waitms 10
  144. Adres5.7 = 1
  145. UK(x).3 = 0
  146. Waitms 10
  147. Adres2.7 = 0
  148. Adres3.7 = 0
  149. Adres4.7 = 0
  150. Adres5.7 = 0
  151. Goto Main
Advertisement
Add Comment
Please, Sign In to add comment