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

Если ваш вопрос не влез ни в одну из вышеперечисленных тем, вам сюда.
vbif87
Открыл глаза
Сообщения: 67
Зарегистрирован: Пн мар 03, 2008 22:12:47

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

Сообщение vbif87 »

Подскажите, собираюсь прошить микроконтроллер через LPT порт. Надо ли выключать компьютер, чтобы разъем вставить, вообщем как не спалить компьютер?
Dimok_56
Родился
Сообщения: 8
Зарегистрирован: Сб фев 19, 2011 23:29:32

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

Сообщение Dimok_56 »

vbif87 писал(а):Подскажите, собираюсь прошить микроконтроллер через LPT порт. Надо ли выключать компьютер, чтобы разъем вставить, вообщем как не спалить компьютер?


не обязательно. можно просто сначала вставить программатор в ЛТП порт, а после подавать питание на микроконтролер и прошивать, главное не ошибиться с распайкой программатора и еще раз все проверить
Аватара пользователя
Jack_A
Друг Кота
Сообщения: 6307
Зарегистрирован: Вт апр 24, 2007 07:45:40
Откуда: Minsk

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

Сообщение Jack_A »

pyzh_man писал(а):


А еще лучше так.
4N.JPG
(8.39 КБ) 344 скачивания
Dimok_56
Родился
Сообщения: 8
Зарегистрирован: Сб фев 19, 2011 23:29:32

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

Сообщение Dimok_56 »

pyzh_man писал(а):Входное сопротивление входа мк относительно велико. Длинный кусок провода, подключенный к нему, играет рооль антенны. Наводки дают ложный сигнал. Их надо изничтожать. Развязкой.
Изображение


Отлично! спасибо! так и сделаю! с доработками которые предложил Jack_A
а сопротивление верхнего левого резистора, который поддтягиваются к плюсу питания подбирается экспериментально? ( устройство (пульт темнителя) запитывается от 5 вольт)
посоветуйте с какого номинала начать?
и если в МК уже стоят внутренние подтягивающие резисторы, то внешний наверное не обязателен?

да, кстати, какой оптрон выбрать?

PC817C
4N33
TLP621 (D4GB)

или вообще в моем случае разницы никакой нет?
demiurg301
Опытный кот
Сообщения: 812
Зарегистрирован: Ср мар 18, 2009 21:14:33

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

Сообщение demiurg301 »

Dimok_56 писал(а):посоветуйте с какого номинала начать?
и если в МК уже стоят внутренние подтягивающие резисторы, то внешний наверное не обязателен?

да, кстати, какой оптрон выбрать?

PC817C
4N33
TLP621 (D4GB)

или вообще в моем случае разницы никакой нет?


Использую широко PC817, под rs232. На 3.6В номинал баласта ИК диода - 2.2 Ком, номинал нагрузочного в коллекторе - 20КОм. Тут нужно конечно осцилом глядеть для конкретного случая - я подбирал конкретно на скорость 9600, у вас пределы широкие, фронты могут быть любые. Вообще Поставте ещё триггер шмидта и кондёр перед ним на выходе. Тогда и дребезг отработаете.
Webspider163
Родился
Сообщения: 5
Зарегистрирован: Чт фев 03, 2011 21:20:18

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

Сообщение Webspider163 »

Доброго времени суток!
У меня мега16 оцифровывает и шлёт на ПК через FT232RL данные со скоростью 115200 бод формата 8N1 в течение секунды.
Алгоритм простой: по кнопке включается таймер1, и в цикле по условию (char1=1) АЦП оцифровывает и передает ADCH в Usart, пока таймер1 не изменит в своём прерывании по прошествии секунды char1=0.
Вопрос такой: Я получаю каждый раз разное количество данных. Почему это происходит и как стабилизировать?
Аватара пользователя
Meteor
Друг Кота
Сообщения: 3961
Зарегистрирован: Пн июл 13, 2009 14:37:39
Откуда: Московская область, наукоград.....
Контактная информация:

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

Сообщение Meteor »

Webspider163 писал(а):У меня мега16 оцифровывает и шлёт на ПК через FT232RL данные со скоростью 115200 бод формата 8N1 в течение секунды.

У меня тоже мега 16 шлет данные через FT232 несколько раз в секунду. Но длина протокола фиксированна и не меняется. Изменения данных в протоколе наблюдаю. Что я делаю не так?
Webspider163, код бы выложили что ли :roll:
Загружая на вход компьютера "мусор", на выходе получим "мусор^32".
PS. Не работаю с: Proteus, Multisim, EWB, Micro-Cap... не спрашивайте даже
Chettuser

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

Сообщение Chettuser »

uldemir писал(а): в C определено, что через <> подключаются файлы, которые находятся в библиотеке (определяется переменными окружения, как правило), а через "" - которые находятся в рабочем каталоге.

Кое что понял, а то сколько прог написал а с этим так и не разобрался :oops:
Вот еще вопрос - из меню подключаем *.h и *.c, их описывать нужно с помощью #include? Или #include тут для чего то другого?
vbif87
Открыл глаза
Сообщения: 67
Зарегистрирован: Пн мар 03, 2008 22:12:47

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

Сообщение vbif87 »

Подскажите пожалуйста!
Atmega8535, есть Vcc, Avcc, и два GND.
Что такое Avcc и два GND надо объединять?
Аватара пользователя
SubDia
Держит паяльник хвостом
Сообщения: 995
Зарегистрирован: Сб апр 02, 2011 17:59:22
Откуда: Город-герой Севастополь

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

Сообщение SubDia »

Vcc - питание цифровой части, AVcc - питание аналоговой части (АЦП, например) - соединить с Vcc. "Земли" прозвоните - могут быть объединены внутри корпуса. Если не звенят, придется соединять при разводке платы. Если звенят, соответственно, объединять необязательно. =)
pavel_cydenov: Вобще я праAVRославный человек. Но и про ислARM слышал много хорошего )
MrYuran: Самые ортодоксальные — это PICудеи )
Katz: Не, 51-ники. )
Изображение
Мастер Ломастер
Поставщик валерьянки для Кота
Сообщения: 1995
Зарегистрирован: Ср май 11, 2011 21:37:45
Откуда: Цветочный город
Контактная информация:

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

Сообщение Мастер Ломастер »

SubDia писал(а):объединять необязательно. =)
еще как обязательно!
битва с дураками проиграна, победители торжествуют. слава победителям!
vbif87
Открыл глаза
Сообщения: 67
Зарегистрирован: Пн мар 03, 2008 22:12:47

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

Сообщение vbif87 »

Vcc объединить с Avcc, а землю с землей значит.
а питание с компа можно взять только +, а общий от LPT пойдет, да?
Аватара пользователя
SubDia
Держит паяльник хвостом
Сообщения: 995
Зарегистрирован: Сб апр 02, 2011 17:59:22
Откуда: Город-герой Севастополь

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

Сообщение SubDia »

Мастер Ломастер писал(а):еще как обязательно!

В принципе да, согласен. Лично всегда объединяю все, хотя никогда не считал это обязательным.
vbif87 писал(а):а питание с компа можно взять только +, а общий от LPT пойдет, да?

А почему не взять землю оттуда же, откуда и + берете?
pavel_cydenov: Вобще я праAVRославный человек. Но и про ислARM слышал много хорошего )
MrYuran: Самые ортодоксальные — это PICудеи )
Katz: Не, 51-ники. )
Изображение
Аватара пользователя
pyzhman
Друг Кота
Сообщения: 7016
Зарегистрирован: Вс июл 12, 2009 19:15:29
Откуда: Ижевск
Контактная информация:

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

Сообщение pyzhman »

Webspider163 писал(а):Почему...?

Унутре РС происходят ему одному известные процессы. Каждый отнимает время. Какое значение снимется с кома - ? А вы запретите прерывания в РС на время приема инфы и дело с концом.
Docendo discimus
vbif87
Открыл глаза
Сообщения: 67
Зарегистрирован: Пн мар 03, 2008 22:12:47

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

Сообщение vbif87 »

землю я буду брать с блока питания того же компа, где и LPT порт.
vbif87
Открыл глаза
Сообщения: 67
Зарегистрирован: Пн мар 03, 2008 22:12:47

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

Сообщение vbif87 »

программатор 5 проводков, на двух сайтах по разному: на одной схеме контакты 2-12 и 3-11 соеденены перемычками, на другом сайте этого нет. подскажите где правильно
demiurg301
Опытный кот
Сообщения: 812
Зарегистрирован: Ср мар 18, 2009 21:14:33

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

Сообщение demiurg301 »

vbif87 писал(а):программатор 5 проводков, на двух сайтах по разному: на одной схеме контакты 2-12 и 3-11 соеденены перемычками, на другом сайте этого нет. подскажите где правильно


Соберите 5 проводков, соедините 2-12, 3-11 вообщем, а в cvavr выбирайте stk200-300

Схем с буфером - полно, чот не вставляется фаил... я.ру сразу штук 10 выводит этих схем..
vbif87
Открыл глаза
Сообщения: 67
Зарегистрирован: Пн мар 03, 2008 22:12:47

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

Сообщение vbif87 »

большое спасибо. утром буду собирать.
Webspider163
Родился
Сообщения: 5
Зарегистрирован: Чт фев 03, 2011 21:20:18

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

Сообщение Webspider163 »

Вот такой код. Сильно не браните - я только учусь). Количество полученных данных варьируется в пределах 30-40 значений. Сразу извиняюсь, но как свернуть код не знаю(

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

#include <mega16.h>
#include <delay.h>
#include <stdio.h>       
#include <delay.h>
// Alphanumeric LCD Module functions
#asm
   .equ __lcd_port=0x15 ;PORTC
#endasm
#include <lcd.h>

unsigned char io=0x01; // переменная для условия цикла ADC>USART. Обнуляется обработчиком таймера1 по прошествии секунды
unsigned char lcd_buf[17]; // для вывода количества измерений на LCD

// Timer1 overflow interrupt service routine
interrupt [TIM1_OVF] void timer1_ovf_isr(void)
{
io=0x00;
PORTA.3=0;
TCCR1B=0x00;

}

void initialization(void){

// LCD module initialization
lcd_init(16);

// Timer/Counter 1 initialization
// Clock source: System Clock
// Clock value: 7,813 kHz
// Mode: Normal top=FFFFh
// OC1A output: Discon.
// OC1B output: Discon.
// Noise Canceler: Off
// Input Capture on Falling Edge
// Timer1 Overflow Interrupt: On
// Input Capture Interrupt: Off
// Compare A Match Interrupt: Off
// Compare B Match Interrupt: Off
TCCR1A=0x00;
TCNT1H=0xE1; // настроено считать одну секунду на Кварце 8Мгц
TCNT1L=0x7B;
ICR1H=0x00;
ICR1L=0x00;
OCR1AH=0x00;
OCR1AL=0x00;
OCR1BH=0x00;
OCR1BL=0x00;

// Timer(s)/Counter(s) Interrupt(s) initialization
TIMSK=0x04;

PORTD.4 = 1; // кнопка
DDRD = 0b00010000;
DDRA.3=1; // Выход
PORTA.3 = 0; //

// USART initialization
// Communication Parameters: 8 Data, 1 Stop, No Parity
// USART Receiver: Off
// USART Transmitter: On
// USART Mode: Asynchronous
// USART Baud Rate: 115k (Double Speed Mode)
UCSRA=0x02;
UCSRB=0x08;
UCSRC=0x86;
UBRRH=0x00;
UBRRL=0x08;

// ADC initialization: AREF-pin used, ADC5 input, ADC enabled.
ADMUX=0b00100110;
ADCSRA=0b10000000;

};


void main(void){
               
unsigned char zamer ; // для данных АЦП
unsigned char SW1; // переменная контроля состояния кнопки
unsigned int counter; // счетчик количества измерений


// Global enable interrupts
#asm("sei")

initialization();

while(1){
 
counter=0;
 io=0x01;
 SW1 = PIND.4;
 
lcd_clear();
lcd_putsf("PRESS START");

while (PIND.4 == SW1) { /* пока SW1 не изменился ...  */};

if(PIND.4==0){
 lcd_clear();
lcd_putsf("Loading...");

PORTA.3=1;
TCCR1B=0x05;
while (io==0x01)
      {
ADCSRA|=0x40;
while(ADCSRA&0x40); // ждем пока АЦП не закончит
zamer=ADCH;
printf("%d\n\r", zamer);
counter++;       
        };

lcd_clear();
lcd_putsf("DONE!");
delay_ms(700);
lcd_clear();
sprintf (lcd_buf, "%u", counter); // Преобразование кол-ва измерений из числа в строку
lcd_putsf("N = ");
lcd_puts(lcd_buf); // Вывод количества измерений на ЖКИ

TCNT1H=0xE1; // реинициализация Т1
TCNT1L=0x7B;
delay_ms(1000);


};


};
};
Аватара пользователя
AVT-28
Потрогал лапой паяльник
Сообщения: 378
Зарегистрирован: Вс сен 11, 2011 12:35:11

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

Сообщение AVT-28 »

Как заставить проработать 16f887 еще 1-2 секунды после отключения питания устройства?
Я пробовал отвязаться через диод и повесить параллельно питания кондер 2200 мкф. Хватает ровно на 2 сек.
Но программа не выполняется. Сразу или останавливается или виснет я не могу уже это отследить.
У меня по отключении питания должны сохраняться установки аппарата. То есть я контролирую выводом RA5 питание общей шины до этого диода.
И как тока там 0, прога за эти 1 сек записывает установки аппарата.
Если в ручную выдергивать перемычку и создавать 0 на выводе, то все работает. Причем и не надо секунды, моментом все происходит.
Причем кондер пробовал и с ножкой 1 (reset) вместе соединять и без неё. Все равно не работает моя затея.
Не понимаю почему программа останавливается.
Ответить

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