Реклама на сайте English version  DatasheetsDatasheets

KAZUS.RU - Электронный портал. Принципиальные схемы, Datasheets, Форум по электронике

Новости электроники Новости Литература, электронные книги Литература Документация, даташиты Документация Поиск даташитов (datasheets)Поиск PDF
  От производителей
Новости поставщиков
В мире электроники

  Сборник статей
Электронные книги
FAQ по электронике

  Datasheets
Поиск SMD
Он-лайн справочник

Принципиальные схемы Схемы Каталоги программ, сайтов Каталоги Общение, форум Общение Ваш аккаунтАккаунт
  Каталог схем
Избранные схемы
FAQ по электронике
  Программы
Каталог сайтов
Производители электроники
  Форумы по электронике
Помощь проекту

Микроконтроллеры, АЦП, память и т.д Темы касающиеся микроконтроллеров разных производителей, памяти, АЦП/ЦАП, периферийных модулей...

 
Опции темы
Непрочитано 03.02.2009, 13:16  
kison
Почётный гражданин KAZUS.RU
 
Регистрация: 13.12.2004
Сообщений: 3,172
Сказал спасибо: 11
Сказали Спасибо 692 раз(а) в 504 сообщении(ях)
kison на пути к лучшему
По умолчанию

Сообщение от FedorChek
Не совсем понял какой результат компиляции должен я привести. Функция использующая таймер1 приведена в прикрепленном файле выше.
Нужен результат компиляции. Типа такого:
Код:
113:      			EICRA = (EICRA & (~(1‹‹ISC00))) | (1‹‹ISC01);
+000001D3:   E6E9        LDI     R30,0x69         Load immediate
+000001D4:   E0F0        LDI     R31,0x00         Load immediate
+000001D5:   8180        LDD     R24,Z+0          Load indirect with displacement
+000001D6:   7F8C        ANDI    R24,0xFC         Logical AND with immediate
+000001D7:   6082        ORI     R24,0x02         Logical OR with immediate
+000001D8:   8380        STD     Z+0,R24          Store indirect with displacement
114:      			EIMSK |= (1‹‹INT0);
+000001D9:   9AE8        SBI     0x1D,0           Set bit in I/O register
Сообщение от FedorChek
Что касается
DDRD.2=1;
PORTD.2=1;
тут я явно чтото не понимаю мы строкой DDRD.2=1; подключаем подтягивающий резистор, а строкой PORTD.2=1; подаем на ногу 2 напряжение или как...
Или как. DDRD.2 = 1; это включение режима "выход" для PD2, PORTD.2 = 1; это установка на PD2 высокого уровня. Резистор действует только когда линия порта сконфигурирована как вход (DDRD.2 = 0). Вот тогда можно включить резистор - PORTD.2 = 1; или отключить PORTD.2 = 0;
Реклама:
kison вне форума  
Непрочитано 03.02.2009, 14:05  
FedorChek
Прописка
 
Регистрация: 24.07.2008
Сообщений: 151
Сказал спасибо: 1
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
FedorChek на пути к лучшему
По умолчанию

Скорее всего я ошибся в DDRD.2=1; при каком значении 1 или 0 идет напряжение но дело не в этом почему работает только когда всему порту присвоишь DDRD=(1 или 0); а вариант DDRD.2=(1 или 0); не прокатывает
FedorChek вне форума  
Непрочитано 03.02.2009, 14:37  
kison
Почётный гражданин KAZUS.RU
 
Регистрация: 13.12.2004
Сообщений: 3,172
Сказал спасибо: 11
Сказали Спасибо 692 раз(а) в 504 сообщении(ях)
kison на пути к лучшему
По умолчанию

Сообщение от FedorChek
Скорее всего я ошибся в DDRD.2=1; при каком значении 1 или 0 идет напряжение но дело не в этом почему работает только когда всему порту присвоишь DDRD=(1 или 0); а вариант DDRD.2=(1 или 0); не прокатывает
Смотрите ассемблерный листинг. Все ответы там. Попробуйте стандартную сишную запись:
DDRD |= 0x04; // то же что DDRD.2 = 1;
DDRD &= ~(0x04); // то же что DDRD.2 = 0;
Вообще баловаться с компилятором, который не соответствует стандарту языка С дело неблагодарное.
А что значит "не прокатывает"? Компилятор ругается или тишина, но в железе не работает?
kison вне форума  
Непрочитано 03.02.2009, 16:01  
avr123-nm-ru
Почётный гражданин KAZUS.RU
 
Регистрация: 13.05.2006
Адрес: Москва
Сообщений: 3,559
Сказал спасибо: 76
Сказали Спасибо 326 раз(а) в 230 сообщении(ях)
avr123-nm-ru на пути к лучшему
По умолчанию

Сообщение от FedorChek
Скорее всего я ошибся в DDRD.2=1;

работает только когда всему порту присвоишь DDRD=(1 или 0); а вариант DDRD.2=(1 или 0); не прокатывает
Это растолковано в задаче-кпражнении 1 курса по AVR

http://avr123.nm.ru/z1.htm

Там же даны примеры управления битами регистров для разных компиляторов Си для AVR.
__________________
Обучалка AVR PIC ARM начинающим программирование курс самоучитель шаг за шагом с нуля, CVAVR, PROTEUS, MPLAB, WinAVR, IAR, KEIL электроника - http://proavr.narod.ru
avr123-nm-ru вне форума  
Непрочитано 03.02.2009, 16:07  
avr123-nm-ru
Почётный гражданин KAZUS.RU
 
Регистрация: 13.05.2006
Адрес: Москва
Сообщений: 3,559
Сказал спасибо: 76
Сказали Спасибо 326 раз(а) в 230 сообщении(ях)
avr123-nm-ru на пути к лучшему
По умолчанию

DDRD.2=1 в CVAVR компилится нормально.

; 46 DDRD.2 = 1; //
000045 9a8a SBI 0x11,2
; 47
; 48 }

Сообщение от FedorChek
DDRD.2=1;
PORTD.2=1;

тут я явно чтото не понимаю мы строкой DDRD.2=1; подключаем подтягивающий резистор, а строкой PORTD.2=1; подаем на ногу 2 напряжение или как...
Устройство ножки и порта AVR - http://avr123.nm.ru/02.htm
__________________
Обучалка AVR PIC ARM начинающим программирование курс самоучитель шаг за шагом с нуля, CVAVR, PROTEUS, MPLAB, WinAVR, IAR, KEIL электроника - http://proavr.narod.ru
avr123-nm-ru вне форума  
Непрочитано 03.02.2009, 17:13  
FedorChek
Прописка
 
Регистрация: 24.07.2008
Сообщений: 151
Сказал спасибо: 1
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
FedorChek на пути к лучшему
По умолчанию

Сообщение от kison
Вообще баловаться с компилятором, который не соответствует стандарту языка С дело неблагодарное.
А что значит "не прокатывает"? Компилятор ругается или тишина, но в железе не работает?
Что значит "баловаться с компилятором, который не соответствует стандарту языка С дело неблагодарное."
Вы хотите сказать что "КодеАВР" не соответствует стандарту языка С. Не прокатывает в моем случае не работает в железе, а компилятор компилирует без ошибок.
FedorChek вне форума  
Непрочитано 03.02.2009, 18:12  
kison
Почётный гражданин KAZUS.RU
 
Регистрация: 13.12.2004
Сообщений: 3,172
Сказал спасибо: 11
Сказали Спасибо 692 раз(а) в 504 сообщении(ях)
kison на пути к лучшему
По умолчанию

Сообщение от FedorChek
Что значит "баловаться с компилятором, который не соответствует стандарту языка С дело неблагодарное."
Вы хотите сказать что "КодеАВР" не соответствует стандарту языка С.
Угу, именно это.
И еще - у CV крайне примитивный оптимизатор. Из за этого программы становятся большими и тормознутыми. От результата компиляции пробивает на смех. Отлаживать по результирующему ассемблерному листингу это себя не уважать.
В IDE нет даже простенького отладчика. И за это Г нужно еще и платить Библиотеки просто жесть. В хидерах код, переменные объявляются. Открытостью библиотек мало того что не пахнет, так и за деньги их не дадут. Хотя кому они нужны, при таком качетве. Разве что как пособие - никогда так не делайте
kison вне форума  
Непрочитано 03.02.2009, 18:24  
Samodelkin2001
Частый гость
 
Регистрация: 17.12.2006
Сообщений: 26
Сказал спасибо: 1
Сказали Спасибо 3 раз(а) в 3 сообщении(ях)
Samodelkin2001 на пути к лучшему
По умолчанию

Все правильно, ставится WinAVR, и забывается про него. Потом ставится AVR Studio, и в студии после этого можно писать и программы на ассемблере, и на Си, и компилировать, и отлаживать, и просматривать получившийся код, и программировать родным или сделанным под родной программатором, и не надо при этом париться с разными прогами для написания программы, её отладки и конечного программирования!!!
Фирменая студия все делает сама, просто использует библиотеки и компилятор WinAVR. При этом для пользователя это абсолюто незаметно. И ни одна из этих двух программ не требует какого либо взлома-кряка!!! И на родных сайтах очень оперативно появляются свежие версии для поддержки новых кристаллов!!!
И код у компилятора WinAVR, которых пользует для себя АВР Студия, получается самый компактный из того что могут предложить БЕСПЛАТНЫЕ компиляторы.
__________________
мой сайт: http://samodelkin2001.ru.gg
Samodelkin2001 вне форума  
Непрочитано 03.02.2009, 18:36  
FedorChek
Прописка
 
Регистрация: 24.07.2008
Сообщений: 151
Сказал спасибо: 1
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
FedorChek на пути к лучшему
По умолчанию

Ну наконецто пришли к какомуто мнению т.е. конкретный совет выкинуть "КодеАВР" и поставить "дельные" проги. И действительно мое незнание приводит к жутким извращениям откомпилировать код в "КодеАВР", получить hex, открыть "АВРСтудию" в ней открыть хекс посмотреть как работает и так в бесконечном цикле
FedorChek вне форума  
Непрочитано 03.02.2009, 19:28  
Samodelkin2001
Частый гость
 
Регистрация: 17.12.2006
Сообщений: 26
Сказал спасибо: 1
Сказали Спасибо 3 раз(а) в 3 сообщении(ях)
Samodelkin2001 на пути к лучшему
По умолчанию

Ну вообще-то в инете много ссылок про то, что WinAVR сам интегрируется в AVR Studio, и позволяет без лишней головной боли писать проги, И при этом имеет очень непрохие параметры по размеру результатирующего кода. Да и новые версии все более лучшие выходят каждее 3-5 месяцев.
Так что дерзайте.
У меня, например, и программатор под AVR Studio, делал по схеме в журнале Радио, Аналог STK-500.
Вся эта связка отлично работает!!! И никаких крэков. Все что требует крэка, и эти крэки есть в инете, не такое уж и свежее. А все свежее - небесплатно.
Так что WinAVR+AVR Studio - выбор чемпионов!!!
__________________
мой сайт: http://samodelkin2001.ru.gg
Samodelkin2001 вне форума  
 

Закладки
Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Защита кода Gn0me Микроконтроллеры, АЦП, память и т.д 7 25.06.2009 14:07
[Решено] Покупаете ли Вы лицензионный софт: САПР, компиляторы и т.п.? LeonidIwanowitch Отвлекитесь, эмбеддеры! 1 16.06.2008 20:33
GNU отладчики и компиляторы для МК um Микроконтроллеры, АЦП, память и т.д 7 22.12.2007 20:50
компиляторы crossfire Proteus, KiCAD и другие ECAD 2 20.10.2006 20:48
С компиляторы для Т89С51СС01 Andy Микроконтроллеры, АЦП, память и т.д 3 07.07.2003 07:18


Часовой пояс GMT +4, время: 19:44.


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot