$regfile = "m8def.dat"
$crystal = 8000000
$hwstack = 32
$swstack = 32
$framesize = 32
Open "comb.3:9600,8,n,1" For Output As #2
Config Lcdpin = Pin , Db4 = Portb.0 , Db5 = Portd.7 , Db6 = Portd.6 , Db7 = Portd.5 , E = Portd.4 , Rs = Portd.3
Config Lcd = 16 * 1a
Config Portb.1 = Output
Led Alias Portb.1 'Светодиод имитирует импульсный набор
Dim R As Word
Config Adc = Single , Prescaler = Auto , Reference = Internal
Do
Portb.1 = 0
R = Getadc(0)
Print #2 , R 'Вывод значения ацп на терминал "
Select Case R " Клавиатура на ацп"
Case 0 : Exit Do
Case 636 : Lcd "1"
Portb.1 = 1
Waitms 50
Portb.1 = 0
Case 335 : Lcd "2"
Portb.1 = 1
Waitms 50
Portb.1 = 0
Waitms 50
Portb.1 = 1
Waitms 50
Portb.1 = 0
Case 423 : Lcd "3"
Portb.1 = 1
Waitms 50
Portb.1 = 0
Waitms 50
Portb.1 = 1
Waitms 50
Portb.1 = 0
Waitms 50
Portb.1 = 1
Waitms 50
Portb.1 = 0
Case 585 : Lcd "4"
Waitms 50
Portb.1 = 1
Waitms 50
Portb.1 = 0
Waitms 50
Portb.1 = 1
Waitms 50
Portb.1 = 0
Waitms 50
Portb.1 = 1
Waitms 50
Portb.1 = 0
Waitms 50
Portb.1 = 1
Waitms 50
Portb.1 = 0
Case 321 : Lcd "5"
Waitms 50
Portb.1 = 1
Waitms 50
Portb.1 = 0
Waitms 50
Portb.1 = 1
Waitms 50
Portb.1 = 0
Waitms 50
Portb.1 = 1
Waitms 50
Portb.1 = 0
Waitms 50
Portb.1 = 1
Waitms 50
Portb.1 = 0
Waitms 50
Portb.1 = 1
Waitms 50
Portb.1 = 0
Case 403 : Lcd "6"
Waitms 50
Portb.1 = 1
Waitms 50
Portb.1 = 0
Waitms 50
Portb.1 = 1
Waitms 50
Portb.1 = 0
Waitms 50
Portb.1 = 1
Waitms 50
Portb.1 = 0
Waitms 50
Portb.1 = 1
Waitms 50
Portb.1 = 0
Waitms 50
Portb.1 = 1
Waitms 50
Portb.1 = 0
Waitms 50
Portb.1 = 1
Waitms 50
Portb.1 = 0
Case 541 : Lcd "7"
Waitms 50
Portb.1 = 1
Waitms 50
Portb.1 = 0
Waitms 50
Portb.1 = 1
Waitms 50
Portb.1 = 0
Waitms 50
Portb.1 = 1
Waitms 50
Portb.1 = 0
Waitms 50
Portb.1 = 1
Waitms 50
Portb.1 = 0
Waitms 50
Portb.1 = 1
Waitms 50
Portb.1 = 0
Waitms 50
Portb.1 = 1
Waitms 50
Portb.1 = 0
Waitms 50
Portb.1 = 1
Waitms 50
Portb.1 = 0
Case 307 : Lcd "8"
Waitms 50
Portb.1 = 1
Waitms 50
Portb.1 = 0
Waitms 50
Portb.1 = 1
Waitms 50
Portb.1 = 0
Waitms 50
Portb.1 = 1
Waitms 50
Portb.1 = 0
Waitms 50
Portb.1 = 1
Waitms 50
Portb.1 = 0
Waitms 50
Portb.1 = 1
Waitms 50
Portb.1 = 0
Waitms 50
Portb.1 = 1
Waitms 50
Portb.1 = 0
Waitms 50
Portb.1 = 1
Waitms 50
Portb.1 = 0
Waitms 50
Portb.1 = 1
Waitms 50
Portb.1 = 0
Case 385 : Lcd "9"
Waitms 50
Portb.1 = 1
Waitms 50
Portb.1 = 0
Waitms 50
Portb.1 = 1
Waitms 50
Portb.1 = 0
Waitms 50
Portb.1 = 1
Waitms 50
Portb.1 = 0
Waitms 50
Portb.1 = 1
Waitms 50
Portb.1 = 0
Waitms 50
Portb.1 = 1
Waitms 50
Portb.1 = 0
Waitms 50
Portb.1 = 1
Waitms 50
Portb.1 = 0
Waitms 50
Portb.1 = 1
Waitms 50
Portb.1 = 0
Waitms 50
Portb.1 = 1
Waitms 50
Portb.1 = 0
Waitms 50
Portb.1 = 1
Waitms 50
Portb.1 = 0
Case 369 : Cls
Case 295 : Locate 1 , 4
Lcd "MENU"
Waitms 700
Locate 1 , 3
Lcd "VOLTMETR"
Locate 2 , 3
Lcd "TELEFON"
Case 1000 : Led = 1
Waitms 500
Led = 0
Waitms 500
Led = 1
Waitms 300
Return
End Select
Loop
End
Исходник в баскоме,строго не судите.Тут всего лишь прога для клавиш и начало для меню,естественно много недоработок,всётаки первая моя прога))).Прошу помогите как упростить прогу,в плане включения- отключения порта!А также как обьявить вместо одного значения АЦП, отрезока типа: от 320 до 340,так как на практике значения ацп будут естественно скакать.Ну и если это гиблая затея(клавиатура на ацп),так и скажите,буду собирать на сдвиговых!Ну а по поводу основной схемы трубы,2 варианта.Готовый,который нужно будет подправить
http://madelectronics.ru/zhuk/bugs3.htm. Либо свой,который всё еще в разработке...Жду советов и упреков))