реклама на сайте
подробности

 
 
> Проблема с передачей агрументов во вложенных функциях
SXC
сообщение Feb 8 2011, 20:48
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 33
Регистрация: 18-04-07
Пользователь №: 27 158



Добрый день!

Столкнлся с такой проблемой...
Atmega32A, Компилятор CodeVisionAvr (пробовал на первой и на второй версиях - одинаково)
В оперативке практически только массив unsigned char LCD_Buffer[504];
Data Stack area: 0x60 to 0x573
Data Stack size: 1300 byte(s)
Estimated Data Stack usage: 22 byte(s)
RAM Global variables area: 0x574 to 0x76F
RAM Global variables size: 508 byte(s)
Hardware Stack area: 0x770 to 0x85F
Hardware Stack size: 240 byte(s)
Heap size: 0 byte(s)
EEPROM usage: 0 byte(s), 0,0% of EEPROM
Program size: 1462 words (2924 bytes), 8,9% of FLASH


При вызове функции A(zX) ей передается аргумент (unsigned char) zX,
а его значение передается внутри этой функции другой функции B(zX).
И получается, что этой другой функции передается 0, а не значение zX переданое в A(zX).
Если внутри A(zX) присвоить zX какое-то значение, то все работает как надо и в B(zX) передается правильное значение.
Подобная проблема и при использовании (вызове) макросов внутри функции.

Проблема с камнем или что... все параметры компилятора перепробовал...
В чем может быть проблема?

Сообщение отредактировал SXC - Feb 8 2011, 20:51
Go to the top of the page
 
+Quote Post



Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 22nd July 2025 - 11:40
Рейтинг@Mail.ru


Страница сгенерированна за 0.01349 секунд с 7
ELECTRONIX ©2004-2016