25.05.2014, 12:05
|
|
Гражданин KAZUS.RU
Регистрация: 05.04.2009
Сообщений: 976
Сказал спасибо: 35
Сказали Спасибо 155 раз(а) в 134 сообщении(ях)
|
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.
|
|
|
|
25.05.2014, 12:57
|
|
Почётный гражданин KAZUS.RU
Регистрация: 24.09.2007
Адрес: Полтава, UA
Сообщений: 2,450
Сказал спасибо: 376
Сказали Спасибо 1,060 раз(а) в 624 сообщении(ях)
|
Re: IAR Embedded Workbench
return ADC действительно работает, спасибо.
Теперь нет предупреждений и "прошивка" короче на 10 байт.
PHP код:
|
return (ADCL+256*ADCH); //result full 10 bit
\ 0000000E B104 IN R16, 0x04
\ 00000010 E010 LDI R17, 0
\ 00000012 B125 IN R18, 0x05
\ 00000014 2F32 MOV R19, R18
\ 00000016 E020 LDI R18, 0
\ 00000018 0F02 ADD R16, R18
\ 0000001A 1F13 ADC R17, R19
\ 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 R16, 0x04
\ 00000010 B115 IN R17, 0x05
\ 00000012 9508 RET
\ 00000014 REQUIRE _A_ADMUX
\ 00000014 REQUIRE _A_ADC
\ 00000014 REQUIRE _A_ADCSR
408 }//adc_read_channel
|
__________________
Мелочи не решают главного. Они решают всё!
|
|
|
|
15.06.2014, 08:13
|
|
Почётный гражданин KAZUS.RU
Регистрация: 03.01.2007
Адрес: Россия,Иркутская обл.
Сообщений: 2,579
Сказал спасибо: 351
Сказали Спасибо 315 раз(а) в 193 сообщении(ях)
|
Re: IAR Embedded Workbench
Нашел немного исходников на IAR AVR,мож кому пригодятся..
http://chipenable.ru/index.php/files...l?limitstart=0
__________________
Глаза боятся,а руки делают.
|
|
|
|
26.06.2014, 17:19
|
|
Временная регистрация
Регистрация: 08.01.2007
Сообщений: 92
Сказал спасибо: 17
Сказали Спасибо 9 раз(а) в 9 сообщении(ях)
|
Re: IAR Embedded Workbench
Добрый день!
Помогите плиз!
О Великие!
Есть проэкт в Keil
переношу в IAR
ругается на
PHP код:
|
code function_type code Alarm_func_array[] =
{
&Alarm_point0,
&Alarm_point1,
&Alarm_point2,
&Alarm_point3
}
|
как правильно записать для ИАР
|
|
|
|
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
|
|
Временная регистрация
Регистрация: 08.01.2007
Сообщений: 92
Сказал спасибо: 17
Сказали Спасибо 9 раз(а) в 9 сообщении(ях)
|
Re: IAR Embedded Workbench
Да, это массив объявления функций
Но так что то не помогает(
Он объявлен в хидере и ИАР
IAR Assembler for 8051
8.10.3 (8.10.3.4033 ![Горд собой](images/smilies/icon_dovl.gif)
ругается на такую запись(
|
|
|
|
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
|
|
Гражданин KAZUS.RU
Регистрация: 04.08.2006
Сообщений: 911
Сказал спасибо: 28
Сказали Спасибо 180 раз(а) в 139 сообщении(ях)
|
Re: IAR Embedded Workbench
__flash это только для AVR, насколько я понимаю.
Может просто const?
|
|
|
|
27.06.2014, 11:07
|
|
Временная регистрация
Регистрация: 08.01.2007
Сообщений: 92
Сказал спасибо: 17
Сказали Спасибо 9 раз(а) в 9 сообщении(ях)
|
Re: IAR Embedded Workbench
Сообщение от SasaVitebsk
|
__flash это только для AVR, насколько я понимаю.
Может просто const?
|
Увы нет((((
|
|
|
|
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.
|
|
|
|
Ваши права в разделе
|
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения
HTML код Выкл.
|
|
|
Тема |
Автор |
Раздел |
Ответов |
Последнее сообщение |
Подниму тему WinAVR vs IAR
|
oleg110592 |
Микроконтроллеры, АЦП, память и т.д |
5 |
24.10.2015 14:06 |
Часовой пояс GMT +4, время: 02:44.
|
|