Пример реализации меню... 16F876A и LCD1604 - Форум Picbasic.ru
Регистрация | Вход
[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
Страница 1 из 11
Модератор форума: demanik 
Форум Picbasic.ru » Программирование МК » Proton PicBasic » Пример реализации меню... 16F876A и LCD1604
Пример реализации меню... 16F876A и LCD1604
Ethno Дата: Сб, 08.03.2014, 22:05  |                                                                                                                Сообщение # 1
Группа: Проверенные
Ранг:  Понимаю
Сообщений: 93
Репутация: 0   ±
Замечания:   ±
На сайте с 11.12.2012

Статус: Offline

Реализовал меню на LCD1604 все вроде работает, но терзают сомнения, что что-то не так.

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
Прикрепления: 16F876A_menu.bas(2Kb) · 16F876A_menu.dsn(85Kb)
ЯНДЕКС Дата: 08.03.2014
shaman Дата: Сб, 08.03.2014, 22:20  |                                                                                                                Сообщение # 2
Группа: Проверенные
Ранг:  Могу и подсказать
Сообщений: 176
Репутация: 5   ±
Замечания:   ±
На сайте с 07.11.2011

Статус: Offline

Добрый вечер, посмотрел я Вашу программу , и есть недостаток в ней
1. выход из меню выбранного измерения нет
2. меню листается только в одну сторону
3. переделайте свой код программы так как при входе в подпрограмму
Main:
var0 = ADIn 0
DelayMS 1
Print At 1, 1,  "MENU0 ", Dec var0  / 204.6
GoTo Main.

она просто у Вас закальцевалась и невозможно с нее выйти , что бы зайти в пункт меню к примеру №2

Сообщение отредактировал shaman - Сб, 08.03.2014, 22:22
Ethno Дата: Сб, 08.03.2014, 22:29  |                                                                                                                Сообщение # 3
Группа: Проверенные
Ранг:  Понимаю
Сообщений: 93
Репутация: 0   ±
Замечания:   ±
На сайте с 11.12.2012

Статус: Offline

Цитата shaman ()
Добрый вечер, посмотрел я Вашу программу , и есть недостаток в ней1. выход из меню выбранного измерения нет
2. меню листается только в одну сторону
3. переделайте свой код программы так как при входе в подпрограмму
Main:
var0 = ADIn 0
DelayMS 1
Print At 1, 1, "MENU0 ", Dec var0 / 204.6
GoTo Main.

она просто у Вас закальцевалась и невозможно с нее выйти , что бы зайти в пункт меню к примеру №2
Пока не делал выхода... мне важно правильно сделал само меню или нет...
Andriy76 Дата: Сб, 08.03.2014, 22:32  |                                                                                                                Сообщение # 4
Группа: Проверенные
Ранг:  Могу и подсказать
Сообщений: 239
Репутация: 10   ±
Замечания:   ±
На сайте с 06.04.2010

Статус: Offline

Я бы условно поделил меню на несколько типов .
1 Последовательное 
2 Паралельное 
3 Смешаное 
К первому отнес бы - если выходные параметры зависят от нескольких . Как пример реализовано в моей зарядке .
К второму  - если надо изменить , измерить и назад в главное меню .
К третьему - выше в вариациях .
Знакомый по моей просьбе написал программку для создания меню . На Висуал Бейсике .
Где есть выбор индикатора  и можно прописать какая кнопка на каком порте . Правда описание на украинском , на русский так пока и не перевел .  cool
Если интересно могу выложить .
Ethno Дата: Сб, 08.03.2014, 22:40  |                                                                                                                Сообщение # 5
Группа: Проверенные
Ранг:  Понимаю
Сообщений: 93
Репутация: 0   ±
Замечания:   ±
На сайте с 11.12.2012

Статус: Offline

Цитата Andriy76 ()
Я бы условно поделил меню на несколько типов .1 Последовательное
2 Паралельное
3 Смешаное
К первому отнес бы - если выходные параметры зависят от нескольких . Как пример реализовано в моей зарядке .
К второму - если надо изменить , измерить и назад в главное меню .
К третьему - выше в вариациях .
Знакомый по моей просьбе написал программку для создания меню . На Висуал Бейсике .
Где есть выбор индикатора и можно прописать какая кнопка на каком порте . Правда описание на украинском , на русский так пока и не перевел . cool
Если интересно могу выложить

Конечно интересно...
shaman Дата: Сб, 08.03.2014, 22:42  |                                                                                                                Сообщение # 6
Группа: Проверенные
Ранг:  Могу и подсказать
Сообщений: 176
Репутация: 5   ±
Замечания:   ±
На сайте с 07.11.2011

Статус: Offline

Нет неправильно , Андрей Вам правильно говорит, поделите меню  и перепишите код.
Andriy76 Дата: Сб, 08.03.2014, 23:21  |                                                                                                                Сообщение # 7
Группа: Проверенные
Ранг:  Могу и подсказать
Сообщений: 239
Репутация: 10   ±
Замечания:   ±
На сайте с 06.04.2010

Статус: Offline

Вот описание программы . Извините за еще не коректный перевод .
Прикрепления: __Menu_Builder.doc(32Kb)
Ethno Дата: Вс, 09.03.2014, 00:23  |                                                                                                                Сообщение # 8
Группа: Проверенные
Ранг:  Понимаю
Сообщений: 93
Репутация: 0   ±
Замечания:   ±
На сайте с 11.12.2012

Статус: Offline

А программу можно потестить...
Andriy76 Дата: Сб, 15.03.2014, 19:24  |                                                                                                                Сообщение # 9
Группа: Проверенные
Ранг:  Могу и подсказать
Сообщений: 239
Репутация: 10   ±
Замечания:   ±
На сайте с 06.04.2010

Статус: Offline

Не вопрос .
Тестируем . Иначе так наверное и не выложил бы здесь .
На 8 не запускаеться . На ХР должно , надо пробовать в 7 .

Добавлено (15.03.2014, 19:24)
---------------------------------------------
Как успехи ? Получилось или нет ?

Прикрепления: Menu_builder.zip(1528Kb)
DAY Дата: Сб, 22.03.2014, 12:03  |                                                                                                                Сообщение # 10
Группа: Проверенные
Ранг:  Начал соображать
Сообщений: 21
Репутация: 0   ±
Замечания:   ±
На сайте с 09.03.2011

Статус: Offline

в win 7 работает 

описание на русском
Прикрепления: Menu_Builder.doc(32Kb)
Andriy76 Дата: Вс, 23.03.2014, 12:12  |                                                                                                                Сообщение # 11
Группа: Проверенные
Ранг:  Могу и подсказать
Сообщений: 239
Репутация: 10   ±
Замечания:   ±
На сайте с 06.04.2010

Статус: Offline

Спасибо за доперевод . 
А как сама реализация ? Стоит того что бы пользоваться ? 
Причина побудившая меня просить знакомого что бы написал программку - много тем с просьбой помочь в реализации меню . 
А так этот процес происходит более осознанно . И предсказуемо .
Форум Picbasic.ru » Программирование МК » Proton PicBasic » Пример реализации меню... 16F876A и LCD1604
Страница 1 из 11
Поиск: