Спасибо, попытался почитать, но пока тяжело даётся, видимо сказываются пробелы знаний в основах программирования. Некоторые термины и понятия абсолютно незнакомы, приходится обращаться к г-ну Гуглу, но всё это сильно тормозит работу, и банально нет нужного количества времени.В папке с IDE есть файл "Basic Compiler Reference Manual" - почитай его.
Параллельно с учёбой, вопрос:
'Adcin 3, volt_temp 'прочитали АЦП. получили 0-1023 единиц
'5*5( делитель на 5)/1023 = вольт ( примерно 24.4 мВ на единицу )
If jmp_0 = 0 And jmp_3 = 0 Then 'если на GP0 и GP3 нолики (8 банок), то
volt_min = 328 'в единицах АЦП 8*1000/24,4 = 328
volt_max = 541 '8*1650(max значение банки)/24,4=541
If jmp_0 = 1 And jmp_3 = 0 Then 'если на GP0 единичка а на GP3 нолик (10 банок), то
volt_min = 614 'в единицах АЦП 10*1000/24,4 = 410
volt_max = 1013 '10*1650(max значение банки)/24,4=676
If jmp_0 = 0 And jmp_3 = 1 Then 'если на GP0 нолик а на GP3 единичка (12 банок), то
volt_min = 614 'в единицах АЦП 12*1000/24,4 = 492
volt_max = 1013 '12*1650(max значение банки)/24,4=811
Else 'ну, и если 15 банок то
volt_min = 615 'в единицах АЦП 15*1000/24,4 = 615
volt_max = 1014 '15*1650(max значение банки)/24,4=1014
Endif
После того, как я добавляю этот "параграф" выбора аккумуляторов выходит ошибка: "Error in line 235: Endif is missing."
Как я понял, где-то потерялась команда "Endif". Вся программа состоит из 234-х строк!!! Ставлю 235-й Endif, ошибка та-же. Что может быть?
Полная версия прошивки на Бейсике в аттаче.
P.S. не знаю, прав или нет, но вышел из положения следующим образом:
…
Symbol jmp_0 = GPIO.0 'программирование колличества банок
Symbol jmp_3 = GPIO.3 'программирование колличества банок
Symbol charge = GPIO.5 'управление зарядом
Symbol led_ok = GPIO.2 'светодиод ОК
Symbol discharge = GPIO.1 'управление разрядом
…
…
…
'Adcin 3, volt_temp 'прочитали АЦП. получили 0-1023 единиц
'5*5( делитель на 5)/1023 = вольт ( примерно 24.4 мВ на единицу )
If jmp_0 = 0 Then Goto a8
Goto a12
a8:
'--------------------------------------------------------------------------------------
If jmp_3 = 1 Then Goto a10
volt_min = 328 'в единицах АЦП 8*1000/24,4 = 328
volt_max = 541 '8*1650(max значение банки)/24,4=541
Goto pre
a10:
'---------------------------------------------------------------------------------------
volt_min = 410 'в единицах АЦП 10*1000/24,4 = 410
volt_max = 676 '10*1650(max значение банки)/24,4=676
Goto pre
a12:
'---------------------------------------------------------------------------------------
If jmp_3 = 1 Then Goto a15
volt_min = 492 'в единицах АЦП 12*1000/24,4 = 492
volt_max = 811 '12*1650(max значение банки)/24,4=811
Goto pre
a15:
'---------------------------------------------------------------------------------------
volt_min = 615 'в единицах АЦП 15*1000/24,4 = 615
volt_max = 1014 '15*1650(max значение банки)/24,4=1014
Goto pre
'---------------------------------------------------------------------------------------
'алгоритм такой:
'GP0&GP3 = 0 - заряжаем 8 банок
'GP0&GP3 = 1 - заряжаем 15 банок
'GP0 = 0; GP3 = 1 - заряжаем 10 банок
'GP0 = 1; GP3 = 0 - заряжаем 12 банок
pre:
'------------------------------------------------------------------------------------------------------------------------------------------
WaitMs 50 'устаканились
Gosub beep_ok 'пропищали что старт
Gosub beep_ok
…
…
…