Регистрация | Вход

[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 1 из 1
  • 1
Модератор форума: terrarus, ivan_fd  
Форум Picbasic.ru » Программирование МК » Mikrobasic » Пульт ДУ
Пульт ДУ
Kir7 Дата: Чт, 09.12.2010, 23:08  |                                                                                                                Сообщение # 1
Группа: Проверенные
Ранг:  Новенький
Сообщений: 5
Репутация: 0   ±
Замечания:   ±
На сайте с 03.12.2010

Статус: Offline

Сразу скажу, первый раз занимаюсь контроллерами. Так что не взыщите. Необходимо изготовить пульт для медиапроигрывателя. Контроллер не выбирал, взял что было PIC16F676. Выбор у нас не богатый. Функции для работы с NEC кодировкой и воспроизведения команд, написал. Теперь борюсь с клавиатурой. Использую матрицу 4х5. PORTA.0 - PORTA.3 входа PORTB.0 - PORTB.4 выходы. Правда протеус, как то неадекватно моделирует эту функцию. Может я что-то не вижу. Подскажите.

Функция возвращает номер нажатой клавиши.

Сообщение отредактировал Kir7 - Пт, 10.12.2010, 17:19
ЯНДЕКС Дата: 09.12.2010
DAlexV Дата: Пт, 10.12.2010, 11:37  |                                                                                                                Сообщение # 2
Группа: Проверенные
Ранг:  Разобрался
Сообщений: 665
Репутация: 27   ±
Замечания:   ±
На сайте с 13.05.2008

Статус: Offline

Что бы заработало достаточно поменять в тексте PORTC на PORTB везде где встречается. И не забыть сделать правильную конфигурацию портов(вход/выход)

Будьте оригинальны-не повторяйте чужих ошибок ! Рыба сдохла. Теперь STM32(TS)+C#(VS).Старею :)
Kir7 Дата: Пт, 10.12.2010, 13:53  |                                                                                                                Сообщение # 3
Группа: Проверенные
Ранг:  Новенький
Сообщений: 5
Репутация: 0   ±
Замечания:   ±
На сайте с 03.12.2010

Статус: Offline

На этом проце нет PORTB есть PORTА и PORTС. Этот код работает, но в протеусе, функция иногда выдаёт не тот номер кнопки.
DAlexV Дата: Пт, 10.12.2010, 15:09  |                                                                                                                Сообщение # 4
Группа: Проверенные
Ранг:  Разобрался
Сообщений: 665
Репутация: 27   ±
Замечания:   ±
На сайте с 13.05.2008

Статус: Offline

Схемку глянуть можно ????

Будьте оригинальны-не повторяйте чужих ошибок ! Рыба сдохла. Теперь STM32(TS)+C#(VS).Старею :)
Kir7 Дата: Пт, 10.12.2010, 16:07  |                                                                                                                Сообщение # 5
Группа: Проверенные
Ранг:  Новенький
Сообщений: 5
Репутация: 0   ±
Замечания:   ±
На сайте с 03.12.2010

Статус: Offline

Вот проект.
Прикрепления: My_Key.rar(27.9 Kb)
mikhail09p Дата: Пт, 10.12.2010, 16:51  |                                                                                                                Сообщение # 6
Группа: Проверенные
Ранг:  Помогаю всем
Сообщений: 479
Репутация: 14   ±
Замечания:   ±
На сайте с 04.05.2010

Статус: Offline

У меня так работало:

Input PORTA.0: Input PORTA.1: Input PORTA.2: Input PORTA.3 ' Данные порты входа
Output PORTA.4: Output PORTA.5: Output PORTA.6: Output PORTC ' Данные порты выхода
Input PORTC.1
Symbol raw1 = PORTA.0
Symbol raw2 = PORTA.1
Symbol raw3 = PORTA.2
Symbol raw4 = PORTA.3
Dim col1 As PORTA.4: Dim col2 As PORTA.5: Dim col3 As PORTC.0
---------------------------------------------------------------------------------
klava:
key = 0 ' Обработка клавиатуры
col1 = 1
If raw1 = 1 Then
DelayMS 200
key = 1 ' 1
EndIf
If raw2 = 1 Then
DelayMS 200
key = 4 ' 4
EndIf
If raw3 = 1 Then
DelayMS 200
key = 7 ' 7
EndIf
If raw4 = 1 Then
DelayMS 200
key = 42 '*
EndIf
col1 = 0
col2 = 1
If raw1 = 1 Then
DelayMS 200
key = 2 ' 2
EndIf
If raw2 = 1 Then
DelayMS 200
key = 5 ' 5
EndIf
If raw3 = 1 Then
DelayMS 200
key = 8 ' 8
EndIf
If raw4 = 1 Then
DelayMS 200
key = 10 ' 0
EndIf
col2 = 0
col3 = 1
If raw1 = 1 Then
DelayMS 200
key = 3 ' 3
EndIf
If raw2 = 1 Then
DelayMS 200
key = 6 ' 6
EndIf
If raw3 = 1 Then
DelayMS 200
key = 9 ' 9
EndIf
If raw4 = 1 Then
DelayMS 200
key = 35 '#
EndIf
col3 = 0
Return

Kir7 Дата: Пт, 10.12.2010, 17:02  |                                                                                                                Сообщение # 7
Группа: Проверенные
Ранг:  Новенький
Сообщений: 5
Репутация: 0   ±
Замечания:   ±
На сайте с 03.12.2010

Статус: Offline

Спасибо, в принципе алгоритм мало чем отличается. Значит, скорее всего глюк протеуса. В железе сделаю, проверю.
mikhail09p Дата: Пт, 10.12.2010, 17:30  |                                                                                                                Сообщение # 8
Группа: Проверенные
Ранг:  Помогаю всем
Сообщений: 479
Репутация: 14   ±
Замечания:   ±
На сайте с 04.05.2010

Статус: Offline

Ещё раз.
Я для чего скинул

Input PORTA.0: Input PORTA.1: Input PORTA.2: Input PORTA.3 ' Данные порты входа
Output PORTA.4: Output PORTA.5: Output PORTA.6: Output PORTC ' Данные порты выхода
Input PORTC.1
Symbol raw1 = PORTA.0
Symbol raw2 = PORTA.1
Symbol raw3 = PORTA.2
Symbol raw4 = PORTA.3
Dim col1 As PORTA.4: Dim col2 As PORTA.5: Dim col3 As PORTC.0

Иначе не работало! Вы же не показали весь проэкт.

DAlexV Дата: Сб, 11.12.2010, 13:07  |                                                                                                                Сообщение # 9
Группа: Проверенные
Ранг:  Разобрался
Сообщений: 665
Репутация: 27   ±
Замечания:   ±
На сайте с 13.05.2008

Статус: Offline

Прошу прощения, вызвали на работу. Схемку поглядел. После того как удалил все кнопки, увидел забавную картину. Порт Порт А Это на делитель чем то смахивает. В принципе схемка работоспособна если указать протеусу что резисторы цифровые. Приклеил видоизмененную схему. Там немного по другому. Порт А выход, порт С вход. работает без глюков. С резисторами у меня колбасило то же.

еще раз повторюсь
Quote (DAlexV)
И не забыть сделать правильную конфигурацию портов(вход/выход)

Успехов wink
Прикрепления: 7229693.jpg(396.2 Kb) · My_Key.dsn(89.1 Kb)


Будьте оригинальны-не повторяйте чужих ошибок ! Рыба сдохла. Теперь STM32(TS)+C#(VS).Старею :)
chiper Дата: Сб, 11.12.2010, 23:32  |                                                                                                                Сообщение # 10
Группа: Проверенные
Ранг:  Продвинутый
Сообщений: 108
Репутация: 4   ±
Замечания:   ±
На сайте с 14.07.2010

Статус: Offline

Мдааа... Интересный протеус.. вернее даже тупой... :\

У меня в своё время не хотел правильно эмулироваться драйвер двигателя управляемый с МК, тупо не в те стороны вал впращался и не в той последовательности.... Потом убрал драйвер и поставил светодиоды, и управление логикой шло без глюков....
Тоже много жизненных багов заметил... Например ради интереса делал КЗ через кнопку biggrin
Закарачивал через кнопку +1000V постоянного тока и GND.... Протеус даже не предположил что при таком раскладе из кнопки тупо останется только дырка в плате.... Так же светодиоды от 220V запитывал... им тоже хоть бы что....
Короче его ещё пилить и пилить....


Как бы ты хорошо не паял, твой девайс на микроконтроллере без прошивки будет просто куском железа.
Kir7 Дата: Сб, 11.12.2010, 23:54  |                                                                                                                Сообщение # 11
Группа: Проверенные
Ранг:  Новенький
Сообщений: 5
Репутация: 0   ±
Замечания:   ±
На сайте с 03.12.2010

Статус: Offline

Quote (DAlexV)
После того как удалил все кнопки, увидел забавную картину. Порт Порт А Это на делитель чем то смахивает.

Ну а как без них? Те что на землю - защита от наводок и помех, те что последовательно - в принципе, никчему, по инерции поставил.
ЯНДЕКС Дата: 11.12.2010
DAlexV Дата: Пн, 13.12.2010, 16:45  |                                                                                                                Сообщение # 12
Группа: Проверенные
Ранг:  Разобрался
Сообщений: 665
Репутация: 27   ±
Замечания:   ±
На сайте с 13.05.2008

Статус: Offline

Quote (chiper)
Мдааа... Интересный протеус.. вернее даже тупой...

Да нет. Там просто есть куча настроек, которых мы обыватели не всегда знаем. Каждый раз заходя в тупик приходиться перечитывать FAQ на Kazusе. Испытывал глюк с ULN2803, не работали ключи. Оказалось что если не выставить нормальное состояние(1 или 0) на неиспользованные входа, симуляция не работает. А для ускорения работы схемы(если только цифра, без аналога) в свойствах резисторов тип указывать цифровой. Так что как говориться, век живи, век учись, и все равно дураком помрешь. Это я про себя biggrin


Будьте оригинальны-не повторяйте чужих ошибок ! Рыба сдохла. Теперь STM32(TS)+C#(VS).Старею :)
Bogdankul Дата: Пт, 03.06.2022, 17:54  |                                                                                                                Сообщение # 13
Группа: Заблокированные
Ранг:  Пытаюсь разобраться
Сообщений: 41
Репутация: -3   ±
Замечания:   ±
На сайте с 22.10.2019

Статус: Offline

Здравствуйте дамы и господа.

Есть такой замечательный сайт для заказа услуг стоматологии в Минске.К вашим услугам лучшие стоматологи Минска с многолетним стажем.стоматология минск,удаление зуба, отбеливание зубов,лечение зуба,удаление зуба мудрости,стоматология минск цены и стоматология платные услуги минск.
Стоматология премиум-класса в Минске.Приветствуем Вас на официальном сайте стоматологической поликлиники в Минске. С 2008 года мы оказываем гражданам Беларуси, России, Украины, Казахстана, Германии, Англии и других стран СНГ и Европы стоматологические услуги высокого качества.Наша стоматология работает ежедневно и находится в Московском районе Минска, в микрорайоне Малиновка.Мы гордимся тем, что собрали первоклассную команду врачей-стоматологов, которые любят свою работу и делают ее хорошо.Платная стоматология в Минске.Мы – платная стоматология, но цены у нас не кусаются. При этом мы оснастили наши кабинеты современным дорогим оборудованием и инструментами. Мы знаем, что без крепкого здоровья сложно быть счастливым, поэтому приобретаем для лечения только надежные и безопасные материалы. Они обеспечат долговечность итогам лечения, протезирования, имплантации и др. Уже 10 лет благодаря высокотехнологичному оснащению и своему мастерству наши опытные врачи безболезненно проводят сложные манипуляции в ротовой полости и восстанавливают даже безнадежные зубы. Мы беремся за сложные задачи.Получить консультацию в частной стоматологии Вы можете онлайн или записавшись к нам на прием.Стоматология в Беларуси для всей семьи.Нас называют «семейная стоматология», и не зря. Ведь мы предоставляем услуги женщинам и мужчинам любых возрастов, а также детям от 14 лет. К нам приходят целыми семьями, чему мы очень рады, ведь это говорит о том, что мы двигаемся в правильном направлении.Мы выражаем огромную благодарность людям, которые рекомендуют нас своим друзьям и знакомым, которые пишут искренние отзывы о нашей работе и остаются с нами на протяжении многих лет. Ваши отзывы и радостная улыбка – это лучшая благодарность нам, это наше все, и мы этим очень гордимся. Спасибо Вам!
От всей души Вам всех благ!
керамические коронки на каркасе
снятие зубных отложений ультразвуком
циркониевые коронки купить
сложное удаление зуба цена
композитные и керамические виниры
сложное удаление ретинированного зуба
импланты зубов металлокерамика
перед установкой виниров
набор кап для отбеливания зубов
временная коронка фрезерованная
эстетическая стоматология минск
оценка гигиены полости рта
остался кусок зуба после удаления
эссенция для отбеливания зубов
система straumann импланты
реставрация отбеливание зубов
кость для имплантации зуба
имплантация зубов восстановление
ранка после удаления зуба
аппарат для отбеливания зубов цена
отбеливание зубов акция
киста при периодонтите лечение
полностью съемный зубной протез какой лучше
порядок проведения имплантации зубов
белое после удаления зуба
профессиональная чистка зубов стоматология
минск виниры стоматология цены
реминерализация зубов стоимость
имплантация 3 зубов подряд
пломбирование зуба время
установка одного импланта adin
как делают временные коронки на зубы
протезирование зубов после удаления
удаление зуба опухла щека
удаление зуба лунка белая
интердентальные средства гигиены полости рта
4 день после удаления зуба
гигиена полости рта скидка
недорого протез съемный зубной
имплантация зубов верхней челюсти
ретинированный зуб восьмерка удаление
протезирование зубов на имплантатах
свищ после удаления зуба
центр имплантации зубов
композитные виниры до и после
установка абатмента зуба
после удаления зуба можно через
имплантация 28 зубов
керамические виниры цена
профессиональная чистка зубов у стоматолога


магнитоэлектрические измерительные приборы
Форум Picbasic.ru » Программирование МК » Mikrobasic » Пульт ДУ
  • Страница 1 из 1
  • 1
Поиск: