svip Опубликовано 2 сентября, 2007 Поделиться Опубликовано 2 сентября, 2007 помогте разобраться в протоколе UART. нужно по нему соеденить два микроконтроллера. Если кто может приведите пример прошивки на си с использованием uart 0 Ссылка на комментарий Поделиться на другие сайты Поделиться
Duhas Опубликовано 2 сентября, 2007 Поделиться Опубликовано 2 сентября, 2007 я конечно понимаю что лень очень страшная штука.. но включите мозги, псмотрите даташит на мк..у аврок даже примеры кода есть.. это было под первым пунктом.. вам нужно просто бросать байтики с 1 мк на другой ? или нужен протокол обмнеа.. определитесьс этим у людей есть свои проблемы и тд.. и тратить свое время на подобные вопросы, которые являются не какой-либо проблемой, а просто банальной ленью и нежеланием делать и думать самому.. 0 «Как сердцу выразить себя? … Мысль изреченная есть ложь!» Ссылка на комментарий Поделиться на другие сайты Поделиться
20% скидка на весь каталог электронных компонентов в ТМ Электроникс!Акция "Лето ближе - цены ниже", успей сделать выгодные покупки!Плюс весь апрель действует скидка 10% по промокоду APREL24 + 15% кэшбэк и бесплатная доставка!Перейти на страницу акции Реклама: ООО ТМ ЭЛЕКТРОНИКС, ИНН: 7806548420, info@tmelectronics.ru, +7(812)4094849
svip Опубликовано 2 сентября, 2007 Автор Поделиться Опубликовано 2 сентября, 2007 (изменено) я конечно понимаю что лень очень страшная штука.. но включите мозги, псмотрите даташит на мк..у аврок даже примеры кода есть..это было под первым пунктом.. вам нужно просто бросать байтики с 1 мк на другой ? или нужен протокол обмнеа.. определитесьс этим у людей есть свои проблемы и тд.. и тратить свое время на подобные вопросы, которые являются не какой-либо проблемой, а просто банальной ленью и нежеланием делать и думать самому.. я обыскал все что только можно. А протокол uart нужен для связи мк c радиомодулем. два микроконтроллера будут соединятся через радиосвязку. Извените что задаю глупые вопросы, но на примерах учится легче. а я в этом деле новичек и многого не понимаю посмотрел даташит по 16 меге http://www.atmel.ru/Disks/AVR%20Technical%.../m16_O0307s.pdf http://www.promelec.ru/pdf/atmega16.pdf но нигде нет хоть намека на пример прошивки Изменено 2 сентября, 2007 пользователем svip 0 Ссылка на комментарий Поделиться на другие сайты Поделиться
Особенности хранения литиевых аккумуляторов и батареекПотеря емкости аккумулятора напрямую зависит от условий хранения и эксплуатации. При неправильном хранении даже самый лучший литиевый источник тока с превосходными характеристиками может не оправдать ожиданий. Технология, основанная на рекомендациях таких известных производителей литиевых источников тока, как компании FANSO и EVE Energy, поможет организовать правильный процесс хранения батареек и аккумуляторов. Подробнее>> Реклама: АО КОМПЭЛ, ИНН: 7713005406, ОГРН: 1027700032161
-=gga=- Опубликовано 2 сентября, 2007 Поделиться Опубликовано 2 сентября, 2007 Читай. Если что спрашивай. Вот http://a_v_r123.nm.ru/05a.htm ИЗ ССЫЛКИ НАДО УБРАТЬ ДВА ЗНАКА _ _ и только потом вводить адрес в браузер. 0 Я был механик, я есть механик, я буду механик Ссылка на комментарий Поделиться на другие сайты Поделиться
Выбираем схему BMS для корректной работы литий-железофосфатных (LiFePO4) аккумуляторов Обязательным условием долгой и стабильной работы Li-FePO4-аккумуляторов, в том числе и производства EVE Energy, является применение специализированных BMS-микросхем. Литий-железофосфатные АКБ отличаются такими характеристиками, как высокая многократность циклов заряда-разряда, безопасность, возможность быстрой зарядки, устойчивость к буферному режиму работы и приемлемая стоимость. Но для этих АКБ, также как и для других, очень важен контроль процесса заряда и разряда, а специализированных микросхем для этого вида аккумуляторов не так много. Инженеры КОМПЭЛ подготовили список имеющихся микросхем и возможных решений от разных производителей. Подробнее>> Реклама: АО КОМПЭЛ, ИНН: 7713005406, ОГРН: 1027700032161
Duhas Опубликовано 2 сентября, 2007 Поделиться Опубликовано 2 сентября, 2007 еще раз повторяю думайте.. не 0.5-1 раз а все 10 .. даташит качаем полный а не ознакомительную листовку ... каким бы небыл канал связи .. протокол обмена присутствовать будет .. _http://atmel.com/dyn/resources/prod_documents/doc2466.pdf 150 страница ... 0 «Как сердцу выразить себя? … Мысль изреченная есть ложь!» Ссылка на комментарий Поделиться на другие сайты Поделиться
svip Опубликовано 2 сентября, 2007 Автор Поделиться Опубликовано 2 сентября, 2007 _http://atmel.com/dyn/resources/prod_documents/doc2466.pdf Спасибо увидел пример кода на си. но вот проблема codevisionAVR пишет неизвестный RXEN и TXEN что делать? 0 Ссылка на комментарий Поделиться на другие сайты Поделиться
bekor Опубликовано 2 сентября, 2007 Поделиться Опубликовано 2 сентября, 2007 но вот проблема codevisionAVR пишет неизвестный RXEN и TXENчто делать? В кодвижн все просто настраиваеш УАРТ в визарде а в программе пишеш например putchar(чтото); или putsf или printf для отправки строки.... 0 1 километр = 1024 метр Ссылка на комментарий Поделиться на другие сайты Поделиться
svip Опубликовано 2 сентября, 2007 Автор Поделиться Опубликовано 2 сентября, 2007 но вот проблема codevisionAVR пишет неизвестный RXEN и TXENчто делать? В кодвижн все просто настраиваеш УАРТ в визарде а в программе пишеш например putchar(чтото); или putsf или printf для отправки строки.... Конечно Вам все просто, а для меня это просто ужас. пытаюсь разобраться да все никак. можно поподробнее что именно указать в визарде и как потом использовать. может у когото есь пример похожий с комментариями??? 0 Ссылка на комментарий Поделиться на другие сайты Поделиться
Duhas Опубликовано 3 сентября, 2007 Поделиться Опубликовано 3 сентября, 2007 в даташите расписано все про уарт.. в визарде для обоих контроллеров нада одинаковые натсройки ... поставьте для начала бодрэйт 1200 no parity и 1 stop bit кодвижна под рукой нету.. но проще чем там и правда только в сказке.. а вообще если хотите изучить контроллеры то начинали бы с ассемблера.. в авр студии.. 0 «Как сердцу выразить себя? … Мысль изреченная есть ложь!» Ссылка на комментарий Поделиться на другие сайты Поделиться
X-shadow Опубликовано 3 сентября, 2007 Поделиться Опубликовано 3 сентября, 2007 _http://forum.cxem.net/z4.htm 0 Лучше сорок раз по разу чем ни разу сорок раз.. Ссылка на комментарий Поделиться на другие сайты Поделиться
Duhas Опубликовано 3 сентября, 2007 Поделиться Опубликовано 3 сентября, 2007 это было авр 123 ??! ))) 0 «Как сердцу выразить себя? … Мысль изреченная есть ложь!» Ссылка на комментарий Поделиться на другие сайты Поделиться
bekor Опубликовано 3 сентября, 2007 Поделиться Опубликовано 3 сентября, 2007 Конечно Вам все просто, а для меня это просто ужас. пытаюсь разобраться да все никак. можно поподробнее что именно указать в визардеи как потом использовать. может у когото есь пример похожий с комментариями??? Почитай это... _http://forum.cxem.net/z5.htm тоесть это a_v_r_1_2_3.n_m_.r_u/z_5.h_t_m (из ссылки убери все знаки _ ) 0 1 километр = 1024 метр Ссылка на комментарий Поделиться на другие сайты Поделиться
X-shadow Опубликовано 3 сентября, 2007 Поделиться Опубликовано 3 сентября, 2007 Жесть а зачем ссылки коверкают? 0 Лучше сорок раз по разу чем ни разу сорок раз.. Ссылка на комментарий Поделиться на другие сайты Поделиться
ilya_rad Опубликовано 3 сентября, 2007 Поделиться Опубликовано 3 сентября, 2007 Потому что если постов меньше то ли 20, то ли 50 - ссылки форум меняет на самого себя. 0 Ссылка на комментарий Поделиться на другие сайты Поделиться
X-shadow Опубликовано 3 сентября, 2007 Поделиться Опубликовано 3 сентября, 2007 Ну у меня постов около 500 0 Лучше сорок раз по разу чем ни разу сорок раз.. Ссылка на комментарий Поделиться на другие сайты Поделиться
ilya_rad Опубликовано 3 сентября, 2007 Поделиться Опубликовано 3 сентября, 2007 Значит, ссылки должны нормально поститься. У меня було ненормально, пока было мало постов, теперь все ок.. 0 Ссылка на комментарий Поделиться на другие сайты Поделиться
-=gga=- Опубликовано 4 сентября, 2007 Поделиться Опубликовано 4 сентября, 2007 bekor Эту ссылку я выложил в своём 1 посте, будь внимателнее А ссылки не отображаютьса коректно, изза того, что "авр123" втоматически заменяетьса на "forum.cxem.net" svip Если ты так сильно хочешь код, то вот тебе код #include <mega16.h> //обычный хидер #include <m8_128.h> //хидер для битов #include <delay.h> #define FRAMING_ERROR (1<<FE) #define PARITY_ERROR (1<<UPE) #define DATA_OVERRUN (1<<OVR) #define DATA_REGISTER_EMPTY (1<<UDRE) #define RX_COMPLETE (1<<RXC) // Буфер - USART Receiver buffer #define RX_BUFFER_SIZE 100 char rx_buffer[RX_BUFFER_SIZE]; #if RX_BUFFER_SIZE<256 unsigned char rx_wr_index,rx_rd_index,rx_counter; #else unsigned int rx_wr_index,rx_rd_index,rx_counter; #endif // This flag is set on USART Receiver buffer overflow bit rx_buffer_overflow; // USART Receiver interrupt service routine interrupt [USART_RXC] void usart_rx_isr(void) { char status,data; status=UCSRA; data=UDR; if ((status & (FRAMING_ERROR | PARITY_ERROR | DATA_OVERRUN))==0) { rx_buffer[rx_wr_index]=data; rx_wr_index ++; // инкремент индекса if (rx_wr_index == RX_BUFFER_SIZE) { rx_wr_index=0; }; ++rx_counter; if (rx_counter == RX_BUFFER_SIZE) { rx_counter=0; rx_buffer_overflow=1; }; }; } #ifndef _DEBUG_TERMINAL_IO_ // Get a character from the USART Receiver buffer // взять символ из созданного буфера USART #define _ALTERNATE_GETCHAR_ #pragma used+ char getchar(void) { char data; while (rx_counter==0); data=rx_buffer[rx_rd_index]; if (++rx_rd_index == RX_BUFFER_SIZE) rx_rd_index=0; #asm("cli") --rx_counter; #asm("sei") return data; } #pragma used- #endif // Standard Input/Output functions #include <stdio.h> // Глобальные переменные void main(void) { // Локальные переменные PORTD=0x00; DDRD=0x00; // USART initialization // Communication Parameters: 8 Data, 1 Stop, No Parity // USART Receiver: On // USART Transmitter: On // USART Mode: Asynchronous // USART Baud Rate: 9600 UCSRA=0x00; UCSRB=0x98; UCSRC=0x86; UBRRH=0x00; UBRRL=0x47; // Global enable interrupts #asm("sei") delay_ms(100);//пауза printf("Hello world\r\n"); //отправляем строчку и переходим на новую строчку, и возвращаем калитку. delay_ms(100);//пауза printf("-=gga=-\r\n"); } 0 Я был механик, я есть механик, я буду механик Ссылка на комментарий Поделиться на другие сайты Поделиться
plexor! Опубликовано 4 сентября, 2007 Поделиться Опубликовано 4 сентября, 2007 Вот и ещё одно подтверждение того, что к курсу от авр123 нужно относиться осторожно... Если кто будет разбирать данный код (выше на пост), просто, возьмите на заметку, как делать не надо. Возможно, пример и рабочий, но так программы не пишут. То что бросилось: - инкрементировать (++) 2-х байтные числа не корректно. правильнее ставить variable += 1; - проверять буфер на равенство (==) аналогично. нужно использовать > или < - а запрещать прерывания и потом их разрешать это полное ламерство. если вся программа ограничится этим кодом, можно такое допустить, но а если прога будет расти, то столько глюков наловите при отладке... 0 Ссылка на комментарий Поделиться на другие сайты Поделиться
-=gga=- Опубликовано 4 сентября, 2007 Поделиться Опубликовано 4 сентября, 2007 - инкрементировать (++) 2-х байтные числа не корректно. правильнее ставить variable += 1; - проверять буфер на равенство (==) аналогично. нужно использовать > или < Ну тот участок кодаЯ, в котором вы нашли эти "неточности" был написан не автором курса, а генератором начального кода в код визхарде 0 Я был механик, я есть механик, я буду механик Ссылка на комментарий Поделиться на другие сайты Поделиться
Duhas Опубликовано 4 сентября, 2007 Поделиться Опубликовано 4 сентября, 2007 а кто выбрал данный компилятор и визард вместе с ним ? я почитав курс, когда еще ничо не знал в мк, ушол аттуда падальше .. найдя страничку Николаева был счастлив )) 0 «Как сердцу выразить себя? … Мысль изреченная есть ложь!» Ссылка на комментарий Поделиться на другие сайты Поделиться
-=gga=- Опубликовано 4 сентября, 2007 Поделиться Опубликовано 4 сентября, 2007 Да согласен, курс немного непонятливый, ну и очень занудный (особенно шрифт) но полезного в нём тоже много. Дай ссылку на страничку Николаева, может и я стану счастливым 0 Я был механик, я есть механик, я буду механик Ссылка на комментарий Поделиться на другие сайты Поделиться
Duhas Опубликовано 4 сентября, 2007 Поделиться Опубликовано 4 сентября, 2007 _http://avr.nikolaew.org/ только чот заходить не хочет .. могет сайт вдауне .. 0 «Как сердцу выразить себя? … Мысль изреченная есть ложь!» Ссылка на комментарий Поделиться на другие сайты Поделиться
-=gga=- Опубликовано 4 сентября, 2007 Поделиться Опубликовано 4 сентября, 2007 Зашол как миленький Щас буду налажывать своё счастье 0 Я был механик, я есть механик, я буду механик Ссылка на комментарий Поделиться на другие сайты Поделиться
wowa Опубликовано 4 сентября, 2007 Поделиться Опубликовано 4 сентября, 2007 то plexor! : Зачем же нести такую чуш!!!! И сбивать с толку людей!!! Любой себя уважающий компилятор поёмйт что == или <> одно и тоже и сделает всёравно одинаково... Инкримент на 1 ИМЕННО правильно делать через ++ !!!!! Опять таки уважающий себя компилятор проверяет если в циклу не прибавляем 1 и ЗАМЕНИТ += 1 на ++ !!!!! Запрещать прерывания в критических местах ИМЕННО РЕКОМЕНДОВАНО!!!! Так что сразу видно что Вы неизучали асеммблер... И вообще прежде чем писать это лучше возьмите себе здрояк от GCC и поизучайте его... Или на крайний случай дизасемблируйте то что вам ненравится и посмотрите как это сделал компилятор... Будете удивлён!!!!!! Успехов.. 0 Ссылка на комментарий Поделиться на другие сайты Поделиться
bekor Опубликовано 4 сентября, 2007 Поделиться Опубликовано 4 сентября, 2007 Расуж реч пошол об учебниках киньте пожалуйста ссылку на учебник AVR на Си как avr123 но чтоб професианальности было побольше и про периферию много подробностей 0 1 километр = 1024 метр Ссылка на комментарий Поделиться на другие сайты Поделиться
Рекомендуемые сообщения
Присоединяйтесь к обсуждению
Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.
Примечание: Ваш пост будет проверен модератором, прежде чем станет видимым.