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

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

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

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

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

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


 
Опции темы
Непрочитано 25.05.2014, 12:05  
oleg110592
Гражданин KAZUS.RU
 
Регистрация: 05.04.2009
Сообщений: 976
Сказал спасибо: 35
Сказали Спасибо 155 раз(а) в 134 сообщении(ях)
oleg110592 на пути к лучшему
По умолчанию Re: IAR Embedded Workbench

листинг
вариант1:
Код:
//  246     return ADC;
        LDS     R16, _A_ADC
        LDS     R17, (_A_ADC + 1)
        RET
вариант2:
Код:
//  247     Res = 256 * ADCH;
        LDS     R17, 121
//  248     return (Res + ADCL);    
        LDS     R18, _A_ADC
        MOV     R16, R18
        RET
где _A_ADC:
Код:
  ASEGN ABSOLUTE:DATA:NOROOT,078H
// union ‹unnamed› volatile __io _A_ADC
_A_ADC:
        DS8 2
078H = 120
Реклама:

Последний раз редактировалось oleg110592; 25.05.2014 в 12:07.
oleg110592 вне форума  
Непрочитано 25.05.2014, 12:57  
gary2007
Почётный гражданин KAZUS.RU
 
Аватар для gary2007
 
Регистрация: 24.09.2007
Адрес: Полтава, UA
Сообщений: 2,450
Сказал спасибо: 376
Сказали Спасибо 1,060 раз(а) в 624 сообщении(ях)
gary2007 на пути к лучшему
По умолчанию Re: IAR Embedded Workbench

return ADC действительно работает, спасибо.
Теперь нет предупреждений и "прошивка" короче на 10 байт.
PHP код:
return (ADCL+256*ADCH);  //result full 10 bit
   
\   0000000E   B104               IN      R160x04
   
\   00000010   E010               LDI     R170
   
\   00000012   B125               IN      R180x05
   
\   00000014   2F32               MOV     R19R18
   
\   00000016   E020               LDI     R180
   
\   00000018   0F02               ADD     R16R18
   
\   0000001A   1F13               ADC     R17R19
   
\   0000001C   9508               RET
   
\   0000001E                      REQUIRE _A_ADC
   
\   0000001E                      REQUIRE _A_ADCSR
   
\   0000001E                      REQUIRE _A_ADMUX
    408          
}//adc_read_channel 
PHP код:
return ADC;  //result full 10 bit
   
\   0000000E   B104               IN      R160x04
   
\   00000010   B115               IN      R170x05
   
\   00000012   9508               RET
   
\   00000014                      REQUIRE _A_ADMUX
   
\   00000014                      REQUIRE _A_ADC
   
\   00000014                      REQUIRE _A_ADCSR
    408          
}//adc_read_channel 
__________________
Мелочи не решают главного. Они решают всё!
gary2007 вне форума  
Непрочитано 15.06.2014, 08:13  
CERGEI1982
Почётный гражданин KAZUS.RU
 
Аватар для CERGEI1982
 
Регистрация: 03.01.2007
Адрес: Россия,Иркутская обл.
Сообщений: 2,579
Сказал спасибо: 351
Сказали Спасибо 315 раз(а) в 193 сообщении(ях)
CERGEI1982 на пути к лучшему
По умолчанию Re: IAR Embedded Workbench

Нашел немного исходников на IAR AVR,мож кому пригодятся..
http://chipenable.ru/index.php/files...l?limitstart=0
__________________
Глаза боятся,а руки делают.
CERGEI1982 вне форума  
Непрочитано 26.06.2014, 17:19  
papa_n
Временная регистрация
 
Регистрация: 08.01.2007
Сообщений: 92
Сказал спасибо: 17
Сказали Спасибо 9 раз(а) в 9 сообщении(ях)
papa_n на пути к лучшему
Вопрос Re: IAR Embedded Workbench

Добрый день!
Помогите плиз!
О Великие!
Есть проэкт в Keil
переношу в IAR
ругается на
PHP код:
code function_type code Alarm_func_array[] = 
{
    &
Alarm_point0,
    &
Alarm_point1,
    &
Alarm_point2,
    &
Alarm_point3

как правильно записать для ИАР
papa_n вне форума  
Непрочитано 26.06.2014, 20:14  
_Артём_
Гражданин KAZUS.RU
 
Регистрация: 16.03.2011
Сообщений: 486
Сказал спасибо: 8
Сказали Спасибо 131 раз(а) в 116 сообщении(ях)
_Артём_ на пути к лучшему
По умолчанию Re: IAR Embedded Workbench

Сообщение от papa_n Посмотреть сообщение
Добрый день!

PHP код:
code function_type code Alarm_func_array[] = 
{
    &
Alarm_point0,
    &
Alarm_point1,
    &
Alarm_point2,
    &
Alarm_point3

как правильно записать для ИАР
Это массив указателей на функции? И какой IAR?
Может так:
Код:
function_type __flash Alarm_func_array[] = 
{
	&Alarm_point0,
	&Alarm_point1,
	&Alarm_point2,
	&Alarm_point3
};
?
_Артём_ вне форума  
Непрочитано 27.06.2014, 09:52  
papa_n
Временная регистрация
 
Регистрация: 08.01.2007
Сообщений: 92
Сказал спасибо: 17
Сказали Спасибо 9 раз(а) в 9 сообщении(ях)
papa_n на пути к лучшему
По умолчанию Re: IAR Embedded Workbench

Да, это массив объявления функций
Но так что то не помогает(
Он объявлен в хидере и ИАР
IAR Assembler for 8051
8.10.3 (8.10.3.4033
ругается на такую запись(
papa_n вне форума  
Непрочитано 27.06.2014, 10:40  
_Артём_
Гражданин KAZUS.RU
 
Регистрация: 16.03.2011
Сообщений: 486
Сказал спасибо: 8
Сказали Спасибо 131 раз(а) в 116 сообщении(ях)
_Артём_ на пути к лучшему
По умолчанию Re: IAR Embedded Workbench

Сообщение от papa_n Посмотреть сообщение
Он объявлен в хидере и ИАР
IAR Assembler for 8051
Что значит объявлен в хидере? Переменные принято определять в це-файлах и декларировать в аш-файлах. У вас так?
Сообщение от papa_n Посмотреть сообщение
ругается на такую запись(
В каких выражениях ругается?
_Артём_ вне форума  
Непрочитано 27.06.2014, 10:50  
SasaVitebsk
Гражданин KAZUS.RU
 
Регистрация: 04.08.2006
Сообщений: 911
Сказал спасибо: 28
Сказали Спасибо 180 раз(а) в 139 сообщении(ях)
SasaVitebsk на пути к лучшему
По умолчанию Re: IAR Embedded Workbench

__flash это только для AVR, насколько я понимаю.
Может просто const?
SasaVitebsk вне форума  
Непрочитано 27.06.2014, 11:07  
papa_n
Временная регистрация
 
Регистрация: 08.01.2007
Сообщений: 92
Сказал спасибо: 17
Сказали Спасибо 9 раз(а) в 9 сообщении(ях)
papa_n на пути к лучшему
По умолчанию Re: IAR Embedded Workbench

Сообщение от SasaVitebsk Посмотреть сообщение
__flash это только для AVR, насколько я понимаю.
Может просто const?
Увы нет((((
papa_n вне форума  
Непрочитано 27.06.2014, 11:10  
_Артём_
Гражданин KAZUS.RU
 
Регистрация: 16.03.2011
Сообщений: 486
Сказал спасибо: 8
Сказали Спасибо 131 раз(а) в 116 сообщении(ях)
_Артём_ на пути к лучшему
По умолчанию Re: IAR Embedded Workbench

Сообщение от SasaVitebsk Посмотреть сообщение
__flash это только для AVR, насколько я понимаю.
Надо в мануале на компилятор смотреть.

Посмотрел. Есть такой keyword: _ _code
Цитата:
The _ _code memory attribute overrides the default storage of variables given by the selected data model and places individual constants and strings in code memory. You can also use the _ _code attribute to create a pointer explicitly pointing to an object located in the code memory.
И ещё _ _far_code и _ _huge_code.

Последний раз редактировалось _Артём_; 27.06.2014 в 11:14.
_Артём_ вне форума  
 

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

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

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

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

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Подниму тему WinAVR vs IAR oleg110592 Микроконтроллеры, АЦП, память и т.д 5 24.10.2015 14:06


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


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