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

Цитата:
Но зачем (UART) он тебе?
Включи порт на котором диод на микре и мигай им как принят пакет. Ну чтоб видеть что происходит по началу.
Потом прикручивай уже usb.
ЮАРТ, это что? RX и TX?... не знаю нужны они мне или нет. Ты ж сам говорил их надо переназначать зачем-то. Кстати, я так и не понял может этот ЮАРТ конфликтует с чем-то...
Цитата:
Задействованы ноги PB0-5.
А именно сигналы GPIO (PB0), CS2(PB1), CS1(PB2) это как цифровые выходы.
И PB3-5 - MOSI, MISO, SCK как SPI шина.

Ну и PD0 и PD1 как UART.
Короче... вот часть кода, которую я переделал:

Цитата:
void loop() {

while (1)
{
if( !error) {

button = register_get( GETMAIL( 1));
wheel = register_get( GETMAIL( 2));

if( wheel > oldwheel || wuloop != ( button & ( 1 << WUP))) {
wuloop = ( button & ( 1 << WUP));
oldwheel = wheel;
// PORTB |= ( 1 << PINB0); //Установить "1" на линии SS
execCmd( tup); // 0xeb... 8.00 k
// PORTB &= ~( 1 << PINB0); //Установить "0" на линии SS
Serial.println ("колесо вверх");
}
else if( wheel < oldwheel || wdwnloop != ( button & ( 1 << WDWN))) {
wdwnloop = ( button & ( 1 << WDWN));
oldwheel = wheel;
// PORTB |= ( 1 << PINB0); //Подтягивающий резистор к порту PB0 Установить "1" на линии SS
execCmd( tdwn);
// PORTB &= ~( 1 << PINB0); //установить 0 на линии SS
Serial.println ("колесо вниз");
}
else if ( button & ( 1 << SRC)) {
execCmd( source); // source = 0xfd; // 1.20 kom
Serial.println ("источник");
}
else if ( ( button & ( 1 << VUP)) && ( button & ( 1 << VDWN))) {
execCmd( att);
Serial.println ("атт какойто");
}
else if ( button & ( 1 << VDWN)) {
execCmd( voldwn);
Serial.println ("громк-");
}
else if ( button & ( 1 << VUP)) {
execCmd( volup);
Serial.println ("громк+");
}
else if ( button & ( 1 << SDWN)) {
execCmd( tdwn);
Serial.println ("т вниз");
}
else if ( button & ( 1 << SUP)) {
execCmd( tup);
Serial.println ("т вверх");
}

register_set( CHANNEL_ADDR( 0) + 3, 0xf8);
}
else {
tss_init();
}
delay(10);
}
С помощью него я в сериал порте вижу нажатия рулевых кнопок.
С частотой кварца я давно разобрался. Верхние строки кода я удалил ибо они никак не управляют ардуиной. Вернее не я а, разработчик этого кода - Лазаров. Я с ним списывался. Адаптировать его под 32U4 он, паразит не хочет. Ну это не беда.
Это код не полностью (только луп).

Цитата:
В принципе тебе надо всего 3 ноги изменить для промикры. Или одну если обвес ещё из двух микрух не нужен.
Еще раз говорю - НЕТ!... НЕ ВЫХОДИТ!!! НЕ ПОЛУЧАЕТСЯ!!! Этого не достаточно!Где-то загвоздка кроется не могу найти хоть тресни!!!
Попробую ещё раз повнимательнее, но чувствую что бесполезно
nikey вне форума   Ответить с цитированием