Страница 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, но что-то не получается

Настроить порт 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