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

Если ваш вопрос не влез ни в одну из вышеперечисленных тем, вам сюда.
Аватара пользователя
pyzhman
Друг Кота
Сообщения: 7016
Зарегистрирован: Вс июл 12, 2009 19:15:29
Откуда: Ижевск
Контактная информация:

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

Сообщение pyzhman »

Вешать можно на любую лапку, все равно там свой протокол.
Docendo discimus
Аватара пользователя
Volgol_555
Потрогал лапой паяльник
Сообщения: 301
Зарегистрирован: Пт сен 23, 2011 13:13:51
Откуда: Минск
Контактная информация:

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

Сообщение Volgol_555 »

Всем привет. Возможно это было ранее, возможно и глупо, но все же...
Я ещё не достаточно изучил USART, но я так понял что для его реализации нужны только 2 ноги МК (RxD и TxD)? С учетом того, что я делаю проект с последующим наращиванием функций, встал такой вопрос. Могу ли я использовать USART и параллельно подключить нагрузку, но так чтобы ничто друг другу не мешало???
Уточняю: мне нужно подключить LCD дисплей на порты D у Atmega8 и в тоже время пользоваться USART'ом, а это порты D.0 и D.1. Если поставить резисторы в 4.7кОм, на именно эти 2 порта идущие к LCD - это поможет?
Заранее спасибо)
Самое гениальное - всегда самое простое
Аватара пользователя
ploop
Модератор
Сообщения: 13490
Зарегистрирован: Ср ноя 26, 2008 16:34:25
Откуда: Тамбовская обл.

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

Сообщение ploop »

Что-то я опять затупил...
Можно как-то сложить знаковое 8-битное число с беззнаковым 16-битным без условных переходов?
Аватара пользователя
pyzhman
Друг Кота
Сообщения: 7016
Зарегистрирован: Вс июл 12, 2009 19:15:29
Откуда: Ижевск
Контактная информация:

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

Сообщение pyzhman »

резисторы в 4.7кОм, на именно эти 2 порта идущие к LCD - это поможет?

От чего поможет?
Вообще говоря - нет, поскольку одним выходом вы собираетесь управлять двумя входами. Ясен пень они оба будут ловить инфу. Но! Если продумать как следует, то возможно, что одно другому и не помешает или будет не мешать работать как надо. Все зависит от ваших возможностей.
2ploop: Навскидку: знаковый бит размножить на старший байт и сложить два двухбайтных числа.
Docendo discimus
Аватара пользователя
ploop
Модератор
Сообщения: 13490
Зарегистрирован: Ср ноя 26, 2008 16:34:25
Откуда: Тамбовская обл.

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

Сообщение ploop »

Типа этого?

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

; r16 - LSB беззнакового 16-битного
; r17 - MSB беззнакового 16-битного
; r18 - знаковое 8-битное
  clr r19
  bst r18,7
  bld r19,0
  neg r19
  add r16,r18
  adc r17,r19
BerZerK-ku
Мучитель микросхем
Сообщения: 492
Зарегистрирован: Вт июл 22, 2008 08:10:54

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

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

Вот что значить асм мышление, я бы о подобном подходе и не подумал :))) :

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

clr r19
sbrc r18, 7
ldi r19,0xFF
Alkul
Держит паяльник хвостом
Сообщения: 933
Зарегистрирован: Ср апр 13, 2011 11:09:20
Откуда: Екатеринбург

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

Сообщение Alkul »

Volgol_555 писал(а):Я ещё не достаточно изучил USART, но я так понял что для его реализации нужны только 2 ноги МК (RxD и TxD)?

Если Вы говорите именно про USART, то, исходя из названия, он может работать как в асинхронном, так и в синхронном режиме.
Для асинхронного режима достаточно двух пинов (выводов) - RxD и TxD, вы правы. А для синхронного режима задействуется третий пин - XCK (вроде, так он называется) для подачи синхроимпульсов.

Volgol_555 писал(а):С учетом того, что я делаю проект с последующим наращиванием функций, встал такой вопрос. Могу ли я использовать USART и параллельно подключить нагрузку, но так чтобы ничто друг другу не мешало???
Уточняю: мне нужно подключить LCD дисплей на порты D у Atmega8 и в тоже время пользоваться USART'ом, а это порты D.0 и D.1.

Я настоятельно не рекомендую так делать. Во-первых, это моветон :) , а во-вторых - под LCD дисплеем Вы понимаете что-то подобное WH1602 (на контроллере HD44780, в общем)?
Если да, то для управления таким дисплеем пины микроконтроллера, как правило, переключаются в режим выходов.
Таким образом, для подачи управляющего сигнала на дисплей Вам будет нужно переключить пин RxD в режим выхода, а это можно сделать, только отключив USART. При этом, скорее всего, потребуются добавочные схемотехнические решения для исключения конфликтов наподобие подачи логических уровней на выходные цепи драйвера преобразования интерфейса USART TTL в RS-485/422/232. И Вы сможете, во-первых, потерять байт(ы), поступившие на USART в то время, когда Вы управляете дисплеем. Во-вторых, из-за отключения USART при этом Вы не сможете организовать отправку данных по USART, используя прерывания по передаче байта.

Я понимаю, что у Вас, скорее всего, есть готовые подпрограммы для работы с дисплеем, рассчитанные для подключения дисплея к порту D. Поверьте, гораздо проще будет внести изменения в эти подпрограммы и перенести дисплей на другой порт. Тем более, что изменения не так уж и велики.
Аватара пользователя
ploop
Модератор
Сообщения: 13490
Зарегистрирован: Ср ноя 26, 2008 16:34:25
Откуда: Тамбовская обл.

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

Сообщение ploop »

Вот что значить асм мышление, я бы о подобном подходе и не подумал

Угу, просто спать больше надо :)))
Аватара пользователя
pyzhman
Друг Кота
Сообщения: 7016
Зарегистрирован: Вс июл 12, 2009 19:15:29
Откуда: Ижевск
Контактная информация:

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

Сообщение pyzhman »

Типа этого?

Проканало? А то вломы проверять. :oops:
Docendo discimus
Аватара пользователя
ploop
Модератор
Сообщения: 13490
Зарегистрирован: Ср ноя 26, 2008 16:34:25
Откуда: Тамбовская обл.

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

Сообщение ploop »

Не знаю, на работе пока, девайс дома :)
Судя по расчетам - должно.
Аватара пользователя
Volgol_555
Потрогал лапой паяльник
Сообщения: 301
Зарегистрирован: Пт сен 23, 2011 13:13:51
Откуда: Минск
Контактная информация:

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

Сообщение Volgol_555 »

Alkul писал(а):
Я понимаю, что у Вас, скорее всего, есть готовые подпрограммы для работы с дисплеем, рассчитанные для подключения дисплея к порту D. Поверьте, гораздо проще будет внести изменения в эти подпрограммы и перенести дисплей на другой порт. Тем более, что изменения не так уж и велики.


Спасибо, я тоже так думал - переделать программу на другой порт, - но мне дозволяется в CodeVisionAVR у Atmega8 выставить LCD на порты B или D. Но мне нужны порты D.0 и D.1 для USART и порты B.6 и B.7 для внешнего кварца, т.е. конфиг портов B и D не подходит. Остается только порты C. Но к нему относится порт С6-reset, поэтому CodeVision не позволяет выполнить подключение к C, но есть С.3, который по идее свободный и можно было бы его поставить вместо С6. Так вот вопрос: как в CodeVision поменять порт С6 c С3 для LCD дисплея. Пробовал в библиотеки залезть, но там ничего конкретного нету(
Вот как в CV проходит инициализация портов для B
// Alphanumeric LCD Module functions
#asm
.equ __lcd_port=0x18 ;PORTB
#endasm
#include <lcd.h>
Как сделать для портов C ?
Самое гениальное - всегда самое простое
Аватара пользователя
ChipKiller
Сверлит текстолит когтями
Сообщения: 1163
Зарегистрирован: Ср янв 05, 2011 16:25:15

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

Сообщение ChipKiller »

Volgol_555 писал(а):Как сделать для портов C ?
.. заглянуть в datasheet или файл mega8.h в папке inc.

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

#asm
.equ __lcd_port=0x15 ;PORTС
#endasm
Аватара пользователя
Volgol_555
Потрогал лапой паяльник
Сообщения: 301
Зарегистрирован: Пт сен 23, 2011 13:13:51
Откуда: Минск
Контактная информация:

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

Сообщение Volgol_555 »

ChipKiller писал(а):
Volgol_555 писал(а):Как сделать для портов C ?
.. заглянуть в datasheet или файл mega8.h в папке inc.

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

#asm
.equ __lcd_port=0x15 ;PORTС
#endasm


да, нашел) Остался один вопрос. Можно ли С6 заменить на С3?, скажем переопределить заново? И так чтобы это сработало с LCD дисплеем, т.е. в каком-то смысле его обмануть посылая сигнал не С.6, как это должно быть,а на С3, соответственно туда ногу подключив. При этом сделать наиболее просто не переправляя библиотеки. Если да, то как это можно сделать на Си?
Самое гениальное - всегда самое простое
Аватара пользователя
DJ_Kiridza
Мучитель микросхем
Сообщения: 458
Зарегистрирован: Пн дек 13, 2010 13:01:59
Откуда: Украина
Контактная информация:

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

Сообщение DJ_Kiridza »

pyzhman писал(а):Вешать можно на любую лапку, все равно там свой протокол.

Проблема не в том, чтобы вешать на лапку - это я и сам понимаю, корень вопроса звучал:
"подходит ли USI для работы с DS18B20" ??
мысли мысли штош вы вйотесь
над мойейу головойу
вы там мосга нинайдете
нед там мосга! йа тупойе (БОР)
Аватара пользователя
Gudd-Head
Друг Кота
Сообщения: 20092
Зарегистрирован: Чт сен 18, 2008 12:27:21
Откуда: Столица Мира Санкт-Петербург

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

Сообщение Gudd-Head »

DJ_Kiridza писал(а):"подходит ли USI для работы с DS18B20" ??

Проще с нуля написать 1-Wire, чем колдовать с USI.
[ Всё дело не столько в вашей глупости, сколько в моей гениальности ] [ Правильно заданный вопрос содержит в себе половину ответа ]
Аватара пользователя
ploop
Модератор
Сообщения: 13490
Зарегистрирован: Ср ноя 26, 2008 16:34:25
Откуда: Тамбовская обл.

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

Сообщение ploop »

pyzhman писал(а):
Типа этого?

Проканало? А то вломы проверять. :oops:

Вот так вот:

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

  clr r19
  sbrc r18, 7
    ldi r19,0xFF
  add r16,r18
  adc r17,r19
Аватара пользователя
pyzhman
Друг Кота
Сообщения: 7016
Зарегистрирован: Вс июл 12, 2009 19:15:29
Откуда: Ижевск
Контактная информация:

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

Сообщение pyzhman »

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

sbrc r18, 7

Что за фигня???!!!! Сначала одно, потом другое. Пацан сказал - пацан сделал. Некрасиво как-то получается. :)
Docendo discimus
Аватара пользователя
ploop
Модератор
Сообщения: 13490
Зарегистрирован: Ср ноя 26, 2008 16:34:25
Откуда: Тамбовская обл.

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

Сообщение ploop »

Дык, я как покороче :)))
Работает главное...
Аватара пользователя
pyzhman
Друг Кота
Сообщения: 7016
Зарегистрирован: Вс июл 12, 2009 19:15:29
Откуда: Ижевск
Контактная информация:

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

Сообщение pyzhman »

Так и говорил бы - покороче, а не морочить голову людям. Расстроил ты меня. Пойду водку пить, вчера мне обещали. :)
Docendo discimus
Аватара пользователя
ploop
Модератор
Сообщения: 13490
Зарегистрирован: Ср ноя 26, 2008 16:34:25
Откуда: Тамбовская обл.

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

Сообщение ploop »

Кстати первый вариант тоже работает.
Так что много не напивайся :)
Ответить

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