Мелкие вопросы по МК и ПЛИС.

Если ваш вопрос не влез ни в одну из вышеперечисленных тем, вам сюда.
smac
Мучитель микросхем
Сообщения: 459
Зарегистрирован: Вс июн 01, 2008 12:16:38

Сообщение smac »

Пухич писал(а):Вот тако вопрос возник.

Впервые решил поюзать входной захват. Не то чтобы очень надо, но можно. Памятуя, что с выходным сравнением проблем никогда не было я смело прочитав даташит ринулся исполнять. Атмега8.

Без всего кода сложно сказать, думаю стоит обратить внимание на то что регистры TCNT и ICP - шестнадцатибитные, т.е. нужно порядок чтения соблюдать. В общем я на грабли не натыкался, следовал датшиту, вроде получилось, код привести не могу, он у меня на работе.
Аватара пользователя
ikarab
Опытный кот
Сообщения: 828
Зарегистрирован: Пн мар 16, 2009 21:40:57
Контактная информация:

Сообщение ikarab »

Alex_EXE писал(а):Как можно перевести отдельные выводы микроконтроллера (биты порта) с чтения на запись и обратно, чтобы не потревожить оставшиеся биты порта?


Побитовые поразрядные операции - http://google.com "Язык Си для микроконтроллеров".

Наверно вот так:

Код: Выделить всё

Установить 3 бита:
регистр |= (1<<(номер бита))  |  (еще)  |  (еще);

Сбросить 3 бита:
регистр &= ~(   (1<<(номер бита))  |   (еще)  |  (еще)   );
Аватара пользователя
ARV
Ум, честь и совесть. И скромность.
Сообщения: 18544
Зарегистрирован: Чт дек 28, 2006 08:19:56
Откуда: Новочеркасск
Контактная информация:

Сообщение ARV »

Пухич писал(а):Когда компаратор сбрасывается (на AIN1 больше, чем на AIN0) должна быть запись TCNT1 в ICR1. А ее нэту! Даже флаг ICF1 не ставится.
а как вы это проверяли? особенно установку флага?
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...

Мой уютный бложик... заходите!
Аватара пользователя
Пухич
Модератор
Сообщения: 4673
Зарегистрирован: Вс июн 01, 2008 00:17:35
Откуда: Я всего лишь плод вашего воображения...

Сообщение Пухич »

smac писал(а):Без всего кода сложно сказать, думаю стоит обратить внимание на то что регистры TCNT и ICP - шестнадцатибитные, т.е. нужно порядок чтения соблюдать.


Спасибо за ответ, но, к сожалению, не в кассу. Про это я знаю и уважаю сей факт. Дело в чем-то другом.

а как вы это проверяли? особенно установку флага?


Старый МКшник знает что спросить! :)

Ибо я главное не сказал - АВРСтудия - вот мой инструмент проверки флагов! Собсна прога сейчас временно отлаживается чисто в Студии, т.к. в железе вчера не вполне заработало. Впрочем там трабл в основном не в этом, там другие козявки вылезли, но показалось, что и тут косяк. АВРстудия при эмуляции как раз косячит с этим делом - не захватывает и все тут.

Вообще же захват и в АВРстудии работает. Если, к примеру, ногой PB0 дернуть (при выключенном ACIC), то флаг есть.
Знание - сила!
Аватара пользователя
ARV
Ум, честь и совесть. И скромность.
Сообщения: 18544
Зарегистрирован: Чт дек 28, 2006 08:19:56
Откуда: Новочеркасск
Контактная информация:

Сообщение ARV »

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

Мой уютный бложик... заходите!
Аватара пользователя
GP1
Поставщик валерьянки для Кота
Сообщения: 2401
Зарегистрирован: Пт май 23, 2008 19:32:22
Откуда: Россия, Волгоград
Контактная информация:

Сообщение GP1 »

ikarab писал(а):
sachok писал(а):как правильно настроить порты ATmega16 PD0 (RXD) и PD1 (TXD) что бы они работали с UART

Они автоматически конфигурируются при настройке USART - но если к RXD ничего не подключено кроме дорожек на плате, то наверно ее лучше подтянуть к питанию резистором 10-100 (кОм).

Что-то у меня пока TxD не объявил выходом ничего не выдавалось
Чем дальше, тем больше становлюсь занудой...
Изображение
Аватара пользователя
Alex_EXE
Вымогатель припоя
Сообщения: 580
Зарегистрирован: Сб дек 27, 2008 12:01:35
Откуда: Россия, Екатеринбург
Контактная информация:

Сообщение Alex_EXE »

Вопрос немного в другом:
Есть регистры TRISTA (например), с помощью него я могу установить выводы порта на ввод и на вывод, но только в начале программы, а потом, простая, смена значения регистра нечего не даёт.
Попробовал обращаться вот таким образом TRISA0 , но в данном случае значение всего порта сбрасывается и нужно заново его выставлять, а это может быть проблематично.
Есть какой-нить другой способ переключения выводов микроконтроллера с чтения на запись и обратно или как это правильно делать?
Аватара пользователя
ARV
Ум, честь и совесть. И скромность.
Сообщения: 18544
Зарегистрирован: Чт дек 28, 2006 08:19:56
Откуда: Новочеркасск
Контактная информация:

Сообщение ARV »

Alex_EXE писал(а):Вопрос немного в другом:
Есть регистры TRISTA (например), с помощью него я могу установить выводы порта на ввод и на вывод, но только в начале программы, а потом, простая, смена значения регистра нечего не даёт.
Попробовал обращаться вот таким образом TRISA0 , но в данном случае значение всего порта сбрасывается и нужно заново его выставлять, а это может быть проблематично.
Есть какой-нить другой способ переключения выводов микроконтроллера с чтения на запись и обратно или как это правильно делать?
тип МК укажите
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...

Мой уютный бложик... заходите!
Аватара пользователя
Alex_EXE
Вымогатель припоя
Сообщения: 580
Зарегистрирован: Сб дек 27, 2008 12:01:35
Откуда: Россия, Екатеринбург
Контактная информация:

Сообщение Alex_EXE »

PIC16F84A, 628A, 877 использую
Аватара пользователя
Пухич
Модератор
Сообщения: 4673
Зарегистрирован: Вс июн 01, 2008 00:17:35
Откуда: Я всего лишь плод вашего воображения...

Сообщение Пухич »

ARV писал(а):беда студии в том, что аналоговую периферию, к которой безусловно, относится компаратор, она эмулирует... как бы так вежливо высказаться... плоховато. в общем, практически не эмулирует. думаю, ждать чего-то от студии по поводу аналогового компаратора бессмысленно...


Весь прикол в том, что постановка галочки при эмуляции в пункт ACI, например, отлично себе вызывает прерывания. А вот установка с последующим снятием галочки ACO (эмуляция спада на выходе компаратора) как-то не катит в качестве источника захвата. Ну и в железе какая-то ерунда с этим делом.

Вообще какие-то левые косяки полезли......... Не поверите - измеряю емкость кондея путем его заряда и сравнения на компараторе! Не работает! :)))

Самому смешно. :)
Знание - сила!
Arlleex
Друг Кота
Сообщения: 4435
Зарегистрирован: Сб мар 07, 2009 20:44:36

Сообщение Arlleex »

а какие ограничительные резисторы надо брать для светодиодов 20мА, что бы к МК подсоединить?
Не умеешь - не берись, но не взявшись не научишься...
Аватара пользователя
Alex_EXE
Вымогатель припоя
Сообщения: 580
Зарегистрирован: Сб дек 27, 2008 12:01:35
Откуда: Россия, Екатеринбург
Контактная информация:

Сообщение Alex_EXE »

Stalker46 писал(а):а какие ограничительные резисторы надо брать для светодиодов 20мА, что бы к МК подсоединить?

где-то 300-470 Ом
BerZerK-ku
Мучитель микросхем
Сообщения: 492
Зарегистрирован: Вт июл 22, 2008 08:10:54

Сообщение BerZerK-ku »

Alex_EXE писал(а):
Stalker46 писал(а):а какие ограничительные резисторы надо брать для светодиодов 20мА, что бы к МК подсоединить?

где-то 300-470 Ом


Странные цифры.
Вообщем нужное сопротивление считается так:
R(I)=(U1-U2(I))/I
где U1 - напряжение питания
U2(I) - падение на светодиоде при заданном токе, берется из ВАХ
I - нужный ток.
Пример. Питание 5В, нужный ток 20мА. На светодиоде падает при этом токе падает 2В. Получаем R=(5-2)/0.02=150Ом.
Arlleex
Друг Кота
Сообщения: 4435
Зарегистрирован: Сб мар 07, 2009 20:44:36

Сообщение Arlleex »

хм... а если напряжение питания светодиода 3В, а выходное 5В у МК, резитор должен погасить еще и 2В?
Не умеешь - не берись, но не взявшись не научишься...
Аватара пользователя
Alex_EXE
Вымогатель припоя
Сообщения: 580
Зарегистрирован: Сб дек 27, 2008 12:01:35
Откуда: Россия, Екатеринбург
Контактная информация:

Сообщение Alex_EXE »

Ну, просто, я в своих схемах всегда ставлю 360 Ом – что бы не считать и с «запасом» службы диодов.
clawham
Поставщик валерьянки для Кота
Сообщения: 1957
Зарегистрирован: Пт окт 31, 2008 09:38:55
Откуда: Одесса
Контактная информация:

проблема новичка :)

Сообщение clawham »

Здравствуйте, тоже новичек, тоже спаял простейшую вещь на МК с панелькой монтажкой и т.д. тоже взял шнур от принтера, раскрыл крышку принтерной стороны, отпаял нужные проводки, нужные замкнул раз 10 всё проверил перепрозвонил и т.д. 5 проводков вывел в шлейфик ну сантиметра 4-6 длиной и разьёмчик, на платке с разьемчика 4 резистора и по ножкам МК вот...программу управления ЛСД нокии 3310 в эмуляторе работает и наигрался я уже виртуально до нехочу...теперь хочется в реальности увидеть картинки и букофки:)
В КодВижн АВР настройки программера - поставил Кандасистемз 200, в биосе порт SPP 3F8 принтер LPT был и работал но драйвер удалил пару раз перегружался но у меня при попытке программить чип нету полоски "частота" под типом процессора и что самое обидное ни чтение фьюзов ни сигнатур чипа - ничего не работает, питание МК беру с ЮСБ порта 4,91 вольт на ножках МК....ничего не греется и т.д. что может быть? Принтерный провод полтора метра старый экранированный...мега на панельке с кварцем припаянным, на АВСС ничего не подал так как порт а и не нужен а в будущем будет нужен АЦП хотя подпаять на +5 не проблема никаких буферных микросхем и т.д. всё просто до ужаса и тем обо и ужасно - негде искать косяк...может камень ударенный?
Arlleex
Друг Кота
Сообщения: 4435
Зарегистрирован: Сб мар 07, 2009 20:44:36

Сообщение Arlleex »

собсна вот вопрос. я делаю плату управления светодиодами. 7 кнопок и 11 светдодиодов. мега 8. вот светодиоды через резисторы подключать, а кнопки?

вот еще на кнопки антидребезг надо ставить?
Не умеешь - не берись, но не взявшись не научишься...
Аватара пользователя
ikarab
Опытный кот
Сообщения: 828
Зарегистрирован: Пн мар 16, 2009 21:40:57
Контактная информация:

Сообщение ikarab »

Для разовых отладочных устройств я советую кнопки подключать через резисторы как и светодиоды.
Arlleex
Друг Кота
Сообщения: 4435
Зарегистрирован: Сб мар 07, 2009 20:44:36

Сообщение Arlleex »

а можно кондеры вообще не ставить?
и еще. так какие резисторы ставить на кнопки? 1кОм подойдет?
Не умеешь - не берись, но не взявшись не научишься...
Аватара пользователя
Yellow Tiger
Сверлит текстолит когтями
Сообщения: 1148
Зарегистрирован: Вт июл 08, 2008 12:24:17

Сообщение Yellow Tiger »

Если они уже стоят раньше, или если получение пульсирующего напряжения как раз и является фишкой, то можно.
Ответить

Вернуться в «Разные вопросы по МК»