CodeVision AVR в вопросах и ответах

Обсуждаем контроллеры компании Atmel.
Аватара пользователя
Аlex
Модератор
Сообщения: 4614
Зарегистрирован: Чт мар 18, 2010 23:09:57
Откуда: Планета Земля
Контактная информация:

Re: CodeVision AVR в вопросах и ответах

Сообщение Аlex »

Всё тоже самое, что в примере, приведённом ARV выше. Только, при передаче аргументов, делайте явное преобразование из указателя в unsigned int.
Надеюсь, гуглом пользоваться умеем ?
Аватара пользователя
Z_h_e
Собутыльник Кота
Сообщения: 2708
Зарегистрирован: Сб май 14, 2011 21:16:04
Откуда: г. Чайковский

Re: CodeVision AVR в вопросах и ответах

Сообщение Z_h_e »

realm писал(а):Давайте немного по другому задам вопрос.
Да точно так же Вы его задали и ответ будет таким же.
Поглядите каким образом передаются параметры функции для Вашего компилятора и увидите где будут лежать (скорее всего в регистрах) значения параметров.
realm писал(а):В С - шных заморочках я не селен.
Или изучайте его или не пишите на нем, других вариантов нет.
Изображение
Добро всегда побеждает зло. Поэтому кто победил - тот и добрый.
Аватара пользователя
ARV
Ум, честь и совесть. И скромность.
Сообщения: 18544
Зарегистрирован: Чт дек 28, 2006 08:19:56
Откуда: Новочеркасск
Контактная информация:

Re: CodeVision AVR в вопросах и ответах

Сообщение ARV »

realm писал(а):Есть два массива:
unsigned char DES_ENC_Data[8];
unsigned char DES_ENC_SN[8];
И функция:
void tde (unsigned int Data_RAM_Address, unsigned int SN_RAM_Address)

Код: Выделить всё

tide((unsigned int)DES_ENC_Data, (unsigned int)DES_ENC_SN);
по силам ли это будет вам уразуметь?
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...

Мой уютный бложик... заходите!
Аватара пользователя
Аlex
Модератор
Сообщения: 4614
Зарегистрирован: Чт мар 18, 2010 23:09:57
Откуда: Планета Земля
Контактная информация:

Re: CodeVision AVR в вопросах и ответах

Сообщение Аlex »

Эх... А так хотелось, чтобы человек немного мозгом пошевелил и по поисковикам полазил...
Но, ув. ARV, как всегда - в своём репертуаре, даёт готовые варианты. Ну не может он заставлять думать :)
Vov123
Опытный кот
Сообщения: 804
Зарегистрирован: Чт мар 12, 2009 16:31:05

Re: CodeVision AVR в вопросах и ответах

Сообщение Vov123 »

А что книжку взять

Изображение

И почитать про указатели (стр.232), там и примеры есть, слабо?
Аватара пользователя
Аlex
Модератор
Сообщения: 4614
Зарегистрирован: Чт мар 18, 2010 23:09:57
Откуда: Планета Земля
Контактная информация:

Re: CodeVision AVR в вопросах и ответах

Сообщение Аlex »

Да не хочет человек заморачиваться, читать, учить, ... Он же это прямо сказал :)
Аватара пользователя
ARV
Ум, честь и совесть. И скромность.
Сообщения: 18544
Зарегистрирован: Чт дек 28, 2006 08:19:56
Откуда: Новочеркасск
Контактная информация:

Re: CodeVision AVR в вопросах и ответах

Сообщение ARV »

Аlex писал(а):Ну не может он заставлять думать
может, но не хочет, если
Аlex писал(а):не хочет человек заморачиваться, читать, учить
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...

Мой уютный бложик... заходите!
realm
Первый раз сказал Мяу!
Сообщения: 30
Зарегистрирован: Вт сен 20, 2016 23:50:51

Re: CodeVision AVR в вопросах и ответах

Сообщение realm »

Аlex писал(а):Только, при передаче аргументов, делайте явное преобразование из указателя в unsigned int.

ARV писал(а):tide((unsigned int)DES_ENC_Data, (unsigned int)DES_ENC_SN);

Спасибо. Именно то что я и проушанил.

Добавлено after 7 minutes 50 seconds:
Аlex писал(а):Ну не может он заставлять думать :)

Думать больно.
Ну не мое это. Ассемблер, паскаль - это мое. А С чето сильно часто напрягает и мозг выносит. Ну не нравится мне тратить время там где его можно не тратить.
Всем спасибо, кто принял участие!
Последний раз редактировалось realm Вт ноя 08, 2016 17:39:48, всего редактировалось 1 раз.
Аватара пользователя
Z_h_e
Собутыльник Кота
Сообщения: 2708
Зарегистрирован: Сб май 14, 2011 21:16:04
Откуда: г. Чайковский

Re: CodeVision AVR в вопросах и ответах

Сообщение Z_h_e »

realm писал(а):Z_h_e писал(а):
tide((unsigned int)DES_ENC_Data, (unsigned int)DES_ENC_SN);

Спасибо. Именно то что я и проушанил.
Пожалуйста, только я этого не писал.
Изображение
Добро всегда побеждает зло. Поэтому кто победил - тот и добрый.
Аватара пользователя
ARV
Ум, честь и совесть. И скромность.
Сообщения: 18544
Зарегистрирован: Чт дек 28, 2006 08:19:56
Откуда: Новочеркасск
Контактная информация:

Re: CodeVision AVR в вопросах и ответах

Сообщение ARV »

realm писал(а):Думать больно.
Ну не мое это.
:facepalm:
realm писал(а):Ассемблер, паскаль - это мое
тут думать не надо :facepalm:
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...

Мой уютный бложик... заходите!
Аватара пользователя
WiseLord
Друг Кота
Сообщения: 4905
Зарегистрирован: Чт апр 11, 2013 11:19:59
Откуда: Минск
Контактная информация:

Re: CodeVision AVR в вопросах и ответах

Сообщение WiseLord »

realm: а зачем так извращаться? Я про попытку передавать адреса через целые int. Если есть нормальный способ через указатели, они же и есть те самые адреса безьвсяких приведений и преобразований.
realm
Первый раз сказал Мяу!
Сообщения: 30
Зарегистрирован: Вт сен 20, 2016 23:50:51

Re: CodeVision AVR в вопросах и ответах

Сообщение realm »

WiseLord писал(а):realm: а зачем так извращаться?

Если функция на ассемблере написана - сразу в регистры перегружать входящие значения надо. А они про такую штуку, как указатели вообще ничего не знают.
Аватара пользователя
Z_h_e
Собутыльник Кота
Сообщения: 2708
Зарегистрирован: Сб май 14, 2011 21:16:04
Откуда: г. Чайковский

Re: CodeVision AVR в вопросах и ответах

Сообщение Z_h_e »

realm писал(а):сразу в регистры перегружать входящие значения надо. А они про такую штуку, как указатели вообще ничего не знают.
А про что "они" знают?
Z_h_e писал(а):Поглядите каким образом передаются параметры функции для Вашего компилятора и увидите где будут лежать (скорее всего в регистрах) значения параметров.
Изображение
Добро всегда побеждает зло. Поэтому кто победил - тот и добрый.
realm
Первый раз сказал Мяу!
Сообщения: 30
Зарегистрирован: Вт сен 20, 2016 23:50:51

Re: CodeVision AVR в вопросах и ответах

Сообщение realm »

Нет. Они лежат в RAM и на них ссылается регистр Y
Аватара пользователя
Z_h_e
Собутыльник Кота
Сообщения: 2708
Зарегистрирован: Сб май 14, 2011 21:16:04
Откуда: г. Чайковский

Re: CodeVision AVR в вопросах и ответах

Сообщение Z_h_e »

Я так и не понял кто такие "они". Ну а коли Вы все знаете и лучше всех, то зачем тут вопросы задаете?
Изображение
Добро всегда побеждает зло. Поэтому кто победил - тот и добрый.
realm
Первый раз сказал Мяу!
Сообщения: 30
Зарегистрирован: Вт сен 20, 2016 23:50:51

Re: CodeVision AVR в вопросах и ответах

Сообщение realm »

Z_h_e писал(а):Ну а коли Вы все знаете и лучше всех, то зачем тут вопросы задаете?

Я знаю достаточно многое, но не все.
А какого лешего предобразование в unsigned int не произошло автоматически я до сих пор не знаю.
Аватара пользователя
ARV
Ум, честь и совесть. И скромность.
Сообщения: 18544
Зарегистрирован: Чт дек 28, 2006 08:19:56
Откуда: Новочеркасск
Контактная информация:

Re: CodeVision AVR в вопросах и ответах

Сообщение ARV »

realm писал(а):А какого лешего предобразование в unsigned int не произошло автоматически я до сих пор не знаю
в каком именно месте вашего кода это не произошло?

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

Мой уютный бложик... заходите!
realm
Первый раз сказал Мяу!
Сообщения: 30
Зарегистрирован: Вт сен 20, 2016 23:50:51

Re: CodeVision AVR в вопросах и ответах

Сообщение realm »

ARV писал(а):в каком именно месте вашего кода это не произошло?

Вот в этом (вызов функции):
tde (DES_ENC_Data, DES_ENC_SN);
Почему-то думал что имя массива и есть адрес и ни к какому unsigned int его приводить не надо потому как он и есть unsigned int.
Аватара пользователя
Z_h_e
Собутыльник Кота
Сообщения: 2708
Зарегистрирован: Сб май 14, 2011 21:16:04
Откуда: г. Чайковский

Re: CodeVision AVR в вопросах и ответах

Сообщение Z_h_e »

realm писал(а):Почему-то думал что имя массива и есть адрес
Совершенно верно, имя массива и есть адрес, равно как и указатель. А теперь вернитесь к началу и почитайте все-таки что Вам предлагали.
Изображение
Добро всегда побеждает зло. Поэтому кто победил - тот и добрый.
realm
Первый раз сказал Мяу!
Сообщения: 30
Зарегистрирован: Вт сен 20, 2016 23:50:51

Re: CodeVision AVR в вопросах и ответах

Сообщение realm »

Z_h_e писал(а):Совершенно верно, имя массива и есть адрес, равно как и указатель. А теперь вернитесь к началу и почитайте все-таки что Вам предлагали.

Так то оно так, да не так, как оказалось.
Если так сделать и загрузить значения в регистры в них оказывается полная лажа.
Ответить

Вернуться в «AVR»