IAR быстрый старт |
|
||
IAR-Fast.narod.ru IAR - быстрый старт. Программирование микроконтроллера AVR в IAR
|
Исходники программ и библиотекдля микроконтроллеров AVRАвтор: Waso Dec 19 2005, 19:29Предлагаю сюда скидывать (кому не жалко) свои инклюды для
работы с периферийными устройствами, предназначенные для
работы в IAR. Дело в том, что например для WinAVR такую
библиотеку можно найти в http://ccrma.stanford.edu/courses/250a/docs/avrlib/main.html.
CodeVision имеет свою библиотеку. А ИАР этим не богат.
Приходится либо писать свое с нуля, либо переделывать то что
есть. Гемора в этих двух занятиях поровну. Автор: haker_fox Dec 20 2005, 04:03Может быть сюда вообще выкладывать различные подпрограммы,
для работы не только с периферией, но и например математику,
сортировку, обработку данных и т.п. Автор: at90 Dec 20 2005, 09:23Вот библиотечка для работы с ЖКИ 16x2 и жк ht1611. Автор: at90 Dec 20 2005, 10:46Библиотека для работы с датафлэшем at45 Автор: Nixon Dec 21 2005, 11:45В данном топике предлагается выкладывать различные
исходные тексты программ и библиотек (как своих так и не
очень
). Автор: at90 Dec 21 2005, 13:14Хороший проект с Атмеловского контеста. Вэб камера и AVR Автор: aai_m Dec 21 2005, 16:07
Автор: Серега Dec 24 2005, 23:31Библиотека для 25lc640. Автор: *SERG Dec 26 2005, 06:14много примеров и исходников Автор: haker_fox Dec 27 2005, 03:49Это архив студенческих проектов Американского
университета с 1999 по 2004. Есть и радары (ИК,
Ультразвук.), и GPS-приемники, и видео игры, и музыкальные
синтезаторы. Автор: Alechin Jan 11 2006, 18:22Вот мои используемые практически в каждом проекте
наработки: Автор: DeXteR Jan 18 2006, 16:24Написал h файл для тех кто любит записи типа 0bxxxxxxxx в
АСМ Автор: Мах Jan 20 2006, 12:51Не столько библиотека как исходник для подключения памяти
at24c256 через twi. Проверено на железе. У меня все
прекрасно работает на atmega16.
Автор: Balaganov Jan 23 2006, 20:49
Хидер задержек для IAR. Использует __delay_cycles для формирования задержек от наносекунд до секунд. В параметре CPU_CLK_Hz указать тактовую частоту в герцах.[attachmentid=3956] Сори не тот файл выложил, он в принципе рабочий, но до 2 с копейками МГц. Вот последний вариант delay.h.txt ( 379байт ) Кол-во скачиваний: 1319
Автор: Nikola Kirov Jan 25 2006, 03:57Калкулатор boudrate для Usarta. Автор: afe Jan 26 2006, 01:48Както не хватает: [b]Procyon AVRlib Overview[/b]
Автор: Proton Jan 29 2006, 20:50Преобразователь *.ebn в *.hex. Хоть таких файлов и не
очень много(jtagice,stk500), может кому-нибудь пригодиться.
Замечания и предложения слать в личку. Автор: haker_fox Feb 3 2006, 12:36Прошу оценить мое сромное творчество, буду признателен,
если сообщите о багах... Автор: ЛЕСЯ Feb 6 2006, 14:37haker_fox Как насчет выложить библтотеку для работы с
протоколом WAKE?
Есть еще библиотека для работы с протоколом
WAKE
(http://www.spetspribor.com/support/software/wake/wake.html),
если кого заинтересует, могу выложить.
Есть еще библиотека для работы с
протоколом WAKE
(http://www.spetspribor.com/support/software/wake/wake.html),
если кого заинтересует, могу выложить.
Автор: Evgeny_CD Feb 6 2006, 20:41
...Procyon AVRlib...
В тонкости не вдавался, но это сильно похоже
на эту либу для LPC2xxxhttp://hubbard.engr.scu.edu/embedded/arm/armlib/
Автор: haker_fox Feb 7 2006, 03:19
haker_fox Как насчет выложить библтотеку для работы с протоколом WAKE?
Есть еще библиотека для работы с
протоколом WAKE
(http://www.spetspribor.com/support/software/wake/wake.html),
если кого заинтересует, могу выложить.
Есть еще библиотека для работы с
протоколом WAKE
(http://www.spetspribor.com/support/software/wake/wake.html),
если кого заинтересует, могу выложить.
Выкладываю... НО, там помимо самой реализации протокола, есть еще и команды, которые мой девайс выполняет по указанию компьютера, на них можно не обращать внимания. Вырезать не стал, дабы нечайно не попортить исходник. Сразу скажу, что в том виде, в котором модуль выложен, он работать не будет, т.к. часть программных счетчиков считается в другом модуле, где обрабатываются прерывания, да и ввел я их сам, для тайм-аутов... В общем исходники только для пояснения общей сути, за более подробным объяснением сюда http://www.spetspribor.com/support/software/wake/wake.html. В крайнем случае, если что, можно в PM спросить. Присоединённые файлы wake.zip ( 7.03кб ) Кол-во скачиваний: 838
Автор: alm_ Feb 16 2006, 12:50Модуль для работы с текстовым дисплеем 16x2 Автор: alm_ Feb 16 2006, 14:20Расчёт CRC16 Автор: Jatagan Mar 7 2006, 11:25Вылаживаю подпрограмму (Div24.asm) для беззнакового
делени 24-х битного числа. Автор: SasaVitebsk Apr 2 2006, 13:27В одном из моих проектов было много устройств I2C и I2C -
подобных (АЦП, ЦАП, 24сХХ и тд). Необходима была также
клавиатура и дисплей. А ножек контроллера катострофически не
хватало. Автор: Aquatik Apr 3 2006, 09:45SasaVitebsk опубликуй.. Очень хотелось бы посмотреть, для
развития. Иногда возникала такая же ситуация с большим
количеством i2c, решалось схемным путем... Заранее
благодарен.. Автор: SasaVitebsk Apr 4 2006, 00:41Заранее извиняюсь. Всё это начиналось давно. Только
появились 2313.
Схема у меня не сохранилась восстановил по памяти и
программе. Проект был на avr studio 3.
Автор: vesago Apr 6 2006, 13:50SasaVitebsk будь так любезен - выложи схемку в пдф или
картинкой. Автор: SasaVitebsk Apr 6 2006, 23:14Схема была в EAGLE для быстроты. Мелочи не рисовал, - они
понятны. Если не понятны можете писать на мыло
sasa@c32dvina.com или завести топик в основном разделе,
чтобы этот не загромождать. Да ещё пару моментов. Чтобы
testi2c работала необходимо для xp поместить файл smport.sys
в system32, для 95/98 smport.vxd в system.
Сразу подзабыл, - добавил. Автор: GOP Apr 17 2006, 18:43Еще библиотека для разработчика есть практически все. Автор: SasaVitebsk Apr 20 2006, 23:36По просьбам трудящихся выкладываю дополнительно по теме
пульт i2c: Автор: prottoss May 22 2006, 17:46Выкладываю драйвер USARTа на Си, использующий кольцевые
FIFO буферы. В принципе ничего нового, подобное где то есть,
может даже в аппликухах Atmel, и я не претендую на
изобретение чего то нового. Но может кому пригодится. Много
удобных #define))) Автор: defunct May 23 2006, 08:16Программный full-duplex UART для ATtiny13. С внутренним
осциллятором 9.6Mhz обеспечивает работу UART'a на скоростях
9600/19200/38400. Имеется возможность раздельной инверсии
линий Tx и Rx, что позволяет откзаться от применения
преобразователей уровней RS-TTL. Присоединенный проект
демонстрирует эхотерминал на скорости 38400, подключение к
COM порту показано на прикрепленном рисунке. Автор: prottoss May 30 2006, 17:15Привет всем! Автор: aleksey_g May 30 2006, 18:37
Привет всем! Стартовый исходник для символьных ЖКИ на основе HD44780. Красиво! Молодец. Хорошо постарался! Но рассчитывать задержки вручную? Не лучше ли так: #define XTALL 16.0 #define delay_us(us) __delay_cycles (XTALL * us); #define delay_ms(ms) delay_us (1000 * ms) По моему было бы еще удобнее.
Автор: prottoss May 30 2006, 18:50
Привет всем! Стартовый исходник для символьных ЖКИ на основе HD44780. Красиво! Молодец. Хорошо постарался! Спасибо...) Но рассчитывать задержки вручную? Не лучше ли так: #define XTALL 16.0 #define delay_us(us) __delay_cycles (XTALL * us); #define delay_ms(ms) delay_us (1000 * ms) По моему было бы еще удобнее. Может быть так и лучше)
Автор: agnedbay Jun 9 2006, 14:32Вот поляк выложил аппаратный TWI для управления LCD
(CVAVR) Автор: Stas633 Jul 1 2006, 10:47Не смог найти готового, поэтому сделал свое.... Автор: TamTam Jul 6 2006, 10:00Библиотека и модель в PROTEUSE 6.9. sp4 для подключения
HD44780 всего по 3 проводам с использованием сдвигового
регистра 74HC164 МК. Компилятор CodeVisionAVR Автор: Wladimir_TS Aug 26 2006, 10:58Не уверен уместно-ли здесь просить какие - либо
исходники, но я попробую: Автор: SasaVitebsk Aug 31 2006, 21:41
Не уверен уместно-ли здесь просить какие - либо исходники, но я попробую: Необходима процедура вычисления логарифма с произвольным целым рснованием в диапазоне 2-10. Режим вычислений - с фиксированной точкой. требование - минимальный занимаемый объем. Ну очень надо - может кто ссылки где видел. Нашёл у себя математику для 8051. Но переписать несложно. Присоединённые файлы MATHLIB.rar ( 10.28кб ) Кол-во скачиваний: 803
Автор: andr_doy Sep 19 2006, 07:42RkLibAvr Автор: Георгий Sep 27 2006, 08:51To SasaVitebsk: Автор: SasaVitebsk Sep 27 2006, 18:01
To SasaVitebsk: А нельзя ли получить исходники тестовой программы со стороны РС. Меня больше эта часть интересует. Это по пульту? Писалась давно лет 5 назад. Потом я свои знания в DELFI оцениваю как нулевые и использую их только для написания тестовых программ. Оформительским способностями не обладаю и мне стыдно их выкладывать. Если честно. Так как они явно не могут являтся примером. Если сильно надо то перешлю. А вот есть у меня другая програмка. (с теми же вышеперечисленными недостатками). Я ей часто пользуюсь. Называю - осциллограф. Она позволяет просматривать файлы в виде цифровой информации от 1 до 8 лучей. Это когда модем писал. Сбрасывал на PC информацию и потом медленно просматривал. Поиск работает и всё такое. Могу выложить.
Автор: vesago Sep 27 2006, 22:39Выложите, будьте так любезны. Автор: SasaVitebsk Sep 28 2006, 03:35Например при обработке сложного последовательного
протокола происходит "прокол". Как его найти? У меня есть
стенд(а если не подходит стандартный, то делаю новый). И я с
МК сливаю данные на PC до 8 битов (например 2
последовательных канала приём/передача). Обычно мл.битом
вперёд хотя прога может и повернуть. Итак я записываю данные
в файл например 100Mb. Автор: Георгий Sep 28 2006, 07:31To SasaVitebsk: Автор: vesago Sep 28 2006, 12:11To SasaVitebsk: Автор: SasaVitebsk Sep 28 2006, 22:41
To SasaVitebsk: Я так понял ваша программа пишет данные по битам 0 - 7 LPT порта. А драйвер какой надо для XP? Драйвера то есть. Но на счёт пишет я другой пользуюсь. Обычно. Там описание есть маленькое. Драйвера я в пульте выкладывал. smport.vxd, smport.sys Присоединённые файлы St01.rar ( 177.84кб ) Кол-во скачиваний: 800
Автор: kamedi_clab Oct 8 2006, 20:01Шаблон для быстрого программирования в CVAVR и отладки в
VMLAB Автор: VitPushchin Oct 23 2006, 17:23А вот приемник ИК пульта от Самсунга (кодировка типа NEC,
но со своими особенностями). Автор: SasaVitebsk Nov 21 2006, 03:01Свой вариант библиотек LCD44780 и DS1820. Автор: Screw Nov 30 2006, 01:08Здравствуйте! Автор: yarunt Jan 4 2007, 15:14Если кому интересно ,как я поборол жки нокиа3510и. Автор: kuber Jan 9 2007, 02:03Проект на Pic Автор: Шалапут:-) Jan 11 2007, 07:56Поделюсь своим кодом на Ассме для организации меню на
буквенно цифровом дисплее HD4478 16х2.. В программе
реализована отправка строк с флеш памяти. При нажатии одной
из 4 кнопок происходит прерывание Int_1, затем его обработка
(со звуковым сигналом). Куда подключать кнопки и дисплей,
ясно из программы, динамик-через усилительный транзистор Автор: Stankov Roman Jan 12 2007, 04:03простенькая библиотека, заставляет контроллер делать
задержку, в мксекундах, мили секундах и снкундах. в
зависимости от частоты тактового генератора.
#include <intrinsics.h> //функции циклов
#define f_cpu (1000000) //Частота задающего генератора #define delay_us(temp) (__delay_cycles((temp * f_cpu) / 1000000)); /* макрос задержки на "temp" микросекунд. чочная задержка при целом значении задающей частоты генератора в МГц (1, 2, 3, 4, ..., 10, 11, ...) */// 571 + 2, 387 + 2 #define delay_ms(temp) (__delay_cycles((temp * f_cpu) / 1000)); /* макрос задержки на "temp" миллисекунд. чочная задержка при целом значении задающей частоты генератора в кГц (1, 2, 3, 4, ..., 10, 11, ...) */ #define delay_s(temp) (__delay_cycles(temp * f_cpu)); /* макрос задержки на "temp" секунд. чочная задержка при целом значении задающей частоты генератора в Гц (1, 2, 3, 4, ..., 10, 11, ...) */
Автор: Yuriy_AVR Jan 16 2007, 23:08Может кому будет полезно очень быстрое преобразование
двоичного ( 4-х байтного ) числа в двоично-десятичное число
. Собственный алгоритм . Взято из рабочей программы ;
некогда было окультуривать. Вполне можно перенести на Си .
Очень удобно когда есть неоходимость , например , вывода на
экран каких либо значений , которые считаются внутри в
двоичном виде . Автор: Fakir Jan 18 2007, 14:55на телесисах пробегала сылка на коллекцию исходников:
http://faq.embedders.org/_examples_code/ Автор: andybeg Jan 18 2007, 15:19Stankov Roman Автор: SasaVitebsk Jan 18 2007, 19:05
Stankov Roman библиотека #include <intrinsics.h> тоже твоя или к какому компилятору прилагается? IAR
Автор: Сергей Борщ Jan 21 2007, 04:19Часто появляются вопросы об удобном доступе к ножкам
порта. Несколько раз выкладывал в разных темах очень удобные
(как мне кажется) макросы. Решил выложить здесь наиболее
свежую версию, чтобы потом долго не искать. Пользоваться ими
так: #define LED1 PORTC,2,H // output, active high (led from PC2 to GND) #define LED2 PORTD,3,L // output, active low (led from Vcc to PD3) #define KEY1 PINB,5,L // input, active low (key from PB5 to GND, pull-up resistor) #define KEY2 PINC,7,H // input, active high (key from Vcc to PC7, pull-down resistor) #include "ascold.h" unsigned char Key1Status; unsigned char Key2Status; void main() { Key1Status = signal(KEY1); Key2Status = signal(KEY2); for(;;) { cpl(LED1); // toggle LED1 if(signal(KEY1)) // if KEY1 pressed, turn on LED2 on(LED2); else // otherwice turn off LED2 off(LED2); } }} Если в результате переразводки вывод поменялся, достаточно изменить лишь одну строчку #define Я использую с компилятором IAR для процессоров AVR, MSP430, AT91SAM7, LPC2xxx, ADuC70xx. Но они должны работать и с любым другим компиляторм. Присоединённые файлы ascold.zip ( 1.15кб ) Кол-во скачиваний: 617
Автор: ReAl Jan 22 2007, 17:42
очень удобные (как мне кажется) макросы. Я тоже ими пользуюсь очень давно :-) Только signal() переименовал сразу же в bit_active() (ну и все остальные в bit_on/bit_off для однообразия). После какого-то давнего залёта со своей переменной с именем errno в борландовском С - не рискую применять имена, могущие пересечься с чем-то "очень стандартным".
Автор: Sergei Frolov Jan 30 2007, 19:34(* Вычисление дня недели в приложениях автоматического вычисления дня недели в датах от 1996 года и старше. Copyright (C) Sergei Frolov, 1998. v1.0 Jan, 4, 1998. Программа ориентирована на применение в приложениях, написанных на языке ассемблера без использования аппаратного умножения/деления и операций с плавающей запятой. *) program denned; const YEARS : array[0.. 3] of byte = (0, 2, 3, 4); MONTHS : array[1..12] of byte = (0, 3, 3, 6, 1, 4, 6, 2, 5, 0, 3, 5); DAYOFWEEKS : array[0..6] of string = ('Воскресенье', 'Понедельник', 'Вторник', 'Среда', 'Четверг', 'Пятница', 'Суббота'); var a, b, c, d, e, f, tmp : byte; day, month, year : word; begin repeat write('Число XX -> '); readln(day); if day = 0 then break; { выход } write('Месяц XX -> '); readln(month); write('Год XXXX -> '); readln(year); tmp := year - 1996; a := tmp and 3; b := (tmp shr 2) + (tmp and $FC); c := MONTHS[month]; if (a = 0) and (month > 2) then inc(c); a := YEARS[a]; e := (a + b + c + day) mod 7; writeln('Результат: ', DAYOFWEEKS[e]); writeln; until false; end.
Автор: Stankov Roman Feb 4 2007, 21:29да, эта библиотека входит в состав компилятора IAR. Автор: umup Feb 4 2007, 23:30Сергей Борщ #define LED1 PORTC,2,H // output, active high (led from PC2 to GND) Интересно, как у вас работают программы с комментариями // в #define, или компилятор это отлавливает ?
Автор: Сергей Борщ Feb 5 2007, 02:16
Сергей Борщ #define LED1 PORTC,2,H // output, active high (led from PC2 to GND) Интересно, как у вас работают программы с комментариями // в #define, или компилятор это отлавливает ?
Автор: yarunt Feb 6 2007, 17:14
Если кому интересно ,как я поборол жки нокиа3510и. Наступил на грабли .Есть два типа дисплея нокия3510и на одном; 4850277 10168p01317bp 0304280004 этот не удалось запустить никакую(посмертно)! другой u609b102aa s4 05 25 br с этим все ок. Отличаются они по расположению кондеров. фотка с правильным расположением кондеров! Присоединённые файлы conekter.rar ( 173.53кб ) Кол-во скачиваний: 316
Автор: yarunt Feb 8 2007, 14:49
Если кому интересно ,как я поборол жки нокиа3510и. Наступил на грабли .Есть два типа дисплея нокия3510и на одном; 4850277 10168p01317bp 0304280004 этот не удалось запустить никакую(посмертно)! другой u609b102aa s4 05 25 br с этим все ок. Отличаются они по расположению кондеров. фотка с правильным расположением кондеров! Я сам офигел оказывается дисплеи нокиа3510и инокиа3530 дисплеи абсолютно идентичны,но команды немного отличаются! для 3530 команда 2с идет как оманда бит даты и команды в противофазе фазе! пины подключения абсолютно одинаковы на фотке слева3510 с права3530 Присоединённые эскизы
Автор: GL_basik Feb 16 2007, 21:51Попробую здесь спросить. Автор: svlad Feb 17 2007, 22:53
Както не хватает: http://hubbard.engr.scu.edu/avr/avrlib/ [b]Procyon AVRlib Overview[/b]
Скачал AVRlib, а где мне взять interrupt.h и io.h которые они используют?
Автор: Kuzmi4 Feb 20 2007, 17:212 svlad - interrupt.h и io.h надо поставить винавр тогда
они появяться. Автор: andybeg Feb 20 2007, 18:41выложи конечно - интересно
Автор: svlad Feb 21 2007, 00:09
2 svlad - interrupt.h и io.h надо поставить винавр тогда они появяться. Если кому интересно могу выложить декодировку манчестера по INT0 для 8-й меги. не уж то ни у кого нет WinAVR?
Автор: Сергей Борщ Feb 21 2007, 13:20
2 svlad - interrupt.h и io.h надо поставить винавр тогда они появяться. Если кому интересно могу выложить декодировку манчестера по INT0 для 8-й меги. не уж то ни у кого нет WinAVR? Присоединённые эскизы
Автор: Kuzmi4 Feb 21 2007, 13:57Драсте всем! Автор: megachip Feb 24 2007, 03:53Шрифт от Нокии 6510 анг/рус для библиотеки
http://www.apetech.de/article.php?artId=1&nnId=10. Автор: prottoss Feb 25 2007, 19:21Выложил исходники своего программатора AVR910 USB. Автор: Kuzmi4 Feb 26 2007, 18:162 Beer - ну бывает... Автор: SasaVitebsk Feb 27 2007, 17:21Часто при работе с АЦП приходится делать таблицу
пересчёта. Например когда датчик нелинейный или когда
точность надо повысить. Кроме того иногда приходится
применять те или иные механизмы. Например (как в моём
случае) шаговый двигатель со стрелкой. Или простой ШД. В
этом случае значение АЦП должно непосредственно указывать на
положение стрелки (или механизма). Автор: Kuzmi4 Feb 27 2007, 18:30оки... сча вот порылся , нашёл проэкт.. сча заттачу усе
ф-ции - пользуйтесь,разбирайтесь.Хотя мож коряво написаны -
но писал давно, работают и ладно... Автор: yarunt Mar 20 2007, 13:22
Предлагаю сюда скидывать (кому не жалко) свои инклюды для работы с периферийными устройствами, предназначенные для работы в IAR. Дело в том, что например для WinAVR такую библиотеку можно найти в http://ccrma.stanford.edu/courses/250a/docs/avrlib/main.html. CodeVision имеет свою библиотеку. А ИАР этим не богат. Приходится либо писать свое с нуля, либо переделывать то что есть. Гемора в этих двух занятиях поровну. Самому мне правда пока нечего выкинуь. Наоборот, нужны исходники для стандартного текстового ЖКИ-дисплея, клавиатуры 4х4, АЦП, ШИМ и пользовательского интерфейса. Так как с ИАРом (и вообще с Си) только знакомлюсь - дело идет медленно. Вот хочу выложить проэктик на алгоритмбилдере 4.8 . В нём инициалиация дисплея сименс сх65 тип LS020***. При удачной сборке должны быть 3 цветных полосы ,принажатой кнопки должен сработать позификатор и нарисовать в центре квадрат(тест на длинну проводков к дисплею). Присоединённые файлы test_ls020.zip ( 10.81кб ) Кол-во скачиваний: 186
Автор: Qwertty Mar 20 2007, 14:26
Вот хочу выложить проэктик на алгоритмбилдере 4.8 В схеме включения диод повышающего конвертера для подсветки правильно нарисован?
Автор: yarunt Mar 20 2007, 15:19
В схеме включения диод повышающего конвертера для подсветки правильно нарисован? Диод правильно ,ошибка в том что LED_GND подключить надо на землю. Питание подсветки около 9 в.
Автор: Qwertty Mar 20 2007, 15:40
Диод правильно ,ошибка в том что LED_GND подключить надо на землю. Питание подсветки около 9 в. Правильно????? Тогда по другому спрошу - зачем нужны VT1 и L1? Если диод правильно стоит....
Автор: yarunt Mar 20 2007, 15:51
Правильно????? Тогда по другому спрошу - зачем нужны VT1 и L1? Если диод правильно стоит.... Да точно диод не правильно стоял Присоединённые эскизы
Автор: alecsvg Mar 28 2007, 10:11
Может быть сюда вообще выкладывать различные подпрограммы, для работы не только с периферией, но и например математику, сортировку, обработку данных и т.п. Шрифты для граф.панели LCD ??? Есть панель WG12864 Интересуют русские шрифты 5х7. Где достать? Чем сделать мультики для неё (редактор графический с промотром созданного?)
Автор: SasaVitebsk Mar 29 2007, 18:52Фонты 6х8, 8х8 в виндовой кодировке начиная с кода 0x21.
Фонты пропорциональные. (Моноширинные) Автор: acex2 Mar 30 2007, 01:44
Фонты 6х8, 8х8 в виндовой кодировке начиная
с кода 0x21. Фонты пропорциональные. (Моноширинные)
Шрифт может быть или пропорциональным, или моноширинным.
Автор: SasaVitebsk Mar 30 2007, 02:16
Шрифт может быть или пропорциональным, или моноширинным. Ну простите опи`сался. Это моноширинные. Для других использую "разноширинные". То что это моноширинные легко видно с помощью элементарной математики. Если бы были разноширинные, то я бы дал более развёрнутую информацию по файлам. В связи с тем, что непонятно было бы как их использовать.
Автор: Kolia Mar 30 2007, 15:11Додрый день Автор: DeXteR Mar 30 2007, 16:51
Додрый день Есть архивчик программ - весит 82 Мега. http://rapidshare.com/files/7450315/AVR.rar.html пароль::gevv автор архива gevv - http://hyperelektronik.com/ http://www.edaboard.com/viewtopic.php?t=213262&highlight=archive Ктонибудь закачал ??? Если есть возможность - пожалуйста переложите куданибудь в удобный хостинг
Автор: xemul Mar 30 2007, 17:04
Ктонибудь закачал ??? Если есть возможность - пожалуйста переложите куданибудь в удобный хостинг Через 20 минут будет в /upload/MCs/AVR/Projects/Gevv.rar Перепаковано без пароля и странных символов в именах файлов и директорий. .Done
Автор: plan Apr 10 2007, 11:28Привет ВСЕМ. Выкладываю рабочий проект для связи по
радиоканалу (сс2500) для CVAVR.Может где-то чего нибудь
криво так что сами подправите.Использовал библиотеки msp430.
Автор: prottoss Apr 10 2007, 18:37
Привет prottoss! хочу с компилировать файл, но не компилируется пишет #error This file should only be compiled with iccavr or aavr with processor option -v1 в чем проблема, у меня IAR v 4.21, помоги пожалуйста!
#include <ioavr.h>
Ну и в меню Project->Options->General Options->Target выставить требуемый МК. Enjoy!:-)
Автор: Александр Куличок Apr 10 2007, 19:32
Не совсем исходники, но все же: Макросы для тех, кто работает с ассемблером + раскраска комментариев и макросов в ассемблере (AVRStudio) (копировать в .\AVR Tools\AVRStudio\Edit\) (раскраска директив компилятьра, комментариев разными цветами после ;* ;/ ;- ;+ плюс раскраска макросов) Не удалось присоединить файлы. Повторяю. macros_v1.5.rar ( 743байт ) Кол-во скачиваний: 217 AvrStudio_asm.rar ( 1.85кб ) Кол-во скачиваний: 186
Автор: VAHOO Apr 11 2007, 11:48
В файле stdafx.h подключен хедер io8515.h. Его лучше всего заменить на ioavr.h вот так
#include <ioavr.h>
Ну и в меню Project->Options->General Options->Target выставить требуемый МК. Enjoy!:-) а "systime.h" откудо найти ??? если нетрудно отправ примерчик скажем бегушая строка, и если написал дока для етих библиотек, тоже отправ, я LCD подключил на PORTC , 4 бит, спасибо!
Автор: prottoss Apr 11 2007, 17:00
а "systime.h" откудо найти ??? если нетрудно отправ примерчик скажем бегушая строка, и если написал дока для етих библиотек, тоже отправ, я LCD подключил на PORTC , 4 бит, спасибо!
Автор: by-pass Apr 14 2007, 02:01Класс для работы с CAN контроллера AT90CAN128. Автор: backa Apr 14 2007, 15:18
Э-э-э-хх, вот если бы залить по отдельным проектам, а то интересует 3-4 темы, а качать 82 МБ тяжко... __tp://www.reverseelectronics.com/AVRproject/ тут в "розницу" по-штучно Выбирай что нравиться и качай а тут фотки __tp://www.sonsivri.com/forum/index.php?topic=2303.0
Автор: umup May 15 2007, 06:22вот немного : Автор: Serg_greS Jun 9 2007, 07:02Вот нашел несколько вещей на досуге, думаю будет
интересно: Автор: Serg_greS Jul 4 2007, 14:24h_tp://barello.net/avrx/index.htm Автор: IgorKossak Jul 10 2007, 21:18Как то пытался использовать AVRx RTOS. Автор: Serg_greS Jul 31 2007, 12:42Еще немного библиотек adc.h Sample A/D converter driver, for multiple users button.h Sample API functions for using push-buttons buzzer.h Sample API functions for playing tunes on a piezo buzzer crc.h Functions that provide access to cyclic redundancy check calculation dev0470.h Functions specific to the dev0470 breakout board ember-types.h Ember data type definitions error-def.h Return code definitions for EmberZNet stack API functions error.h Return codes for Ember API functions and module definitions hal.h Generic set of HAL includes for all platforms iar.h Compiler/platform-specific definitions and typedefs for the IAR AVR C compiler led.h Sample API funtions for controlling LEDs micro.h Functions common across all microcontroller-specific files random.h Functions that provide access to random numbers reserved-ram.h Memory allocations that allow for data sharing between the normally running application and bootloader hal/micro/serial.h Serial hardware abstraction layer interfaces app/util/serial/serial.h High-level serial communication functions spi-protocol.h Example AVR SPI Protocol implementation for interfacing with EM260 spi.h Generic SPI manipulation routines system-timer.h Functions that provide access to the system clock avr-atmega/32/system-timer.h Functions that provide access to the system clock for ATmega32 microcontroller uart.h Prototypes and defines for the hardware-specific UARTs h__p://www.ember.com/pdf/EM250/HAL/
Автор: Kuzmi4 Aug 3 2007, 14:092 Serg_greS - оно конечно огромное спасибо, но как
добраться к тем хэдерам ? а то я там только одни дефайны
наблюдаю.... Автор: Serg_greS Aug 3 2007, 14:50
но как добраться к тем хэдерам
в смысле к самим реализациям? а не только прототипам? наверное все остальное в их ИДЕ h__p://www.ember.com/products_zigbee_development_tools_debuggers.html Стек EmberZNet предоставляется пользователям продукции Ember по запросу h__p://www.efo.ru/cgi-bin/go?2508#n21 и бесплатно (at90: Стэк Ембер как всегда даёт бесплатно.) http://electronix.ru/forum/index.php?s=&showtopic=12537&view=findpost&p=95173
Автор: dimka76 Aug 16 2007, 14:55пример проекта умножения с плавающей точкой. Автор: haker_fox Aug 17 2007, 03:16
пример проекта умножения с плавающей точкой. работает быстрее, чем стандартная Си операция благодаря использованию аппаратного умножителя. Подходит только для серии Mega Прошу прощения, а разве современные компиляторы не умеют использовать аппаратный умножитель? Или я Вас неверно понял?
Автор: WHALE Aug 17 2007, 07:39Да вот CV тока недавно научили.Лень товарисчу было писать
2 библиотеки math-под тини и под мегу, Автор: АЛЕК@СЕЙ Sep 14 2007, 17:02Здраствуйте!Не бейте сильно если чего не так сморожу!
Автор: at90 Oct 1 2007, 09:35Вот куча исходников для AVR от немцев. Автор: sKWO Oct 3 2007, 21:27В общем книга всем известная по Си, в ПДФ. Автор: Сергей Борщ Oct 4 2007, 00:09
В общем книга всем известная по Си, в ПДФ.
Увы, первое издание, к тому же из текста
куда-то напрочь пропали фигурные скобки. С современным С
описанное в первом издании имеет много общего, но отличий
достаточно, чтобы не рекомендовать первое издание. А вот
второго в pdf не попадалось. Есть только в html
Автор: yarunt Oct 29 2007, 15:01rc-5 на Алгоритм билдере.Может кому пригодится. Автор: Waso Oct 31 2007, 07:06Выкладываю портированный мною под ИАР TCP-IP стек LwIP из
демо FreeRTOS для отладочной платы AT91SAM7X-EK. Он все еще
выдает некоторое количество варнингов, но они связаны с
выключенным дебагом. Работает web-сервер, отвечает на пинги.
Перед прошивкой нужно задать айпишники в хедере sam7_emac.h.
Версия lwIP - 1.1.0. Когда попытался прикрутить более новую
- удивился как много оставлено для дописывания ручками в
исходниках. Автор: INT1 Oct 31 2007, 16:41Здесь есть библиотеки для MODBUS Автор: umup Nov 6 2007, 14:21
Здесь есть библиотеки для MODBUS
что-то получается слишком большой размер кода. у меня RTU поместился в 500 байт Flash и 30 ОЗУ
Автор: INT1 Nov 6 2007, 20:51
что-то получается слишком большой размер кода. у меня RTU поместился в 500 байт Flash и 30 ОЗУ Дело еще в том, на сколько код "откатан" в железе. Немного поизучали эту тему, но в последствии выяснилось, что в реализации всего протокола нет необходимости, а возможные коллизии обошли таймаутами. В сети попадлись вопросы в этой связИ, вот еще ветка: http://www.fulcrum.ru/cgi-bin/bbs/mess_sel_i.pl?v=i&FID=1&TID=4245&page=&Sp=0&LID=0 Если Вы приаттачите свой исходик, то буду признателен.
Автор: umup Nov 6 2007, 22:31вот кусок : Автор: Сергей Борщ Nov 7 2007, 01:43
Выкладываю портированный мною под ИАР
TCP-IP стек LwIP
А как все начиналось...
Предлагаю сюда скидывать
... Самому мне правда пока нечего выкинуь. Наоборот, нужны исходники для стандартного текстового ЖКИ-дисплея, клавиатуры 4х4, АЦП, ШИМ и пользовательского интерфейса. Пополню копилку. Даже не исходником, а полезным приемом. Навеяно несколькими вопросами в последнее время, когда "все не работает" потому что программа ушла в необъявленный обработчик прерывания. Можно поставить на все неиспользуемые обработчики заглушки, но, во-первых, это не решение, а расчалка и распорка. А во-вторых не всякий флаг прерывания сбрасывается от самого факта входа в обработчик. Т.е. попали в заглушку, вышли из нее, тут же снова попали... Заглушка позволяет локализовать проблему. Но если заглушек несколько, возникает вопрос - в какую из них попадает программа? Хорошо, если есть много свободных ног - можно в каждой заглушке махать своей ногой. Но опять же есть неудобство - искать точки на плате, куда подключиться осциллографом, и перебирать их щупом. Идея в том, чтобы использовать одну ногу, а конкретное место программы, где нога шевелится, определять по скважности генерируемого сигнала:
ISR(ADC_vect)
Отсчитать скважность можно буквально по клеткам на
экране.{ for(;;) { on(TEST); _nop(); _nop(); _nop(); off(TEST) } } ISR(UDRE_vect) { for(;;) { _nop(); on(TEST); _nop(); _nop(); off(TEST) } } ...... ISR(UDRE_vect) { for(;;) { _nop(); _nop(); on(TEST); _nop(); off(TEST) } } ....... ISR(TIMER2_COMP_vect) { for(;;) { _nop(); _nop(); _nop(); on(TEST); off(TEST) } } P.S. Тема получилась очень полезная и давно переросла подфорум AVR. Не пора ли ее переместить куда-то в более общее место?
Автор: ASZ Nov 15 2007, 09:41Мои 0,5 копейки: void ltoa_fmt(long val, s_char length, u_char *buff) { long ltemp; int itemp; s_char binc,atemp; u_char *ptr1, *ptr2; ptr1 = buff; if (val<0) { val = -val; *buff++ = '-'; } atemp='0'; ltemp=1000000; while(val >= ltemp) { atemp++; val-=ltemp; }; if(atemp != '0') *buff++=atemp; atemp='0'; ltemp=100000; while(val >= ltemp) { atemp++; val-=ltemp; }; if(atemp != '0') *buff++=atemp; atemp='0'; itemp=10000; while(val >= itemp) { atemp++; val-=itemp; }; if(atemp != '0') *buff++=atemp; atemp='0'; itemp=1000; while(val >= itemp) { atemp++; val-=itemp; }; if(atemp != '0') *buff++=atemp; atemp='0'; itemp=100; while(val >= itemp) { atemp++; val-=itemp; }; if(atemp != '0') *buff++=atemp; atemp='0'; binc=(char)val; while(binc >= 10) { atemp++; binc-=10; }; if(atemp != '0') *buff++=atemp; binc += '0'; *buff=binc; atemp = buff - ptr1 + 1; ptr2 = ptr1 + length-1; while(atemp--) *ptr2-- = *buff--; atemp = ptr2 - ptr1 + 1; while(atemp--) *ptr2-- = ' '; }
Автор: umup Nov 15 2007, 13:35bin2bcd AVR : u32 bin2bcd_u32(u32 data, u8 result_bytes) NAKED; u32 bin2bcd_u32(u32 data, u8 result_bytes) {asm volatile( "push __tmp_reg__ \n push r26 \n push r27 \n push r30 \n push r31 \n" "mov __tmp_reg__, %A1 \n" /*number of bytes in result*/ "bin2bcd_u32_00: \n" /*correct input number by left shifts*/ "mov r31, %A0 \n" "mov %A0, %B0 \n" "mov %B0, %C0 \n" "mov %C0, %D0 \n" "mov %D0, r31 \n" "dec __tmp_reg__ \n" "brne bin2bcd_u32_00 \n" "eor r26, r26 \n" /*clear result*/ "eor r27, r27 \n" "eor r30, r30 \n" "eor r31, r31 \n" "mov __tmp_reg__, %A1 \n" "lsl __tmp_reg__ \n lsl __tmp_reg__ \n lsl __tmp_reg__ \n" /*__tmp_reg__=size in bits*8*/ "bin2bcd_u32_01: \n" /*shift loop*/ "subi r26,-0x33 \n" /*add 0x33*/ "sbrs r26, 3 \n" /*if carry to bit 3,*/ "subi r26, 3 \n" /*subtract 3*/ "sbrs r26, 7 \n" /*if carry to bit 7,*/ "subi r26, 0x30 \n" /*subtract 0x30*/ "subi r27,-0x33 \n" /*add 0x33*/ "sbrs r27, 3 \n" /*if carry to bit 3,*/ "subi r27, 3 \n" /*subtract 3*/ "sbrs r27, 7 \n" /*if carry to bit 7,*/ "subi r27, 0x30 \n" /*subtract 0x30*/ "subi r30,-0x33 \n" /*add 0x33*/ "sbrs r30, 3 \n" /*if carry to bit 3,*/ "subi r30, 3 \n" /*subtract 3*/ "sbrs r30, 7 \n" /*if carry to bit 7,*/ "subi r30, 0x30 \n" /*subtract 0x30*/ "subi r31,-0x33 \n" /*add 0x33*/ "sbrs r31, 3 \n" /*if carry to bit 3,*/ "subi r31, 3 \n" /*subtract 3*/ "sbrs r31, 7 \n" /*if carry to bit 7,*/ "subi r31, 0x30 \n" /*subtract 0x30*/ "lsl r26 \n rol r27 \n rol r30 \n rol r31 \n" /*shift out buffer*/ "sbrc %D0, 7 \n" /*skip if msbit of input =0*/ "ori r26, 1 \n" /*set lsb of output*/ "lsl %A0 \n rol %B0 \n rol %C0 \n rol %D0 \n"/*shift input*/ "dec __tmp_reg__ \n" "brne bin2bcd_u32_01 \n" /*repeat for all bits*/ "movw r22, r26 \n" /*move result*/ "movw r24, r30 \n" "pop r31 \n pop r30 \n pop r27 \n pop r26 \n pop __tmp_reg__\n" "ret \n" : :"r"(data),"r"(result_bytes):"r0","r26","r27","r30","r31" /*input and output parameters*/ ); bin2bcd C : u32 bin2bcd_u32(u32 data, u8 result_bytes) {u32 result = 0; /*result*/ u8 u8_1; for (u8_1 = (4 - result_bytes); u8_1; u8_1--) data <<= 8; /*adjust input bytes*/ for (u8_1 = (result_bytes << 3); u8_1; u8_1--) /*bit shift loop*/ {u8 u8_2, u8_3; /*result BCD nibbles correction*/ result += 0x33333333; /*result correction loop*/ for (u8_3 = 4; u8_3; u8_3--) {u8_2 = result >> 24; if (!(u8_2 & 0x08)) u8_2 -= 0x03; if (!(u8_2 & 0x80)) u8_2 -= 0x30; result <<= 8; /*shift result*/ result |= u8_2; /*set 8 bits of result*/ } /*shift next bit of input to result*/ result <<= 1; if (((u8)(data >> 24)) & 0x80) result |= 1; data <<= 1; } return(result); } bcd2bin AVR (GCC) : u32 bcd2bin_u32(u32 data, u8 result_bytes) NAKED; u32 bcd2bin_u32(u32 data, u8 result_bytes) {asm("push __tmp_reg__ \n push r26 \n push r27 \n push r30 \n push r31 \n" "eor r26, r26 \n" /*clear result*/ "eor r27, r27 \n" "eor r30, r30 \n" "eor r31, r31 \n" "mov __tmp_reg__, %A1 \n" "lsl __tmp_reg__ \n lsl __tmp_reg__ \n lsl __tmp_reg__ \n" /*__tmp_reg__=input parameter size in bits*/ "bcd2bin_u32_00: \n" /*bits shift loop*/ "lsr r31 \n ror r30 \n ror r27 \n ror r26 \n" /*shift out buffer*/ "sbrc %A0, 0 \n" /*move lowest bit*/ "ori r31, 0x80 \n" "lsr %D0 \n ror %C0 \n ror %B0 \n ror %A0 \n" "sbrc %D0, 7 \n" /*if carry to bit 7,*/ "subi %D0, 0x30 \n" /*subtract 0x30*/ "sbrc %D0, 3 \n" /*if carry to bit 3,*/ "subi %D0, 3 \n" /*subtract 3*/ "sbrc %C0, 7 \n" /*if carry to bit 7,*/ "subi %C0, 0x30 \n" /*subtract 0x30*/ "sbrc %C0, 3 \n" /*if carry to bit 3,*/ "subi %C0, 3 \n" /*subtract 0x30*/ "sbrc %B0, 7 \n" /*if carry to bit 7,*/ "subi %B0, 0x30 \n" /*subtract 0x30*/ "sbrc %B0, 3 \n" /*if carry to bit 3,*/ "subi %B0, 3 \n" /*subtract 3*/ "sbrc %A0, 7 \n" /*if carry to bit 7,*/ "subi %A0, 0x30 \n" /*subtract 0x30*/ "sbrc %A0, 3 \n" /*if carry to bit 3,*/ "subi %A0, 3 \n" /*subtract 3*/ "dec __tmp_reg__ \n" /*repeat for all bits*/ "brne bcd2bin_u32_00 \n" "movw r22, r26 \n" /*adjust result bytes*/ "movw r24, r30 \n" "bcd2bin_u32_01: \n" "mov __tmp_reg__,r25 \n" "mov r25,r24 \n" "mov r24,r23 \n" "mov r23,r22 \n" "mov r22,__tmp_reg__ \n" "dec %A1 \n" "brne bcd2bin_u32_01 \n" "pop r31 \n pop r30 \n pop r27 \n pop r26 \n pop __tmp_reg__ \n" "ret \n" : :"r"(data),"r"(result_bytes):"r0","r26","r27","r30","r31" /*input and output parameters*/ ); } bcd2bin C : u32 bcd2bin_u32(u32 data, u8 input_bytes) {u32 result = 0; /*result*/ u8 cnt_bits, cnt_bytes, tmp_byte; for (cnt_bits = (input_bytes << 3); cnt_bits; cnt_bits--) {/*shift next bit*/ result >>= 1; if (((u8)(data)) & 0x01) result |= 0x80000000; data >>= 1; {/*BCD correction of result*/ for (cnt_bytes = 4; cnt_bytes; cnt_bytes--) {tmp_byte = (data >> 24); if (tmp_byte & 0x80) tmp_byte -= 0x30; if (tmp_byte & 0x08) tmp_byte -= 0x03; data <<= 8; data |= tmp_byte; } } } /*adjust result bytes*/ for (cnt_bits = (4 - input_bytes); cnt_bits; cnt_bits--) result >>= 8; return(result); } num2asc C - форматированный вывод числа с фикс.запятой в ASCI-буфер (options&7 = общее количество знаков, (options>>4)&7 = положение запятой считая справа, options&8 = 8 - отображать начальные нули, options&80 = 80 - сначала преобразовать в BCD) : void num2asc_s32(s32 data, u8 *buf, u8 options) {u8 cnt_chars, point_pos; cnt_chars = (options & 7); /*number of digits*/ /*convert negative to positive, set '-' flag*/ if (data < 0) {data = -data; options |= 1;} else options &= ~1; /*if necessary, convert to BCD*/ if (options & 0x80) data = bin2bcd_u32(data, (cnt_chars >> 1) + 1); cnt_chars++; /*calculate point position*/ point_pos = cnt_chars - ((options >> 4) & 7); if (point_pos) point_pos++; while (cnt_chars) /*digits conversion loop*/ {if ((options & 8) && (data == 0) && (cnt_chars < point_pos)) {if (options & 1) *buf = asc_minus; else *buf = asc_space; options &= ~1; } else {if ((cnt_chars == point_pos) && (options & 0x70)) /*store point*/ {*buf = asc_point; cnt_chars--; buf--; } *buf = bin2asc_u8(data); /*store ASCII digit*/ } cnt_chars--; buf--; data >>= 4; } if (options & 1) *buf = asc_minus; }
Автор: alekseyb Dec 7 2007, 05:58Подсчет CRC для DALLAS 1Wire устройств.Работает очень
быстро. Автор: SasaVitebsk Dec 16 2007, 14:11Матричная клавиатура. Гашение дребезга. Ввод-вывод. Ввод
символьной информации методом нескольких нажатий. Всё для
IAR C. // Инициализировать таймер 0 и прерывания для опроса клавиш #if __ATmega88__ TCCR0A = 0x02; // Режим СТС TCCR0B = 0x5; // FCLK/1024 (14.4KHz/69.4mks) OCR0A = T_INT_TIM*1000000/1024/TCLK; // прерывание T_INT_TIM ms TIMSK0 = 2; // Прерывания от CTC #elif __ATmega8__ TCCR0 = 0x05; // Режим NORMAL, FCLK/1024 (14.4KHz/69.4mks) TIMSK |= 1; // Прерывания от переполнения #endif // Инициализировать оборудование DelayInit(); // Инициализация таймера LCDInit(); // Инициализировать LCD дисплей spliter_init(); // Инициализировать сплитер KeyInit(); // Инициализация клавиатуры WakeInit(); // Инициализация интерфейса rs485 и протокола WakeUp __enable_interrupt(); // Разрешить прерывания Символьный ввод const uint8_t __flash strkey[10][6] = { {'0',' ','-','=','+',0}, {'1',',','.',';',':',0}, {'2','А','Б','В','Г',0}, {'3','Д','Е','Ж','З',0}, {'4','И','Й','К','Л',0}, {'5','М','Н','О',0,0}, {'6','П','Р','С',0,0}, {'7','Т','У','Ф','Х',0}, {'8','Ц','Ч','Ш','Щ',0}, {'9','Ы','Э','Ю','Я',0} }; uint8_t getextchar(void) // Ввести расширенную клавишу { uint8_t c, index, old, tekc, d; index=0; while(KeyPress()==0); // Если установлен бит Int_Key, то клавиша была нажата do { while(KeyPress()!=0); // ждём пока клавишу отпустят c = getchar(); // прочитать код клавиши old=c; // запомнить последнюю нажатую кнопку if(c < '0') return(c); // Если клавиши управления, то выйти else c -= '0'; WaitLong = PAUZA; // Измерить паузу после нажатия tekc=strkey[c][index]; // текущий символ putchar(tekc); // вывести do if(KeyPress()!=0) // Если клавиша была нажата снова { d=KeyPress(); // прочитать код клавиши if(d!=old)return(tekc); // если изменили клавишу, то выйти index++; // Следующий символ из ряда if(strkey[c][index]==0)index=0; // если конец ряда, то выйти putchar(CR_BS); // Забить предыдущий символ break; } while(WaitLong!=0); } while(WaitLong!=0); return(tekc); } Само прерывание опроса клавиатуры и меток времени #ifdef __PORT88__ #pragma vector=TIMER0_COMPA_vect // Метки времени 10 мс #else #pragma vector=TIMER0_OVF_vect // Метки времени 10 мс #endif __interrupt static void MetkiTime10ms(void) { #if __ATmega8__ TCNT0 = -(T_INT_TIM*1000000/1024/TCLK); #endif KeyScan(); // Опросить клавиши KeyStrSet(); // выставить строку if(WaitLong!=0)WaitLong--; // Высчитать задержку } Присоединённые файлы Kls3x4.zip ( 3.47кб ) Кол-во скачиваний: 166 lcd44780.zip ( 5.18кб ) Кол-во скачиваний: 146 timerhw.zip ( 1.52кб ) Кол-во скачиваний: 133
Автор: Aesthete Animus Dec 18 2007, 12:52Вот ссылка на классную библиотеку 1-wire: Автор: amaora Jan 28 2008, 03:158бит ЦАП/АЦП, или звуко-проигрыватель PCM/ADPCM (11025Hz)
с управлением по EIA-232, или тремя кнопками. писалось в
целях ознакомления с AVR, надеюс будет кому то полезно.
исходник на C и управляющая прожка под linux, http://www.paravozeg.narod.ru/avr_prog_md.tar.gz
Автор: Kybik Feb 5 2008, 00:08Исходник (CVAVR) для декодирования IR пульта старых
телеков Goldstar. Автор: Genadi Zawidowski Feb 13 2008, 02:14AvrStudio + WINAVR, чистый C
|