home *** CD-ROM | disk | FTP | other *** search
/ 64'er Special 23 / 64er_Magazin_Sonderheft_23_19xx_Markt__Technik_de_Disk_2_of_2_Side_A.d64 / temp4 (.txt) < prev    next >
Commodore BASIC  |  2022-10-26  |  2KB  |  98 lines

  1. 0 rem ********* temp4 *****************
  2. 1 rem version temp 01
  3. 2 rem written by w.elbe
  4. 3 rem *********************************
  5. 5 print"[147]" : rem bildschirm loeschen
  6. 10 rem --------------------------------
  7. 20 rem      hauptprogramm
  8. 30 rem
  9. 35 gosub 30000 : rem maschinen-prog.
  10. 40 gosub 100 : rem a/d-wandler lesen
  11. 50 gosub 200 : rem funktionsw. berechn.
  12. 60 gosub 300 : rem temperatur  berechn.
  13. 70 gosub 400 : rem ausgabe bildschirm
  14. 80 goto 40
  15. 100 rem -------------------------------
  16. 110 rem       a/d-wandler lesen
  17. 120 rem
  18. 122 ax=0:ay=0:bx=0:by=0
  19. 125 for i = 1 to 10
  20. 130 :         sys 850
  21. 140 :         ax=ax+peek(828)
  22. 142 :         ay=ay+peek(829)
  23. 144 :         bx=bx+peek(830)
  24. 146 :         by=by+peek(831)
  25. 150 next i
  26. 160 :         ax=int(ax/10)
  27. 162 :         ay=int(ay/10)
  28. 164 :         bx=int(bx/10)
  29. 166 :         by=int(by/10)
  30. 190 return
  31. 200 rem -------------------------------
  32. 210 rem    funktionswert berechnen
  33. 220 rem
  34. 230 :ax=ax/100
  35. 231 :ax=0.052*ax^2+1.263*ax-0.217
  36. 232 :ax=ax*100
  37. 233 :ax=ax*0.707
  38. 240 :  bx=bx/100
  39. 241 :  bx=0.052*bx^2+1.263*bx-0.217
  40. 242 :  bx=bx*100
  41. 243 :  bx=bx*0.707
  42. 250 :    ay=ay/100
  43. 251 :    ay=0.1751*ay^2+0.99*ay-0.06
  44. 252 :    ay=ay*100
  45. 253 :    ay=ay*0.707
  46. 260 :      by=by/100
  47. 261 :      by=0.1751*by^2+0.99*by-0.06
  48. 262 :      by=by*100
  49. 263 :      by=by*0.707
  50. 290 return
  51. 300 rem -------------------------------
  52. 310 rem     temperatur berechnen
  53. 320 rem
  54. 330 t1=(3906/log(ax*1000/92.9e-3))-273
  55. 331 t1=int(t1*10)/10
  56. 340 t2=(3906/log(ay*1000/92.9e-3))-273
  57. 341 t2=int(t2*10)/10
  58. 350 t3=(3906/log(bx*1000/92.9e-3))-273
  59. 351 t3=int(t3*10)/10
  60. 360 t4=(3906/log(by*1000/92.9e-3))-273
  61. 361 t4=int(t4*10)/10
  62. 390 return
  63. 400 rem -------------------------------
  64. 410 rem      ausgabe - bildschirm
  65. 412 rem
  66. 420 poke 214,0 :rem zeile
  67. 422 poke 211,0 :rem spalte
  68. 424 sys 58640  :rem cursor set
  69. 426 print"                                        "
  70. 430 poke 214,0 :rem zeile
  71. 432 poke 211,3 :rem spalte
  72. 434 sys 58640  :rem cursor set
  73. 436 print t1
  74. 440 poke 214,0 :rem zeile
  75. 442 poke 211,11:rem spalte
  76. 444 sys 58640  :rem cursor set
  77. 446 print t2
  78. 450 poke 214,0 :rem zeile
  79. 452 poke 211,19:rem spalte
  80. 454 sys 58640  :rem cursor set
  81. 456 print t3
  82. 460 poke 214,0 :rem zeile
  83. 462 poke 211,28:rem spalte
  84. 464 sys 58640  :rem cursor set
  85. 466 print t4
  86. 490 return
  87. 30000 rem -----------------------------
  88. 30010 rem      upro a/d-wandler lesen
  89. 30020 rem
  90. 30030 for i=850 to 904
  91. 30040 read j
  92. 30050 poke i,j
  93. 30060 next i
  94. 30100 return
  95. 32000 data120,169,64,32,112,3,142,60,3,140,61,3,169,128,32,112,3,142,62,3,140
  96. 32001 data63,3,169,255,141,2,220,88,96,141,0,220,9,192,141,2,220,160,10,162,255
  97. 32002 data202,208,253,136,208,248,174,25,212,172,26,212,96
  98.