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

Если ваш вопрос не влез ни в одну из вышеперечисленных тем, вам сюда.
Ответить
Модератор
Аватара пользователя
Сообщения: 13490
Зарегистрирован: Ср ноя 26, 2008 16:34:25
Откуда: Тамбовская обл.

Сообщение ploop »

Всё нормально. Точки зажигаются от программатора.
Реклама
Chettuser

Сообщение Chettuser »

Правильно конечно перемычки ставить. И убирать на момент программирования.
Реклама
aam
Собутыльник Кота
Аватара пользователя
Сообщения: 2994
Зарегистрирован: Сб фев 20, 2010 14:00:12
Откуда: Москва

Сообщение aam »

Так точки горят уже после ресета, когда программирование завершено - тут не выдет так, что порт ставит 1, а программатор 0?
Модератор
Аватара пользователя
Сообщения: 13490
Зарегистрирован: Ср ноя 26, 2008 16:34:25
Откуда: Тамбовская обл.

Сообщение ploop »

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

Сообщение ploop »

тут не выдет так, что порт ставит 1, а программатор 0?
Программатор должен отключать линии после прошивки, и никак не влиять на схему.
Реклама
aam
Собутыльник Кота
Аватара пользователя
Сообщения: 2994
Зарегистрирован: Сб фев 20, 2010 14:00:12
Откуда: Москва

Сообщение aam »

Программатор обычный на 74HC244 через LPT-порт такой:
Изображение
Прикол в том, что никаких резисторов там нет :)
Как я ничего не спалил... :shock:

Вот фрагмент моей схемы:
Изображение
ploop писал(а):Программатор должен отключать линии после прошивки, и никак не влиять на схему
Ну ХЗ чего он там отключает, я шью из ПониПрог 2000, может там кривизна какая где?
В итоге, я правильно схему сделал или нет? Пока плату не протравил чтоб можно было исправить.
Вложения
sxema.GIF
(17.1 КБ) 989 скачиваний
ISP.GIF
(21.4 КБ) 8443 скачивания
Реклама
Друг Кота
Аватара пользователя
Сообщения: 6296
Зарегистрирован: Пн ноя 22, 2010 00:57:15
Откуда: Ukraine

Сообщение FreshMan »

aam, вот сдесь правильная схема программатора http://easyelectronics.ru/programmator- ... v-avr.html
Tell Me The Truth
Встал на лапы
Сообщения: 116
Зарегистрирован: Ср апр 28, 2010 17:49:14

Сообщение zenek »

Скажите пожалуйста, пишу в HITECH PICC.
Необходимо как то создать массив из битов порта, т.е. чтобы было что то вроде bit portd[]={RD0,RD1,RD2,RD3,RD4,RD5,RD6,RD7};
и я мог бы считывать и записывать в него(а следовательно в порт побитово;

ну т.е. portd[3] вернет мне значение 3го бита порта, а portd[3]=1; установит в 1 третий бит порта.. Как можно это реализовать?
aam
Собутыльник Кота
Аватара пользователя
Сообщения: 2994
Зарегистрирован: Сб фев 20, 2010 14:00:12
Откуда: Москва

Сообщение aam »

FreshMan писал(а):вот сдесь правильная схема программатора
Так я и думал... Кароче, резики надо допаять в мой байтбластер. Только вот 33 Ом - не мало? Это ведь 150 мА при 5 В выходит, если коротнуть!
А схема самого устройства, значит, правильная?
Модератор
Аватара пользователя
Сообщения: 13490
Зарегистрирован: Ср ноя 26, 2008 16:34:25
Откуда: Тамбовская обл.

Сообщение ploop »

Только вот 33 Ом - не мало? Это ведь 150 мА при 5 В выходит, если коротнуть!
Но всё равно сгореть не должен, хоть какая-то защита.
У меня 330 Ом стоят в протоссе. Иногда бывают проблемы, если что-то тяжёлое на порту. Лучше Ом 100 поставить.
Ну ХЗ чего он там отключает, я шью из ПониПрог 2000, может там кривизна какая где?
74HC244 имеет трёхстабильные выходы (с Z состоянием), так что должен отрубать, если нормально всё.
Родился
Аватара пользователя
Сообщения: 15
Зарегистрирован: Вс фев 05, 2012 04:16:02
Откуда: Новотроицк

Сообщение zecagent »

Здравствуйте. 2 вопроса.
1. Есть цепь и микроконтроллер, который отсчитывает время. Как сделать, чтобы по истечении запрограммированного времени отключить питание той цепи? На ум приходит только тиристор использовать. Как обычно делают?
2. Есть цепь и микроконтроллер. Как сделать, чтобы микроконтроллер мог задавать разный ток в цепи, к примеру 5, 10, 15 мА. На ум приходит ШИМ, но не соображу никак - можно так использовать ШИМ или нет.
Друг Кота
Аватара пользователя
Сообщения: 20092
Зарегистрирован: Чт сен 18, 2008 12:27:21
Откуда: Столица Мира Санкт-Петербург

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

zecagent писал(а):Как сделать, чтобы по истечении запрограммированного времени отключить питание той цепи?
Какой ТОЙ?
zecagent писал(а):2. Есть цепь и микроконтроллер. Как сделать, чтобы микроконтроллер мог задавать разный ток в цепи, к примеру 5, 10, 15 мА
Как вариант, поставить токовый ЦАП.
[ Всё дело не столько в вашей глупости, сколько в моей гениальности ] [ Правильно заданный вопрос содержит в себе половину ответа ]
Родился
Аватара пользователя
Сообщения: 15
Зарегистрирован: Вс фев 05, 2012 04:16:02
Откуда: Новотроицк

Сообщение zecagent »

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

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

zecagent писал(а):Есть некая цепь и микроконтроллер. Нужно чтобы микроконтроллер по определенной программе включал или полностью обесточивал цепь.
Всё-то из вас надо вытягивать. Цепь переменка или постоянка? Как вариант — транзистор/реле.
Спасибо. А какие еще к примеру могут быть варианты?
Сделать ЦАП на транзисторах.
[ Всё дело не столько в вашей глупости, сколько в моей гениальности ] [ Правильно заданный вопрос содержит в себе половину ответа ]
Chettuser

Сообщение Chettuser »

Скачал новый MPLAB X с официального сайта.
При установке выскакивает сообщение.
MPLABX.jpg
И переходит на страницу скачивания: http://www.oracle.com/technetwork/java/ ... index.html
Я скачал JRE 1.6. Установил. При попытке установить MPLAB X снова то же самое. :cry:

ПыСы:
Установленная бета версия, окно about:
Product Version: MPLAB X IDE Beta7.02
Java: 1.7.0_02; Java HotSpot(TM) Server VM 22.0-b10
System: Windows XP version 5.1 running on x86; Cp1251; ru_RU (mplab)
Опытный кот
Аватара пользователя
Сообщения: 849
Зарегистрирован: Сб янв 05, 2008 11:05:15
Откуда: Україна м.Луцьк

Сообщение sachok »

Есть задача - нужно что бы функция исполнялась определенное время. Написал код (упрощенная версия):

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

void go_forward(char sec) {
	timer_max = sec * 10;
	timer_flag = 0xFF;
	while (timer_flag != 0){
	// что то делаем
	}
}

interrupt void Timer1_OVF(void) {
	TPM1SC_TOF = 0;
	timer_count++;
	if (timer_count == timer_max) {
		timer_flag = 0;
	}
}
Суть работы такая - вызываем go_forward(5) и стартуем таймер, и пока таймер тикает нужно что то делать, как только от тикал - выйти из функции. Вот только так не работает - игнорирует while (timer_flag != 0).
Такое наблюдалось на AVR (avr-gcc) на freescale (Code Warrior) поэтому написал сюда. Подскажите куда копать? Компилятор (оптимизатор)..?
Я не Сашок!!!
Контактная информация:
Сверлит текстолит когтями
Аватара пользователя
Сообщения: 1116
Зарегистрирован: Чт окт 15, 2009 14:16:18
Откуда: Екб

Сообщение AI_Disable »

timer_flag volatile?
Контактная информация:
Друг Кота
Аватара пользователя
Сообщения: 7360
Зарегистрирован: Пт авг 28, 2009 21:34:30
Откуда: 845-й км.

Сообщение uldemir »

timer_flag объявлена как volatile?
А люди посмотрят и скажут: "Собаки летят. Вот и осень."
Опытный кот
Аватара пользователя
Сообщения: 849
Зарегистрирован: Сб янв 05, 2008 11:05:15
Откуда: Україна м.Луцьк

Сообщение sachok »

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

volatile unsigned char timer_flag = 0;
Только что еще протестировал, оно зацикливается на while.
Я не Сашок!!!
Контактная информация:
Сверлит текстолит когтями
Аватара пользователя
Сообщения: 1116
Зарегистрирован: Чт окт 15, 2009 14:16:18
Откуда: Екб

Сообщение AI_Disable »

Проверьте чем-нибудь срабатывает ли прерывание, возможно, неверная инициализация таймера, ну или там sei забыли...
Контактная информация:
Ответить

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