Курс: программирование AVR, учимся "с нуля"

 
1 4 5 6 7 8 12
?? [DIMITRY II] #05.07.2004 12:52
+
-
edit
 
[quote|termostat, 03.07.2004 10:51:11 :]Вот кому нужно - проверен мной вывод на ЛСД в ВМЛАБ, тескт прог и компиляция в КодВижене. Сделано давно, но ни как не выложу в курс АВР.[/quote]

никак не могу подключить в vmlab lcd выложи в форуме текст проги именно проекта в vmlab. буду очень благодарен.
 
?? Tosha_443 #05.07.2004 17:27
+
-
edit
 

Tosha_443

втянувшийся
2 ALL!
кому интересно - Cv v124.2c



2 -=ELF=- не захотел файл качаться - начал плотный поиск и нашел.
Не ошибается тот, кто ничего не делает  
UA Alex, Chernigiv #05.07.2004 21:00
+
-
edit
 

Alex, Chernigiv

новичок
2 Pokos:
Я уже на месте, горю желанием продолжить начатое. Вот только не совсем уверен, с какого конца подойти. :)
Никаких новых идей по предложенному проекту?
Состоялся разговор с начальником цеха по этому поводу, так он сказал, что как ПРИБОР мы использовать его не сможем, а вот как ИНДИКАТОР (т.е. не сдаваемый в Госповерку) это дело было бы весьма недурно провернуть. Предложил даже выбить деньги на компоненты. Сейчас, правда, он в отпуске - но, может, это даже и к лучшему - есть время обсудить, что конкретно нужно.
 
+
-
edit
 

-=ELF=-
-ELF-

новичок
2 Tosha_443 его уже прибили там :(

а взял я его как-раз с этого-же топика просто я линк потерял, а теперь благодаря тебе нашел
 
RU termostat #06.07.2004 13:43
+
-
edit
 

termostat

аксакал

[quote|[DIMITRY II:],05.07.2004 11:52:22 ]никак не могу подключить в vmlab lcd выложи в форуме текст проги именно проекта в vmlab.[/quote]

См. в выше опубликованом архиве:

папка LCD содержит сгенерированый КодВиженом ассемблерный файл - LCD.ASM в него нужно добавить содержимое LCD.VEC - это вектора прерываний. Получится "родной" АВР ассемблерный код. Его можно ассемблировать в АВРстудио например.

Но асм ВМЛАБ-а не на 100% совместим с настоящим АВР'овским асмом!!!
это сказано в хэлпе ВМЛАБА. Нахрена они так сделали? не догоняю!

проект для ВМЛАВ в папке LCDE - файл проекта LCDE.PRJ (в нем же и подключение ножек LCD) - открываешь его в ВМЛАВ и можно в окне текста программы увидеть асм код созданый ВМЛАБом из файла прошивки LCD.HEX


Аналогично и для примеров LCD в 4 строки по 20 символов.

pokos

аксакал

[quote|Alex, Chernigiv,05.07.2004 20:00:14 :]Я уже на месте, горю желанием продолжить начатое....как ПРИБОР мы использовать его не сможем, а вот как ИНДИКАТОР.[/quote]

Ну, я щас в отпуске до конца недели. На форуме бываю не часто. Новых идей пока не требуется, может есть вопросы по схеме?
Начальник цеха прав, использовать это дело как прибор - большущий гемор, причём недешёвый.
Сегодня вечером напишу начало программы. Макет в заряженном состоянии.
Жду вопросов как соловей котлету. Сначала нужно сделать так, чтобы всем было всё понятно до тонкостей. Потом уже ручонками шевелить .
 
?? dimitry II #06.07.2004 14:44
+
-
edit
 

dimitry II

новичок
[quote|termostat, 06.07.2004 12:43:40 :][quote|[DIMITRY II:],05.07.2004 11:52:22 ]никак не могу подключить в vmlab lcd выложи в форуме текст проги именно проекта в vmlab.[/quote]

См. в выше опубликованом архиве:

папка LCD содержит сгенерированый КодВиженом ассемблерный файл - LCD.ASM в него нужно добавить содержимое LCD.VEC - это вектора прерываний. Получится "родной" АВР ассемблерный код. Его можно ассемблировать в АВРстудио например.

Но асм ВМЛАБ-а не на 100% совместим с настоящим АВР'овским асмом!!!
это сказано в хэлпе ВМЛАБА. Нахрена они так сделали? не догоняю!

проект для ВМЛАВ в папке LCDE - файл проекта LCDE.PRJ (в нем же и подключение ножек LCD) - открываешь его в ВМЛАВ и можно в окне текста программы увидеть асм код созданый ВМЛАБом из файла прошивки LCD.HEX


Аналогично и для примеров LCD в 4 строки по 20 символов.[/quote]

пасибо, только обьесни почему так долго, и можно ли ускорить обнвление, т.к. мне трабуется вывод на экран почти в реальном режиме.
Завтра будет... Лучше.  
UA Alex, Chernigiv #06.07.2004 20:22
+
-
edit
 

Alex, Chernigiv

новичок
До вопросов ПО СХЕМЕ мне еще далече... Мне бы сначала сам принцип работы МК уяснить. Аббревиатуры выводов расшифровать, что-куда зачем. Я пока понял только, AIN0 и AIN1 - это аналоговые входы, непонятно только, почему их два. К сожалению, все остальные мои вопросы пока примерно такого же плана. Надо сначала почитать буквари, чем уже начал заниматься.
Если тебя это не сильно обременит, можно пока дать узловое описание схемы - какие цепи что выполняют.
 

pokos

аксакал

Поясняю. В левом верхнем углу нарисован простейший транзисторный преобразователь уровней для соединения с компом по RS-232. Оно полезно во многих случаях. отладка, контроль, тарировка и т.д.
С ноги ОС1 выходит ШИМ, который при помощи простейшего фильтра превращается в напряжение низкой частоты.
Этот сигнал заворачивается на вход аналогового компаратора AIN1. Сигнал с нормирующего усилителя, соответственно, поступает на второй вход компаратора AIN0. Таким образом организуется (при помощи простейшей программы) элементарный следящий АЦП. Разрядность 7 бит получается легко.
Ind-sync и Ind-data - выходы на схемку управления семисегментными индикаторами. Схемка - сдвиговые регистры, соединённые последовательно. Количество регистров=количеству индикаторов.
Остальные деталюшки используются для получения стабильного питания, формирования сброса и генерации кварца.
Разъём - для внутрисхемного программирования.
Остаётся ещё куча ног для будущих нужд.
Пока всё.

Жду следующей серии.
 
?? Tosha_443 #09.07.2004 12:42
+
-
edit
 

Tosha_443

втянувшийся
{// scan buttons !!!!
DDRD=0x00;
PORTD=0x78;
direction=1;
////////////////////////////////////////////////////////////////////////
delay_ms(1);//dummy
////////////////////////////////////////////////////////////////////////
scan_code=PIND;
// светим диодами и проверяем скан-код
direction=0;
DDRD=mask_buttons;
scan_code&=mask_buttons;
//проверка скан-кода клавиш
if (scan_code==0x30)//011 0000
{
status_siren=!status_siren;
}
else if (scan_code==0x50)//101 0000
{
status_light=!status_light;
}
else if (scan_code==0x60)setup_end=1;//110 0000

light_led=status_light1;
siren_led=status_siren1;
setup_led=0;
#asm("WDR");
/////////////////////////////////////////////////////////////////////////
delay_ms(400);
/////////////////////////////////////////////////////////////////////////
while (!setup_end)
объясните, мне глупому, ПОЧЕМУ без dummy delay реакция на клавиатуру не происходит?
direction - PB.6 - на ней база транзистора висит. когда 1- VT закрыт, светодиоды не горят, и можно считывать PIND.

Не ошибается тот, кто ничего не делает  

pokos

аксакал

А чем PIND подсосан к плюсу? Если нутряным резистором, то паразитные ёмкости без задержки просто не успевают зарядиться, Внутренний резюк спокойно бывает =150к.
 
?? Tosha_443 #09.07.2004 14:54
+
-
edit
 

Tosha_443

втянувшийся
[quote|pokos, 09.07.2004 13:37:50 :]А чем PIND подсосан к плюсу? Если нутряным резистором, то паразитные ёмкости без задержки просто не успевают зарядиться, Внутренний резюк спокойно бывает =150к.[/quote]

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

pokos

аксакал

Есть ещё одна пестня. При выполнении PORTD=XX данные на ногах появляются только на СЛЕДУЮЩЕМ такте, кроме того, данные, поступающие на PIND тоже стробируются тактовым сигналом, поэтому задержка от программного выхода до программного входа не меньше 2-х тактов всегда. Я не знаю, сколько выполняется direction=1, для этого нужно смотреть в ассемблер, но мысль такого плана.
 
?? Tosha_443 #09.07.2004 15:12
+
-
edit
 

Tosha_443

втянувшийся
[quote|pokos, 09.07.2004 14:06:08 :]Я не знаю, сколько выполняется direction=1, для этого нужно смотреть в ассемблер, но мысль такого плана.[/quote]

; 102 direction=1;
SBI 0x18,0
; 103 ////////////////////////////////////////////////////////////////////////

direction выполняется 1 такт - установка бита в порту....
оффтоп - не видно, кто на форуме сейчас, даже себя, может к зеркалу подойти? :)
Не ошибается тот, кто ничего не делает  
?? dimitry II #09.07.2004 15:40
+
-
edit
 

dimitry II

новичок
люди я наверно чего-то не понимаю? читаю описание atmega16 и там написано пользуйтесь stk500, далее на сайте http://www.avr123.by.ru написано прогайте любым адатером. короче я написал прогу, хочу загнать её в МК, как это зделать лучше, легче, ну и так далее.
Завтра будет... Лучше.  
?? Tosha_443 #09.07.2004 15:54
+
-
edit
 

Tosha_443

втянувшийся
[quote|dimitry II, 09.07.2004 14:40:56 :]люди я наверно чего-то не понимаю? читаю описание atmega16 и там написано пользуйтесь stk500, далее на сайте http://www.avr123.by.ru написано прогайте любым адатером. короче я написал прогу, хочу загнать её в МК, как это зделать лучше, легче, ну и так далее.[/quote]

любым программатором, понимающим ISP - arvNote 910 например. есть схемы и на 5 проводках. я пользуюсь AVRISP - на circuitcellar раздавали.
Не ошибается тот, кто ничего не делает  
?? dimitry II #09.07.2004 16:10
+
-
edit
 

dimitry II

новичок
[quote|Tosha_443, 09.07.2004 14:54:56 :][quote|dimitry II, 09.07.2004 14:40:56 :]люди я наверно чего-то не понимаю? читаю описание atmega16 и там написано пользуйтесь stk500, далее на сайте http://www.avr123.by.ru написано прогайте любым адатером. короче я написал прогу, хочу загнать её в МК, как это зделать лучше, легче, ну и так далее.[/quote]

любым программатором, понимающим ISP - arvNote 910 например. есть схемы и на 5 проводках. я пользуюсь AVRISP - на circuitcellar раздавали.[/quote]

если можешь скинь фаилы или сылки програматоров буду очень признателен.
Завтра будет... Лучше.  
?? Tosha_443 #09.07.2004 16:51
+
-
edit
 

Tosha_443

втянувшийся
программатор avr в google набери и выбирай - какой больше по душе. или stk200, byteblaster.
910 и не только - http://www.atmel.com/dyn/products/app_notes.asp?family_id=607
502 Bad Gateway - а это тоже стоит поизучать.
Дерзай!
Не ошибается тот, кто ничего не делает  
?? Tosha_443 #09.07.2004 17:08
+
-
edit
 

Tosha_443

втянувшийся
404 Not Found еще - очень рекомендую(как в рекламе UMC).
ну почему у меня -
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей
хотя-бы я же здесь ЕСТЬ???????????????????????????????
Не ошибается тот, кто ничего не делает  
Прошу помощи со стартер-китом AT43DK355... там плата с USB-хабом и 3 портами, на первом сидит сам контроллер AT43USB355E. Вместе с платой поставляется CD, на котором есть пример софта, использующего USB - прошивка для эмуляции гейм-пада. Компилирую я её imagecraft-ом, прошиваю... не хочет опознаваться гейм-пад, и всё тут. Комп упорно пишет, что я подключаю USB device, а дальше он разбираться не хочет. Скачал программу HHD USB Monitor для отслеживания, какие запросы идут к плате и какие ответы она шлёт в хост. Совсем обескуражен. Никаких запросов хост ей не шлёт. Вот копия лога:

000000: PnP Event: Device Connected (UP), 16.07.2004 22:02:50.4531250
The USB device has just been connected to the system.
000001: PnP Event: Query ID (UP), 16.07.2004 22:02:50.4531250 +0.0
Device ID: USB\Vid_0000&Pid_0000
000002: PnP Event: Query Device Text (UP), 16.07.2004 22:02:50.4531250 +0.0
Description: USB Device
000003: PnP Event: Query Device Text (UP), 16.07.2004 22:02:50.4531250 +0.0
Location: USB Device
000004: PnP Event: Query ID (UP), 16.07.2004 22:02:50.4531250 +0.0
Instance ID: 2
000005: PnP Event: Query ID (UP), 16.07.2004 22:02:50.4531250 +0.0
Hardware IDs: USB\UNKNOWN
000006: PnP Event: Query ID (UP), 16.07.2004 22:02:50.4531250 +0.0
Compatible IDs: USB\UNKNOWN

Наконец, пробовал подключить флэш-драйв к свободному порту, проверить, работает ли хаб. Ноль целых хрен десятых, не видно моей флэшки. Люди, в чём могут быть грабли, в какую сторону мне руки хоть гнуть надо, а то я совсем уже упарился, скоро багроветь и злиться начну. Если хотите, могу исходники выслать, если кто отважится - я сам в них несколько дней втыкал, даром что USB с нуля начал осваивать...
 
RU [Владимир] #17.07.2004 11:37
+
-
edit
 
Ребят, очень прошу, дайте ссылки на документации по программированию at89s53, мне это очень надо, желательно какие-то программы на асме.
Заранее благодарен.
 
Pokos, приветствую!
Прошу прощения за задержку с ответом, тому целых три причины - дома экстрим полнейший - с роддома Тамагочи забрали, уже полтора месяца дома живет - это еще тот "МК" :); на работе завал - из четырех человек в отделе я один остался (остальные все из строя вышли - язва, гипертонический криз и отпуск соответственно), а тут еще лето - ремонт турбины, так я просто в экстазе; ну а в третьих - какая-то фигня с Авиабазой (очередная) - я опять Гостем оказался, половина кнопок не работала, только сегодня первый раз получилось в топик по МК зайти.
Большое спасибо за описание схемы. Ну, в общем, я на месте, изучаю документацию - насколько это позволяют мои возможности.

Алексей, Чернигов.
 

pokos

аксакал

Ребяты, продолжение темы про AVR имеется в "Радиоэлектронном". Айда все туды....
 
?? Tosha_443 #19.07.2004 11:37
+
-
edit
 

Tosha_443

втянувшийся
вот ссылочка http://forums.airbase.ru/?showtopic=28138
Не ошибается тот, кто ничего не делает  
AD Реклама Google — средство выживания форумов :)
RU termostat #17.08.2004 20:57
+
-
edit
 

termostat

аксакал

Наконец выбрался в Чип-Дип, затарился радиодеталями. Надеюсь работа над "007" продолжится.

Кстати, рекомендую, купил набор резисторов 61 номинал по 10 штучек - 6,5 долара. А то раньше стопорилось все из-з отсутсвия какого нибудь номинала.

То что потратил в списочек сразу вношу и при случае пополню.

Блин, только приехав домой подивился, а чеж я не спросил набор конденсаторов???

Вот обертку публикую, может пригодится цветовая маркировка сопротивлений. там и ряд номиналов виден.
Прикреплённые файлы:
 
1 4 5 6 7 8 12

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