'**************************************************************** '* Name : UNTITLED.BAS * '* Author : [select VIEW...EDITOR OPTIONS] * '* Notice : Copyright (c) 2014 [select VIEW...EDITOR OPTIONS] * '* : All Rights Reserved * '* Date : 13.02.2014 * '* Version : 1.0 * '* Notes : * '* : * '**************************************************************** Device =16F876A Xtal=20 Declare LCD_Type ALPHA Declare LCD_DTPin PORTB.4 Declare LCD_ENPin PORTB.3 Declare LCD_RSPin PORTB.2 Declare LCD_Interface 4 Declare LCD_CommandUs 2000 Declare LCD_DataUs 50 Declare LCD_Lines 2 Declare Adin_Res = 10 Declare Adin_Tad = FRC Declare Adin_Stime = 50 Declare All_Digital = OFF TRISA = %00000111 ADCON1 = %10000000 ' Настройка регистра как аналоговый вход ADCON0 = %10000001 Dim var0 As Word Dim var1 As Word Dim var2 As Word Dim var3 As Word Dim x As Byte x=0 Symbol SN0 = PORTC.0 Symbol SN1 = PORTC.1 Symbol SN2 = PORTC.2 Loop: If SN0 = 0 Then x = x + 1: DelayMS 200 If x=0 Then Print At 1, 15, $FF, $FF: Print At 2, 15, $20, $20 If SN1 = 0 And x = 0 Then Cls: DelayMS 200: GoTo Main If x=1 Then Print At 2, 15, $FF, $FF: Print At 1, 15, $20, $20: Print $FE, $9E, $20, $20 If SN1 = 0 And x = 1 Then Cls: DelayMS 200: GoTo Main1 If x=2 Then Print $FE, $9E, $FF, $FF: Print At 2, 15, $20, $20: Print $FE, $DE, $20, $20 If SN1 = 0 And x = 2 Then Cls: DelayMS 200: GoTo Main2 If x=3 Then Print $FE, $DE, $FF, $FF: Print $FE, $9E, $20, $20 If SN1 = 0 And x = 3 Then Cls: DelayMS 200: GoTo Main3 If SN2 = 0 Then x = x - 1: DelayMS 200 Print At 1, 1, "1." Print At 2, 1, "2." Print $FE, $90, "3." Print $FE, $D0, "4." GoTo Loop Main: var0 = ADIn 0 DelayMS 1 Print At 1, 1, "MENU0 ", Dec var0 / 204.6 GoTo Main Main1: var1 = ADIn 1 DelayMS 1 Print At 2, 1, "MENU1 ", Dec var1 / 204.6 GoTo Main1 Main2: var2 = ADIn 2 DelayMS 1 Print $FE, $90, "MENU2 ", Dec var2 / 204.6 GoTo Main2 Main3: var3 = ADIn 3 DelayMS 1 Print $FE, $D0, "MENU3 ", Dec var3 / 204.6 GoTo Main3