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

Если ваш вопрос не влез ни в одну из вышеперечисленных тем, вам сюда.
xVekx
Встал на лапы
Сообщения: 125
Зарегистрирован: Вс мар 01, 2009 20:41:19

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

Сообщение xVekx »

Что то подобное получается ?

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

#define DDR_SPI DDRB
#define DD_SCK DDB5
#define DD_MISO DDB4
#define DD_MOSI DDB3
#define DD_SS DDB2


uchar SPI_TransmitReceive (uchar pack)
{
SETBIT(DDR_SPI,DD_MOSI);
SETBIT(DDR_SPI,DD_SCK);
SETBIT(DDR_SPI,DD_SS);
SETBIT(PORTB,DD_MISO);
 
SETBIT(SPCR,SPE);
SETBIT(SPCR,MSTR);

SPDR=pack;
while(!(SPSR & (1<<SPIF)));

return SPDR;}

Аватара пользователя
AI_Disable
Сверлит текстолит когтями
Сообщения: 1116
Зарегистрирован: Чт окт 15, 2009 14:16:18
Откуда: Екб
Контактная информация:

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

Сообщение AI_Disable »

Да. Я, например, так делаю:

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

//---------- SPI---------------------
void SPI_init(void)
{
DDRB|=(1<<5)|(1<<3)|(1<<0)|(1<<2);
SPCR=(1<<SPE)|(1<<MSTR);
}
//----------

//---------Передача/приём одного байта по SPI-----------
char SPI(char cData)
{
SPDR=cData;
while(!(SPSR & (1<<SPIF)));
SPSR&=~(1<<SPIF);
return(SPDR);
}
//----------
xVekx
Встал на лапы
Сообщения: 125
Зарегистрирован: Вс мар 01, 2009 20:41:19

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

Сообщение xVekx »

Спасибо за ответы!!!
Аватара пользователя
ooogo
Это не хвост, это антенна
Сообщения: 1306
Зарегистрирован: Вс янв 18, 2009 20:51:02

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

Сообщение ooogo »

ValBag писал(а): Надеюсь, что правильно сбрасывали флаг запроса прерывания - записью в него логической еденицы.

наверное не правильно, записывал туда ноль. надо попробовать :)
Аватара пользователя
ooogo
Это не хвост, это антенна
Сообщения: 1306
Зарегистрирован: Вс янв 18, 2009 20:51:02

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

Сообщение ooogo »

ValBag писал(а):Надеюсь, что правильно сбрасывали флаг запроса прерывания - записью в него логической еденицы.

ValBag Спасибо за помощь помогло :oops: Дело было не в бабине рас.... сидел в кабине! :))
xVekx
Встал на лапы
Сообщения: 125
Зарегистрирован: Вс мар 01, 2009 20:41:19

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

Сообщение xVekx »

Подскажите, а возможно ли перепрошивать какой нибудь простенький микроконтроллер (типо atmega8 atmega16 atmega48 и т.п. ) используя USART. Например имеем связку комп->usb->cp2101(USB TO UART BRIDGE)->USART->Микроконтроллер. Т.е. идея пере прошивать микроконтроллер не используя спец. программатор.???? Вот например используя FT4232H возможно такое используя интерфейс SPI который встроен в FT4232H.
Аватара пользователя
Modest
Сверлит текстолит когтями
Сообщения: 1138
Зарегистрирован: Сб апр 03, 2010 08:57:35

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

Сообщение Modest »

Можно. Есть такая штука как бутлоадер, с помощью него можно прошивать avr через любую переферию контроллера I2c, CPI, USART и т. п. Но нужен программатор чтобы прошить этот бутлоадер :))) :)))
А вообще почему не хотите использовать "спец программатор", есть очень много конструкций, на LPT
USART (COM PORT), USB, и многие из них сосем даже не сложные, неговоря уже о "5 проводах" дляя LPT и его аналоге для COM.
Последний раз редактировалось Modest Ср июл 14, 2010 07:43:11, всего редактировалось 1 раз.
[img]http://i053.radikal.ru/1102/71/0a0346d3a067.gif[/img]
[size=85]Ты думаешь ты думал как ты думаешь? (с)[/size]
Аватара пользователя
mr.Kirill
Мучитель микросхем
Сообщения: 438
Зарегистрирован: Вт сен 25, 2007 19:40:26
Откуда: Челябинск

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

Сообщение mr.Kirill »

xVekx писал(а):Подскажите, а возможно ли перепрошивать какой нибудь простенький микроконтроллер (типо atmega8 atmega16 atmega48 и т.п. ) используя USART. Например имеем связку комп->usb->cp2101(USB TO UART BRIDGE)->USART->Микроконтроллер. Т.е. идея пере прошивать микроконтроллер не используя спец. программатор.???? Вот например используя FT4232H возможно такое используя интерфейс SPI который встроен в FT4232H.

Ответ: Можно.
Прежде чем задать следующий вопрос: а как? Советую почитать в интернете (или на форуме) информацию по теме Bootloader.
[color=#0000BF]"Какой тоской душа не сражена - быть твердым заставляют времена"© "Король Лир" У.Шекспир.[/color]
Аватара пользователя
jumbo
Мучитель микросхем
Сообщения: 490
Зарегистрирован: Вт фев 03, 2009 11:06:33

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

Сообщение jumbo »

Ребята кто может реально помочь, нужно подправить исходник термостата так чтобы при срабатывани термостата начинал мигать весь индикатор, а при отключении термостатирования, переставал мигать. На сайте есть исходник: http://hardlock.org.ua/mc/tiny/termostat_v2/index.html
нужно не только знать, но и уметь это объяснить
Аватара пользователя
Гефестион
Поставщик валерьянки для Кота
Сообщения: 2022
Зарегистрирован: Вт фев 09, 2010 02:04:53
Откуда: Санкт-Петербург

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

Сообщение Гефестион »

Понадобилось мне подключить к шине I2C, по которой обмениваются данными какие-либо устройства, микроконтроллер (Mega 16) в режиме slave receiver. Но проблема в том, что этот микроконтроллер должен остаться незамеченным для остальных устройств, т.е. он не должен отправлять сигнал подтверждения после принятого байта. Однако модуль I2С по умолчанию отправляет бит подтверждения. Вот думаю, как решить эту проблему. Реализовывать интерфейс I2C программно мне совсем не хочется, тем более что в программировании опыт у меня небольшой. В описании этого интерфейса в даташите на Mega 16 прочитал, что если в регистре TWCR не устанавливать бит TWEA (TWI Enable Acknowledge), то устройство не будет выдавать подтверждение. Но там написано также, что таким образом устройство "виртуально отключается от шины".
Собственно вопрос: если не устанавливать бит TWEA, будет ли модуль I2C принимать информацию?
Фак, кот грызёт провод! Сейчас его ударит либо током, либо тапком! ))
Аватара пользователя
Gudd-Head
Друг Кота
Сообщения: 20092
Зарегистрирован: Чт сен 18, 2008 12:27:21
Откуда: Столица Мира Санкт-Петербург

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

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

Гефестион писал(а):"виртуально отключается от шины".

Может, это как раз и значит, что его не будет видно другим устройствам? :)
[ Всё дело не столько в вашей глупости, сколько в моей гениальности ] [ Правильно заданный вопрос содержит в себе половину ответа ]
Chettuser

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

Сообщение Chettuser »

Народ. А как запустить Timing Analizer в Qurtus II?
Пишет: "Error: MAX7000B Device family is not supported by the TimeQuest Timing Analyzer."
truebest
Первый раз сказал Мяу!
Сообщения: 23
Зарегистрирован: Ср авг 26, 2009 17:04:34
Откуда: СПБ

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

Сообщение truebest »

Уважаемые подскажите в контроллере ARM (AT91SAM7A3) выводы которые предназначены для ЦАПА (ADC0_AD0 - ADC0_AD7, ADC1_AD0 - ADC1_AD7) можно использовать как логические? Как вывод и как ввод?

Думаю что можно, опираясь на avr и пик но не уверен
Аватара пользователя
Gudd-Head
Друг Кота
Сообщения: 20092
Зарегистрирован: Чт сен 18, 2008 12:27:21
Откуда: Столица Мира Санкт-Петербург

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

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

truebest писал(а):можно использовать как логические? Как вывод и как ввод?

RTFD
[ Всё дело не столько в вашей глупости, сколько в моей гениальности ] [ Правильно заданный вопрос содержит в себе половину ответа ]
truebest
Первый раз сказал Мяу!
Сообщения: 23
Зарегистрирован: Ср авг 26, 2009 17:04:34
Откуда: СПБ

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

Сообщение truebest »

Gudd-Head писал(а):truebest писал(а):
можно использовать как логические? Как вывод и как ввод?

RTFD


А по кошачьи можно? :))
Аватара пользователя
Gudd-Head
Друг Кота
Сообщения: 20092
Зарегистрирован: Чт сен 18, 2008 12:27:21
Откуда: Столица Мира Санкт-Петербург

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

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

truebest писал(а):А по кошачьи можно? :))

Аналогично RTFM (в гугле найдёте =), заменив M на D (Datasheet).
Если можно, то можно. Если нет — то нет. (не можете сами понять даташит — хотя бы дайте сцылку на него)
[ Всё дело не столько в вашей глупости, сколько в моей гениальности ] [ Правильно заданный вопрос содержит в себе половину ответа ]
Chettuser

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

Сообщение Chettuser »

Кто в Quartus II разбирается?

Как запустить Timing Analizer в Qurtus II?
Пишет: "Error: MAX7000B Device family is not supported by the TimeQuest Timing Analyzer."

Спасибо.
Аватара пользователя
Gudd-Head
Друг Кота
Сообщения: 20092
Зарегистрирован: Чт сен 18, 2008 12:27:21
Откуда: Столица Мира Санкт-Петербург

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

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

После стирания или в новом чипе (AVR) вся память заполнена "FFFF", причём команды с кодом "FFFF" нет (по кр. мере, AVR Studio не знает), но счётчик команд исправно продолжает считать. Отсюда получаются два вывода:
1) команда с кодом "FFFF" аналогична команде nop с кодом "0000"?
2) при подаче питания на чистый контроллер он ничего не делает, но счётчик команд у него работает (при условии соответствующего тактирования)?
[ Всё дело не столько в вашей глупости, сколько в моей гениальности ] [ Правильно заданный вопрос содержит в себе половину ответа ]
Аватара пользователя
ibiza11
Поставщик валерьянки для Кота
Сообщения: 1900
Зарегистрирован: Сб фев 21, 2009 13:11:40
Откуда: Москва

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

Сообщение ibiza11 »

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

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

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

ibiza11 писал(а):Зачем Вам это?

Просто вдруг задумался, что происходит с кристаллом, когда на него подано напряжение питания (и есть такты).
Допустим, МК не используется, но он есть на плате (кварца нет и не предвидится) и к нему подведено питание. Выходит, для снижения энергопотребления стоит написать коротенькую программку, чтобы переводить его в Power Down, а не оставлять его с чистым флэшем?
[ Всё дело не столько в вашей глупости, сколько в моей гениальности ] [ Правильно заданный вопрос содержит в себе половину ответа ]
Ответить

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