[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
Форум » Мастерская » Я начинающий » Общие вопросы начинающих (Задаём вопросы)
Общие вопросы начинающих
KrishДата: Среда, 22.06.2011, 09:33 | Сообщение # 151
Группа: Пользователи
Сообщений: 184
Репутация: 2
Статус: Offline
Кто может подсказать, я хочу подключить 5 кнопок к 1 порту МК, вот тема - http://easyelectronics.ru/multipleksirovanie.html
КТо знает как это реализовать на bascom avr ? там есть для каждой кнопки значение АЦП, нужно его только подставить


LacOS
nightmareДата: Среда, 22.06.2011, 12:40 | Сообщение # 152
Язык программированя: C,C#
Группа: Проверенные
Сообщений: 133
Репутация: 3
Статус: Offline
В хелпе баскома нету?

Добавлено (22.06.2011, 12:40)
---------------------------------------------
Скачал баском чтобы посмотреть, действительно ли там нету хелпа.
Вывод: хелп есть и про ацп там написано.


russian-robots@conference.jabber.ru - jabber чат для робототехников
KrishДата: Среда, 22.06.2011, 18:10 | Сообщение # 153
Группа: Пользователи
Сообщений: 184
Репутация: 2
Статус: Offline
Как вы думаете, можно ли в эту схему засунуть ds1307 ?
http://easyelectronics.ru/img/starters/PCF/PCF_cx.GIF
Тут просто Диоды очень интересные...


LacOS
nightmareДата: Четверг, 23.06.2011, 00:13 | Сообщение # 154
Язык программированя: C,C#
Группа: Проверенные
Сообщений: 133
Репутация: 3
Статус: Offline
Можно.

russian-robots@conference.jabber.ru - jabber чат для робототехников
KrishДата: Четверг, 23.06.2011, 19:18 | Сообщение # 155
Группа: Пользователи
Сообщений: 184
Репутация: 2
Статус: Offline
Можно ли сделать так: в роботе написать программу, чтобы робот ехал 30 см вперед и 30 см вправо и останавливался. Всё управляется с RC5, при нажатии кнопки.
Мне бы хотябы просто скелет, пишется на Бейсике


LacOS
nightmareДата: Пятница, 24.06.2011, 00:09 | Сообщение # 156
Язык программированя: C,C#
Группа: Проверенные
Сообщений: 133
Репутация: 3
Статус: Offline
Можно.
Для измерения расстояние потребуются энкодеры, которые будут давать на выходе несколько импульсов на оборот колеса (сам подумай как такое сделать).
Программу напиши сам, для этого тебе надо будет разобраться как прерывания работают (импульсы с энкодеров надо в прерывании подсчитывать). Информация про прерывания на easyelectronics.ru есть.
Написать программу на бейсике и не сам - стыдно же :))


russian-robots@conference.jabber.ru - jabber чат для робототехников

Сообщение отредактировал nightmare - Пятница, 24.06.2011, 00:11
KrishДата: Пятница, 24.06.2011, 09:00 | Сообщение # 157
Группа: Пользователи
Сообщений: 184
Репутация: 2
Статус: Offline
nightmare, всё намного легче...
Например:
Gosub прямо : Waitms 1000 : Gosub Влево : Wait 1000 : Gosub стоп
В задержке расичтать время на прохождение этого расстояния, правда я не знаю как это указать в программе... Это надо в цикл засунуть а у меня он занят:(


LacOS
nightmareДата: Пятница, 24.06.2011, 12:06 | Сообщение # 158
Язык программированя: C,C#
Группа: Проверенные
Сообщений: 133
Репутация: 3
Статус: Offline
Оно легче - но точность совсем никакая.
Ну раз подходит, то делай так.


russian-robots@conference.jabber.ru - jabber чат для робототехников

Сообщение отредактировал nightmare - Пятница, 24.06.2011, 12:07
DimsanДата: Пятница, 24.06.2011, 14:26 | Сообщение # 159
Язык программированя: Си, Делфи
Группа: Модераторы
Сообщений: 65
Репутация: 1
Статус: Offline
Krish, тебе нужно знать за сколько мс робот проходит 1 прямой участок и затем уже готовое значение использовать в задержке.
Зачем цикл?
Разве в баскоме вложенные циклы запрещены? Что-то мне кажется, что тебе нужно учить основы программирования. А роботов пока отложить...
KrishДата: Вторник, 05.07.2011, 09:02 | Сообщение # 160
Группа: Пользователи
Сообщений: 184
Репутация: 2
Статус: Offline
Quote (Dimsan)
Krish, тебе нужно знать за сколько мс робот проходит 1 прямой участок и затем уже готовое значение использовать в задержке. Зачем цикл? Разве в баскоме вложенные циклы запрещены? Что-то мне кажется, что тебе нужно учить основы программирования. А роботов пока отложить...

За меня не волнуйся, я знаю что мне нужно делать.
Я знаю про циклы бейсика

Добавлено (05.07.2011, 09:02)
---------------------------------------------
Спейс ты случайно не знаешь как сделать программу робота чтоб он работал от 3х ШАРП и этот код не входил в главный цикл.
Я где то видел типо такого:

Code

Do
1:
'код
Gosub
2:
'код
Gosub


LacOS
SpaceДата: Вторник, 05.07.2011, 14:27 | Сообщение # 161
Администратор
Язык программированя: BascomAVR
Группа: Администраторы
Сообщений: 327
Репутация: 8
Статус: Offline


поищи на странице проекта, там код где то был


KrishДата: Среда, 06.07.2011, 11:54 | Сообщение # 162
Группа: Пользователи
Сообщений: 184
Репутация: 2
Статус: Offline
Space, 2 вопроса по бейсику:
1)
Code

For I = 101 To 150
  Servo(1) = I : Waitms P
  Next

I = 101 To 150 - это градусы? если нет, то как подстроить градусы?
2)
Code
If АЦП >= 500 Then : Led = 0 : Else : Led = 1 : End If

АЦП >= 500 - это расстояние же? как можно это расстояние указать в см? или что означает эти 500?


LacOS
SpaceДата: Среда, 06.07.2011, 13:36 | Сообщение # 163
Администратор
Язык программированя: BascomAVR
Группа: Администраторы
Сообщений: 327
Репутация: 8
Статус: Offline
Quote (Krish)
I = 101 To 150 - это градусы?

да
Quote (Krish)
АЦП >= 500 - это расстояние же?

это просто значение выводимое на выходе ацп
переводить в см не имеет смысла, если шарп используешь как датчик препятствия, а если для измерений, то можно. Смотреть тут, первое сообщение


KrishДата: Среда, 06.07.2011, 15:04 | Сообщение # 164
Группа: Пользователи
Сообщений: 184
Репутация: 2
Статус: Offline
Space, а есть ли таблица значений для шарпа. Типо такое то значение - столько то расстояние. Ты же это число не с головы берешь?! или ты подбираешь методом тыка?

LacOS
DimsanДата: Среда, 06.07.2011, 15:45 | Сообщение # 165
Язык программированя: Си, Делфи
Группа: Модераторы
Сообщений: 65
Репутация: 1
Статус: Offline
Krish, открываешь даташит на Шарп, в конце находишь график зависимости напряжения на выходе от расстояния. Затем в зависимости от настроек АЦП считаешь значения АЦП, составляешь себе таблицу. Формула для расчёта значений АЦП есть в даташите на МК.
На всякий случай формулу напишу: Значение_АЦП=Напр_входящее/Напр_опорное*1024 (или 256 в зависимости от розрядности АЦП 8 или 10 бит)


Сообщение отредактировал Dimsan - Среда, 06.07.2011, 15:45
Форум » Мастерская » Я начинающий » Общие вопросы начинающих (Задаём вопросы)
Поиск: