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

Если ваш вопрос не влез ни в одну из вышеперечисленных тем, вам сюда.
Аватара пользователя
Леонид Иванович
Друг Кота
Сообщения: 4779
Зарегистрирован: Сб апр 02, 2011 12:40:46
Откуда: Минск
Контактная информация:

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

Сообщение Леонид Иванович »

У меня так:

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

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;
}
demiurg301
Опытный кот
Сообщения: 812
Зарегистрирован: Ср мар 18, 2009 21:14:33

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

Сообщение demiurg301 »

Подскажите надо ли на SDA SCL i2c вешать конденсаторы фильтрующие. Где то проскакивало что надо , но от чего и какой ёмкости непонятно. На схемах нигде нет... А в голове чтото такое крутится( что гдето видел) ...
Мастер Ломастер
Поставщик валерьянки для Кота
Сообщения: 1995
Зарегистрирован: Ср май 11, 2011 21:37:45
Откуда: Цветочный город
Контактная информация:

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

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

Ничегонеработает писал(а):У меня так:

а я подглядел у кого-то и теперь делаю чуть-чуть покрасивее:

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

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;
}
битва с дураками проиграна, победители торжествуют. слава победителям!
Аватара пользователя
SubDia
Держит паяльник хвостом
Сообщения: 995
Зарегистрирован: Сб апр 02, 2011 17:59:22
Откуда: Город-герой Севастополь

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

Сообщение 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.
pavel_cydenov: Вобще я праAVRославный человек. Но и про ислARM слышал много хорошего )
MrYuran: Самые ортодоксальные — это PICудеи )
Katz: Не, 51-ники. )
Изображение
Serhio
Прорезались зубы
Сообщения: 249
Зарегистрирован: Вс авг 15, 2010 20:42:44
Откуда: Тюмень
Контактная информация:

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

Сообщение Serhio »

Всем доброго времени суток. Обьясните пожалуйста, что такое апноуты и где их искать? Мне необходимо для Atmega8
Аватара пользователя
Леонид Иванович
Друг Кота
Сообщения: 4779
Зарегистрирован: Сб апр 02, 2011 12:40:46
Откуда: Минск
Контактная информация:

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

Сообщение Леонид Иванович »

Мастер Ломастер писал(а):а я подглядел у кого-то и теперь делаю чуть-чуть покрасивее


Вот-вот, об этом я недавно писал в теме про С и С++. Такие трюки, типа размещения внутри for() чего-либо непривычного, ухудшают читабельность программ. Никогда так не делаю.
Аватара пользователя
asteroid7
Опытный кот
Сообщения: 703
Зарегистрирован: Вс янв 18, 2009 21:12:49

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

Сообщение asteroid7 »

Serhio писал(а):Всем доброго времени суток. Обьясните пожалуйста, что такое апноуты и где их искать? Мне необходимо для Atmega8

Апно(у)ты - application note - описание(пример) применения. Обычные pdf файлы. Бывают с исходниками.
Ищутся на сайте производителя. mega8
Serhio
Прорезались зубы
Сообщения: 249
Зарегистрирован: Вс авг 15, 2010 20:42:44
Откуда: Тюмень
Контактная информация:

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

Сообщение Serhio »

Спасибо, а то я вобще заплутал на том сайте :))
Аватара пользователя
ANALOG
Мучитель микросхем
Сообщения: 444
Зарегистрирован: Вс ноя 28, 2010 15:18:52
Откуда: Минск

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

Сообщение ANALOG »

Господа, у меня такая проблема:
Я сделал программатор громова и USBasp. Мне нужно прошить контроллер (mega48) в USBasp. Подключаю громова, а USBasp втыкаю в ЮСБ (для питания) Пытаюсь прошить через Uniprof - пишет, что МК не откликнулся
Спаял всё правильно, дорожки прозванивал. В чём может быть проблема?
Аватара пользователя
olegators68
Поставщик валерьянки для Кота
Сообщения: 2253
Зарегистрирован: Пн ноя 01, 2010 12:19:31
Откуда: Серпухов

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

Сообщение olegators68 »

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

Ни в чем. USBasp, работает со своими оболочками, при чем замечательно.
Вот блин, опять в галерее картину малевича вверх ногами повесили.
Аватара пользователя
ANALOG
Мучитель микросхем
Сообщения: 444
Зарегистрирован: Вс ноя 28, 2010 15:18:52
Откуда: Минск

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

Сообщение ANALOG »

Наверное, я не точно выразился: У меня в USBasp не прошит управляющий контроллер и я его пытаюсь прошить с помощью громова, через Uniprof, но что-то не получается :cry:
Аватара пользователя
AVT-28
Потрогал лапой паяльник
Сообщения: 378
Зарегистрирован: Вс сен 11, 2011 12:35:11

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

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

Подскажите как настроить весь порт-E 16f887 на опрос кнопок, на вход.

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

Делаю так.

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

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

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

Сообщение 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; не пашет.
Chettuser

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

Сообщение Chettuser »

TRISE = 0xFF; Равносильно тому что TRISE = 0b11111111;
Soir
Друг Кота
Сообщения: 3956
Зарегистрирован: Ср окт 14, 2009 10:37:49
Откуда: Украина

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

Сообщение Soir »

AVT-28 писал(а):...Вроде делаю все правильно но не пашет.

Покажите схему, а еще лучше проект, так непонятно, что Вы хотите получить.
Может быть надо не увеличивать/уменьшать PORTC, а сдвигать единичку влево/вправо?
Sams
Открыл глаза
Сообщения: 44
Зарегистрирован: Вт апр 19, 2011 16:35:57

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

Сообщение Sams »

Ребята, где-то слышал, что есть USB программатор для PIC-контроллеров на микросхеме FT232RL. У кого нибудь есть информация по этому поводу?
Аватара пользователя
Necroteeth
Потрогал лапой паяльник
Сообщения: 362
Зарегистрирован: Вс окт 10, 2010 17:43:48
Откуда: Воронеж

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

Сообщение Necroteeth »

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

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

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

Necroteeth писал(а):У меня очень глупый вопрос - чтобы нога МК атмега работала как вход, кроме нуля в соответствующем бите регистра DDRx надо ли что-то пихать в PORTx?

И да, и нет. Достаточно нуля в ДДРХ для перевода на вход, а если записать единицу в ПОРТХ, то подключится подтягивающий резистор.
Necroteeth писал(а):и надо ли вообще эти манипуляции проводить, если данная нога (T1) используется для внешнего тактового сигнала?

Если фьюзами выставлено внешнее тактирование, то соотв. нога (ноги) выпадают из списка линий ввода-вывода и работают на вход.
[ Всё дело не столько в вашей глупости, сколько в моей гениальности ] [ Правильно заданный вопрос содержит в себе половину ответа ]
Аватара пользователя
AVT-28
Потрогал лапой паяльник
Сообщения: 378
Зарегистрирован: Вс сен 11, 2011 12:35:11

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

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

Chettuser писал(а):TRISE = 0xFF; Равносильно тому что TRISE = 0b11111111;

Это делал и это не помогает да и еще у 16ф887 только три вывода PORTE а не 8

Мне надо на порт E подтяжки подцепить что бы там еденичка была. У PORTE всего 3 вывода, и по нажатию кнопки в программе что бы например появилась единичка на PORTB 0b00100000.
Аватара пользователя
Necroteeth
Потрогал лапой паяльник
Сообщения: 362
Зарегистрирован: Вс окт 10, 2010 17:43:48
Откуда: Воронеж

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

Сообщение Necroteeth »

Gudd-Head писал(а):Если фьюзами выставлено внешнее тактирование, то соотв. нога (ноги) выпадают из списка линий ввода-вывода и работают на вход.

т.е. мне надо только выставить фьюзы и этот порт вообще не трогать, ес?

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

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