Страница 228 из 628

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

Добавлено: Вс сен 25, 2011 21:19:33
Леонид Иванович
У меня так:

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

void Wr_595(char d)
{
  Port_Load_0;
  for(char i = 0; i < 8; i++)
  {
    Port_SCLK_0;
    if(d & 0x80) Port_SDATA_1;
      else Port_SDATA_0;
    d = d << 1;
    Port_SCLK_1;
  }
  Port_Load_1;
}

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

Добавлено: Пн сен 26, 2011 14:42:44
demiurg301
Подскажите надо ли на SDA SCL i2c вешать конденсаторы фильтрующие. Где то проскакивало что надо , но от чего и какой ёмкости непонятно. На схемах нигде нет... А в голове чтото такое крутится( что гдето видел) ...

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

Добавлено: Пн сен 26, 2011 14:57:52
Мастер Ломастер
Ничегонеработает писал(а):У меня так:
а я подглядел у кого-то и теперь делаю чуть-чуть покрасивее:

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

void Wr_595(char d){
  Port_Load_0;
  for(unsigned char mask = 0x80; mask; mask >>= 1){
    Port_SCLK_0;
    if(d & mask)
        Port_SDATA_1;
    else 
        Port_SDATA_0;
    Port_SCLK_1;
  }
  Port_Load_1;
}

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

Добавлено: Пн сен 26, 2011 16:02:54
SubDia
demiurg301 писал(а):Подскажите надо ли на SDA SCL i2c вешать конденсаторы фильтрующие. Где то проскакивало что надо , но от чего и какой ёмкости непонятно. На схемах нигде нет... А в голове чтото такое крутится( что гдето видел) ...
Не надо ничего туда вешать. А по поводу емкостей смотрим даташит, к примеру, на Мегу64:

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

Note: Pull-up resistor values should be selected according to the SCL frequency and the capacitive bus
line load. See Table 133 on page 328 for value of pull-up resistor.
То бишь мы выбираем номиналы подтягивающих резисторов в зависимости от емкости линии и частоты тактирования I2C.

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

Добавлено: Пн сен 26, 2011 19:55:04
Serhio
Всем доброго времени суток. Обьясните пожалуйста, что такое апноуты и где их искать? Мне необходимо для Atmega8

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

Добавлено: Пн сен 26, 2011 20:12:46
Леонид Иванович
Мастер Ломастер писал(а):а я подглядел у кого-то и теперь делаю чуть-чуть покрасивее
Вот-вот, об этом я недавно писал в теме про С и С++. Такие трюки, типа размещения внутри for() чего-либо непривычного, ухудшают читабельность программ. Никогда так не делаю.

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

Добавлено: Пн сен 26, 2011 20:18:46
asteroid7
Serhio писал(а):Всем доброго времени суток. Обьясните пожалуйста, что такое апноуты и где их искать? Мне необходимо для Atmega8
Апно(у)ты - application note - описание(пример) применения. Обычные pdf файлы. Бывают с исходниками.
Ищутся на сайте производителя. mega8

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

Добавлено: Пн сен 26, 2011 20:59:35
Serhio
Спасибо, а то я вобще заплутал на том сайте :))

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

Добавлено: Чт сен 29, 2011 15:20:53
ANALOG
Господа, у меня такая проблема:
Я сделал программатор громова и USBasp. Мне нужно прошить контроллер (mega48) в USBasp. Подключаю громова, а USBasp втыкаю в ЮСБ (для питания) Пытаюсь прошить через Uniprof - пишет, что МК не откликнулся
Спаял всё правильно, дорожки прозванивал. В чём может быть проблема?

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

Добавлено: Чт сен 29, 2011 21:22:02
olegators68
ANALOG писал(а):Господа, у меня такая проблема:
Я сделал программатор громова и USBasp. Мне нужно прошить контроллер (mega48) в USBasp. Подключаю громова, а USBasp втыкаю в ЮСБ (для питания) Пытаюсь прошить через Uniprof - пишет, что МК не откликнулся
Спаял всё правильно, дорожки прозванивал. В чём может быть проблема?
Ни в чем. USBasp, работает со своими оболочками, при чем замечательно.

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

Добавлено: Чт сен 29, 2011 22:11:27
ANALOG
Наверное, я не точно выразился: У меня в USBasp не прошит управляющий контроллер и я его пытаюсь прошить с помощью громова, через Uniprof, но что-то не получается :cry:

Настроить порт E на вход.

Добавлено: Чт сен 29, 2011 22:17:24
AVT-28
Подскажите как настроить весь порт-E 16f887 на опрос кнопок, на вход.

ANS6 = 0; // Установить RE цифровой вход
TRISE1 = 1; // Set RE1 input mode

Делаю так.

Потом if (RE0==0) и выполнение . Не пашет.
ЗАто пашет if (RE1==0)

В чем дело не пойму.

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

Добавлено: Чт сен 29, 2011 23:01:47
AVT-28
Есть вот такая прога

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

void main()
{
	TRISC = 0;		// Set PORTC output mode 
	PORTC = 0;		// Clear port
	ANS6 = 0;		// Set RE1 as digital port 
	ANS12 = 0;		// Set RB0 as digital port
	TRISB0 = 1;		// Set RB0 input mode 
	TRISA4 = 1;		// Set RA4 input mode 
	TRISE1 = 1;		// Set RE1 input mode 
	while(1)	// Infinite loop
	{
		if(RB0==0)	// Switch at RB0 press?
		{
			PORTC++;	// Increase data of PORTC 1 time	
			Delay_ms(200);		// Delay 0.5 sec
		}
		if(RA4==0)	// Switch at RA4 press?
		{
			PORTC--;	// Decrease data of PORTC 1 time
			Delay_ms(200);		// Delay 0.5 sec
		}
		if(RE1==0)	// Switch at RE1 press?
		{
			PORTC = 0;	// Clear data of PORTC 
			Delay_ms(200);		// Delay 0.5 sec
		}
	}
}
Тут Re1 RA4 и RB0 опрашиваются.
Мне надо все Re опрашивать и все RA и RB кнопок море!
Как это осуществить. Вроде делаю все правильно но не пашет.

Делаю TRISE = 1; не пашет.

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

Добавлено: Пт сен 30, 2011 05:38:38
Chettuser
TRISE = 0xFF; Равносильно тому что TRISE = 0b11111111;

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

Добавлено: Пт сен 30, 2011 08:28:12
Soir
AVT-28 писал(а):...Вроде делаю все правильно но не пашет.
Покажите схему, а еще лучше проект, так непонятно, что Вы хотите получить.
Может быть надо не увеличивать/уменьшать PORTC, а сдвигать единичку влево/вправо?

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

Добавлено: Пт сен 30, 2011 10:25:57
Sams
Ребята, где-то слышал, что есть USB программатор для PIC-контроллеров на микросхеме FT232RL. У кого нибудь есть информация по этому поводу?

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

Добавлено: Пт сен 30, 2011 11:44:29
Necroteeth
Добрый день!
У меня очень глупый вопрос - чтобы нога МК атмега работала как вход, кроме нуля в соответствующем бите регистра DDRx надо ли что-то пихать в PORTx?
и надо ли вообще эти манипуляции проводить, если данная нога (T1) используется для внешнего тактового сигнала?

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

Добавлено: Пт сен 30, 2011 12:09:29
Gudd-Head
Necroteeth писал(а):У меня очень глупый вопрос - чтобы нога МК атмега работала как вход, кроме нуля в соответствующем бите регистра DDRx надо ли что-то пихать в PORTx?
И да, и нет. Достаточно нуля в ДДРХ для перевода на вход, а если записать единицу в ПОРТХ, то подключится подтягивающий резистор.
Necroteeth писал(а):и надо ли вообще эти манипуляции проводить, если данная нога (T1) используется для внешнего тактового сигнала?
Если фьюзами выставлено внешнее тактирование, то соотв. нога (ноги) выпадают из списка линий ввода-вывода и работают на вход.

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

Добавлено: Пт сен 30, 2011 12:16:49
AVT-28
Chettuser писал(а):TRISE = 0xFF; Равносильно тому что TRISE = 0b11111111;
Это делал и это не помогает да и еще у 16ф887 только три вывода PORTE а не 8

Мне надо на порт E подтяжки подцепить что бы там еденичка была. У PORTE всего 3 вывода, и по нажатию кнопки в программе что бы например появилась единичка на PORTB 0b00100000.

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

Добавлено: Пт сен 30, 2011 12:36:13
Necroteeth
Gudd-Head писал(а): Если фьюзами выставлено внешнее тактирование, то соотв. нога (ноги) выпадают из списка линий ввода-вывода и работают на вход.
т.е. мне надо только выставить фьюзы и этот порт вообще не трогать, ес?

upd: я имел в виду, что контроллер у меня тактируется внутренним генератором, а сигналы с ноги T1 просто считает, т.е. падающий фронт T1 является тиком для Таймера1