Краткий Курс - программирование AVR - часть V

 
1 6 7 8 9 10 11 12

Yuran

опытный

CodeVision можно заставить генерить Intel HEX формат, чтобы PonyProg залить потом? У меня генериться ассемблерный код причём который avrstudio не переваривает. P.S. Termostat я выкачал его по ссылке которую ты давал, там кряк порядок какой регистрации переписать cvavr.exe из кряка а потом сгенерировать файл лицензии?
 
RU termostat #18.03.2005 10:45
+
-
edit
 

termostat

аксакал

Yuran >
CodeVision можно заставить генерить Intel HEX формат,
чтобы PonyProg залить потом?
 


Он его и генерит по-умолчанию. .hex

в проджек - конфига - с компилер смотришь выходные форматы.

еще выдает .cof и __.с
для отладки с шаганием по коду Си в Астудио или VMLAB

.асм файл у него Астудия понимает как и ВМЛАБ,
просто в файле .асм есть инклуд файла .vec - т.е. он тоже нужен.

Я делаю проект CV и работаю в папке симулятора VMLAB (можно и Астудио)
и тогда симуляторы доступны все нужные файлы - не нужно после каждой
правки и перекомпиляции перетаскивать файлы в симулятор.

========= ========= =========

Я прицепил "рыбу" проекта (WORK.rar 6 Кб) - я новые проекты с нее начинаю и
походу ее использую для проверки участков кода

в папку C:\VMLAB\_WORK

========= ========= =========

Только зачем тебе Пони если чудный программатор встроен в CodeVisionAVR?

выбери свой адаптер в сеттингс - программер и в
проджек - конфига - афте мэйк поставь галочку программировать
теперь после успешной компиляции ты можешь залить прогу в чип.

CodeVisionAVR - это ДОСТАТОЧНАЯ прога для всего
процеса разработки устройства на AVR, если его отлаживать
в "железе" - для полного счастья не хватает логера КОМ
порта - например как в задаче 06.


Есть АпНоут Атмела:

AVR033: Getting Started with the CodeVisionAVR C Compiler

http://atmel.com/dyn/resources/prod_documents/DOC2500.PDF



Yuran >
порядок регистрации переписать cvavr.exe
 


Да лучше это называть порядок регистрации или установки.

этот файл для первичной генерации серийника компа.

по нему (в какой нибудь не нужной папке) генерируется лицензия
по-моему, ее надо куда нибудь экспортировать и уже когда
окончательно ставишь прогу то импортируешь ее.

Вобщем делай не торопясь по инструкции с того
же ..14.. сайта и все получится.

Я уже 2 раза его ставил (новейший 1.24.5) но не запоминаю
порядок установки - т.е. чтоб подсказать мне
нужно его снести и опять ставить.
Прикреплённые файлы:
WORK.rar (скачать) [5,7 кБ]
 
 
RU termostat #24.03.2005 14:07
+
-
edit
 

termostat

аксакал

Хочу обратить внимание общественности на чудный
модуль АЦП МК ATmega16 и выше, эти МК имеют
дифференциальные входы.

Это позволяет "оторвать" нижний предел диапазона
АЦП от 0 вольт. т.е. без внешних усилителей можно
получать практически ЛЮБУЮ дискретность
преобразования.

Ниже я прицепил блок-схему АЦП.

Видно что нижним диапазоном измерения могут быть
напряжения на входах АЦП: ADC0, ADC1 и ADC2

а измеряемое напряжение подается на один из входов
ADC3...7

Еще имеется диф. усилитель с возможностью
усиления в 10 и 200 раз.

т.е. мостовой датчик или датчик магнитного поля можно
напрямую подключать.


Как использовать. принцип:

Можно подать простым резисторным делителем на входы
ADC0, ADC1 и ADC2 (не обязательно на все 3) напряжения
2в 3в 4в.

Теперь мы можем измерить напряжение с датчика давления
MPX411x(питаемого 5 вольтами с ножки AREF) от 5 до
4 вольт (это напряжения соответсвующие наиболее частым
низким высотам полета) с дискретностью 1 мВ !!!

В диапазоне от 5 до 3 вольт (уже очень высокий полет)
разрешение 2 мВ. ну и так далее.

Это "у краце", на самом деле возможности у АЦП шире.

Досадно только то, что у меня старый ДШ от 2003 года,
и описание АЦП не совсем соответсвует блок-схеме.

Кстати кому претит корпус Меги16 DIP-40 (53х17 мм -
я кстати считаю его удобным для радиолюбительства)
могут использовать этот МК в корпусе 13х13 мм.
Прикреплённые файлы:
 

Yuran

опытный

А какова частота дискретизации? шумы? и разрядность.
 
RU termostat #24.03.2005 15:16
+
-
edit
 

Lioxa

втянувшийся
Analog to Digital
Converter
Features • 10-bit Resolution
• 0.5 LSB Integral Non-linearity
• ±2 LSB Absolute Accuracy
• 65 - 260 μs Conversion Time
• Up to 15 kSPS at Maximum Resolution
• 8 Multiplexed Single Ended Input Channels
• 7 Differential Input Channels
• 2 Differential Input Channels with Optional Gain of 10x and 200x(1)
• Optional Left adjustment for ADC Result Readout
• 0 - VCC ADC Input Voltage Range
• Selectable 2.56V ADC Reference Voltage
• Free Running or Single Conversion Mode
• ADC Start Conversion by Auto Triggering on Interrupt Sources
• Interrupt on ADC Conversion Complete
• Sleep Mode Noise Canceler

Так и есть.

У меня на столе 2-е штуки лежат, просто монстры. :D
 
RU termostat #24.03.2005 16:16
+
-
edit
 

termostat

аксакал

• 2 Differential Input Channels with Optional
Gain of 10x and 200x(1)
 


Вот это и у меня в ДШ от 2003 года написано.
Но не вяжется это с блок-схемой АЦП.

Ведь по ней явно видно что на "-" диф. усилителя можно
подать сигналы с 3-х входов.
почему же тогда: "2 Differential Input Channels ..."
Я что-то не разобрался.

вот 7 диф. входов без доп. усилителя - мне понятно
и соотвествует схеме.
+
-
edit
 

timochka

опытный

Термостат, скажи пожалуйста, как скачать твой курс ВЕСЬ сразу. Чтоб потом читать дома. А то работе я не то что читать, просто ходить по сайту ни времени, ни возможности не имею :(
 
RU termostat #25.03.2005 20:08
+
-
edit
 
UA Serge77 #25.03.2005 22:19  @termostat#25.03.2005 20:08
+
-
edit
 

Serge77

модератор

termostat> http://avr123.nm.ru/avr123.nm.ru.rar (415 Кб)
termostat> декабрь 2004 года [»]

А на страничке курса есть ссылка на этот архив? Я не нашёл.
RU termostat #26.03.2005 02:10
+
-
edit
 

termostat

аксакал

Ссылка на стр 4 курса под линком 'news' - я хочу чтоб те кто заходит по инету со стороны посетили мои странички.

А для участников конфы доступен курс архивом.

Кстати линк я указываю в первом посте каждой части топика!!!


Вот НОВЫЙ архив на Март 2005 года

http://avr123.nm.ru/avr123.nm.ru.rar (595 Кб)

RU termostat #26.03.2005 02:47
+
-
edit
 

termostat

аксакал

Разобрался я с АЦП ATmega16 (Он кстати у всех Мег и старше 16-й такой же приблатненый).

Атмел пожидились добавить еще ОДИН регистр для выбора комбинации входов для диф. АЦП - а существующего одного регистра хватает как раз на то что есть.

Но то что я о нем (о АЦП) написал похвального раньше - все чистая правда! Он действительно продвинут и для БРЭО великолепен.

SAA

втянувшийся


termostat> Но то что я о нем (о АЦП) написал похвального раньше - все чистая правда! Он действительно продвинут и для БРЭО великолепен. [»]

Стоимость по каталогу argusssooft
ATMega 16 - 16AI TQFP44 - 2,97
ATMega 16 - 16PI/ 16L - 8PI DIP40 - 2,9

По остальным контроллерам вообще цены такие что чижу и облизываюсь ;-)
Самая главная изюмина каталога AT91SAM7S64 - за смехотворную цену 5,9 баксов!!!!!!!!

Для сравнения самый дешевый по этому каталогу ATTiny13-20SI - 0,9 баксов!


Теперь вопрос, люди кто нибудь реально USI прикручивал для ATTiny26? Про дадатшитты лучше не говорить изучил и повторил код 307. Лезет откуда то лишний байт хоть тресни, а сначало врал начиная с 5 бита (принимал за два, тем самым как бы сдвигая всю остальную часть на один бит), протом вроде бы кварцевым резонатором и подстройкой процедуры обработки TIMER OVERFLOW вывел на нормальной чтение, теперь дуплит!!! Есть повторившие подобный эксперемент, или лучше не жопиться и пользоваться нормальным UART?
 
RU termostat #28.03.2005 10:24
+
-
edit
 

termostat

аксакал

Вывод: нужен UART - используй UART , нужно 2 UART - подумай, можно ли обойтись одним UART, если нет то возьми Мегу64 или 128,

Нужно N UART'ов возьми соотв. микруху, или поставь аналоговые ключи для комутации сигналов - ADGxxx бесплатно с Analog.com или ставьте CD4066B - 4 ключа за копейки!



RU termostat #28.03.2005 10:44
+
-
edit
 

termostat

аксакал

Посмотрел я этот АпНоут AVR307 - нтересная процедура "
переворачивания" байта задом-наперед.

code text
  1. // Reverses the order of bits in a byte.
  2. // I.e. MSB is swapped with LSB, etc.
  3. unsigned char Bit_Reverse( unsigned char x )
  4. {
  5.     x = ((x >> 1) & 0x55) | ((x << 1) & 0xaa);
  6.     x = ((x >> 2) & 0x33) | ((x << 2) & 0xcc);
  7.     x = ((x >> 4) & 0x0f) | ((x << 4) & 0xf0);
  8.     return x;    
  9. }



И еще раз убедился в том что, нужно использовать железный
UART посмотрев "лес" исходных тесктов программы.

SAA

втянувшийся

termostat> // Reverses the order of bits in a byte.
termostat> // I.e. MSB is swapped with LSB, etc.
termostat> unsigned char Bit_Reverse( unsigned char x )
termostat> {
termostat> x = ((x >> 1) & 0x55) | ((x << 1) & 0xaa);
termostat> x = ((x >> 2) & 0x33) | ((x << 2) & 0xcc);
termostat> x = ((x >> 4) & 0x0f) | ((x << 4) & 0xf0);
termostat> return x;
termostat> }
termostat> [/CODE]
termostat> ====================

Это видимо потому что IAR не умеет двигать через C, законными методами. Так как сколько я не прикидывал по тактам вышеуказанную процедуру все равно развернутый цикл сдвигов через C в любой свободный регистр, будет короче и по тактам и по коду.

termostat> И еще раз убедился в том что, нужно использовать железный
termostat> UART посмотрев "лес" исходных тесктов программы. [»]

Это все хорошо, да только много ли ты контроллеров с UART назовешь для бюджетного использования, т.е. по стоимости ATTiny26. А взять 8 мегу жаба давит честно говоря, так как ее загрузка для моей задачи меньше 7% по ресурсам!!!!! Куда это годится?!
 
+
-
edit
 
1 6 7 8 9 10 11 12

в начало страницы | новое
 
Поиск
Настройки
Твиттер сайта
Статистика
Рейтинг@Mail.ru