Показать сообщение отдельно
Старый 30.12.2018, 16:52   #16
nikey
Новый Пользователь
 
Регистрация: 28.10.2018
Город: орел
Регион: 57
Машина: пежо 307
Сообщений: 17
nikey is on a distinguished road
По умолчанию

Цитата:
И на схеме видно что выводы INT0(4) и INT1(5) ни куда не подключены!
епжтв@южм@ть!!!! оказывается PCINT0 и INT0 это разные вещщи!!!... Твоюжмать!!!... вернее, разные ноги... А чтож тогда такое это самое PCINT0...12? Ладно хрен с ними... с ними вроде разобрались

Цитата:
Так что забудь о прерывании.
При переделке кода на другой контроллер нужно поменять назначения 8 выводов если они не совпадают (те что написал выше).
это какие?... вот эти чтоль:
Цитата:
GPIO (PB0), CS2(PB1), CS1(PB2) это как цифровые выходы.
И PB3-5 - MOSI, MISO, SCK как SPI шина.
Ну и PD0 и PD1 как UART.
Так-с... начнём по-порядку:
PB0...
Этот вывод подсоединён к базе транзистора и он мне не нужен. Соответственно, там где в коде есть - "PINB0", удаляем её (вернее комментим на всякий случай).


PB1... он же SS2, управляет электронным потенциометром. Я управлять им не собираюсь. Соответственно там где в коде содержится надпись "PB1", вернее PINB1, смело удаляем эти строки. Так?...

void execCmd( const byte cmd)
{
// PORTB &= ~( 1 << PINB1); // заземляем вывод SS это точно!!!)))
// spi_transfer( 0x11); //передаём по spi
// spi_transfer( cmd); //передаём по spi
// PORTB |= ( 1 << PINB1); // отпускаем SS
// delay( CMD_WAIT_MS); //задержечка 50 милисек
// PORTB &= ~( 1 << PINB1); // опять заземляем SS это точно!!
//spi_transfer( 0x11); //передаём по spi
//spi_transfer( nocmd); //передаём по spi
// PORTB |= ( 1 << PINB1); // и отпускаем SS
};
Иначе, если этого не сделать, то в моём контроллере 32U4 эти 4 строчки будут валить вывод SCLK он же PB1 на массу. Так?...
Я их тоже закомментил чтобы не удалять совсем.

Далее идёт PB2... он же контакт SS для TSS463C
Соответственно, мне надо строчки PINB2 заменить на PINB0, потому что на моей атмеге 32U4 вывод SS - это PB0. Так же думаю что не обязательно заменять на PINB0... Можно, пожалуй и на PINB6, чтоб рядышком было

PB3-5 - MOSI, MISO, SCK как SPI шина
Вот тут затык!... нету таких строчек где было б указано PINB3, PINB4, PINB5, видимо тут как-то все назначается автомасиськи

PD0 и PD1... Опять затык!... где это в коде прописано? Нет такого!...
У меня в 32U4 юарт находится на ногах:
TXD1 - PD3 (PD1 атмега 328)
RXD1 - PD2 (PD0 атмега328)
Надеюсь я правильно понимаю что юарт это RX и TX... И в 32U4 там какаято хрень с этим юартом... толком не пойму какая там два юарта чтоли...
И, кстати!!! причём тут этот самый юарт?... разве в коде он гдето есть?

execCmd - это юарт?...

помоему вот эта строка:
execCmd( source); отправляет по SPI команду на цифровой потенциометр, чтоб он выставил определённое сопротивление, в данном случае source у нас равна 0xfd т.е - 1.20 kom
разве нет?

Последний раз редактировалось nikey; 30.12.2018 в 18:15.
nikey вне форума   Ответить с цитированием