Как принять сигнал с приемника в AVR (PWM|Digital)

Mastar

Один очень хороший человек мне подсказал один вариант чтения по восьми цифровым входам и мгновенной передачей их на 8 цифровых выходов для управления сервами. Мне интересно, я пробовал с PCM и PPM приемниками, но без фаста, все было супер, а кто может проверить данный код у себя? Тут правда под мегу прописаны выводы. 😃


void setup()
{
   for (int i=22; i < 30; i++) pinMode(i, INPUT);
   for (int i=37; i > 30; i--) pinMode(i, OUTPUT);
}

void loop()
{
uint8_t Result;
asm volatile(
"cli" "\n\t"
"label%=:"  "in %[Result], %[in_porta]"   "\n\t"
            "out %[out_portc],  %[Result]" "\n\t"
"rjmp label%=" "\n\t"

        : [Result] "=r" (Result)
        : [out_portc] "I" (_SFR_IO_ADDR(PORTC)), [in_porta] "I" (_SFR_IO_ADDR(PINA))
        );

sei();
}

Кстати, при этом, похожем варианте


unsigned char Byte_Port;
void setup()
{
   for (int i=22; i < 30; i++) pinMode(i, INPUT);
   for (int i=37; i > 30; i--) pinMode(i, OUTPUT);
}

void loop()
{
PORTC = PINA;
}

сервы дергались.

2 months later
Probelzaelo
KGB:

S.Bus System

“Песок, не важная замена овсу…”(С)О`Генри.
С.бас тоже хорошо, но такое решение требует практически полную замену всего имеющегося оборудования, новым и вполне даже не бюджетным…

27 days later
Probelzaelo
Mastar:

вариант чтения по восьми цифровым входам и мгновенной передачей их на 8 цифровых выходов для управления сервами.

Хочется продолжить тему. У кого то есть идеи по одновременной обработке нескольких - бОлее 2, но не более 6-8 PWM каналов каким то более человеческим методом кроме прямого чтения в цикле?.
Интересует реализация совершенно конкретно на Атмега168/328 (HK KK Board V2 или V3)… 😉 более того, в распоряжении там доступны не все порты, более того и эл.схемы пока еще не нашел …

Bare
Probelzaelo:

Хочется продолжить тему. У кого то есть идеи по одновременной обработке нескольких - бОлее 2, но не более 6-8 PWM каналов каким то более человеческим методом кроме прямого чтения в цикле?.

А то что я сделал не подходит?

Probelzaelo
Bare:

А то что я сделал не подходит?

Подходит, но но варианты не помешают 😉 самое очевидное что нужно немедленно разобраться со схемотехникой, пинами и портами которые выведены на разъемы физически, хотя я почти уверен в том что увижу там …