- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
#define SPI_BUF_SIZE 0x400
#define SDRAM_SPI_0_BUF_MISO (void*)0x100000
#define SDRAM_SPI_0_BUF_MOSI SDRAM_SPI_0_BUF_MISO - SPI_BUF_SIZE
#define SDRAM_SPI_1_BUF_MISO SDRAM_SPI_0_BUF_MOSI - SPI_BUF_SIZE
#define SDRAM_SPI_1_BUF_MOSI SDRAM_SPI_1_BUF_MISO - SPI_BUF_SIZE
#define SDRAM_SPI_2_BUF_MISO SDRAM_SPI_1_BUF_MOSI - SPI_BUF_SIZE
#define SDRAM_SPI_2_BUF_MOSI SDRAM_SPI_2_BUF_MISO - SPI_BUF_SIZE
#define SDRAM_SPI_3_BUF_MISO SDRAM_SPI_2_BUF_MOSI - SPI_BUF_SIZE
#define SDRAM_SPI_3_BUF_MOSI SDRAM_SPI_3_BUF_MISO - SPI_BUF_SIZE
void test()
{
void *buf = SDRAM_SPI_3_BUF_MOSI;
void *buf1 = (void*)0x100000 - 0x400*7;
*buf = *buf1 = 0xAA;
printf("buf=%.2x \tbuf1=%.2x\n ",*buf, buf1);
return;
}
Расскажу преамбулу. Код писался под проц atmel at91sam7x
В этом процессоре есть звено SPI (serial pereferial interface). Но так как звено было спроектировано с небольшим косячком (который кстати в эррате был явно описан) буффер для каждой линии нужно было выделять в сдраме.
Сказано - сделано. Выделили. а так как средства отладки только DBGU и JTAG.
Все волосы на жопе вырвал пока нашел в чем ошибка.
Внимание, вопрос. В чем гавно?
поправка - в примере разименовать второй буффер забыл.
ггг
выдаст варнинг на приведении типов. возьми компилятор потупее.
И вместо этого принтфа первое, что приходит в голову, сравнить, что получается с адресами.
Если разные, то, может, долбанутый компилятор и приоритет минуса у него не тот:) Если одинаковые, а значения вычитанные разные, то вопрос, куда мы этим адресом попали:)
кстати, как моногамномый гетеросексуалист заявляю что подобные намёки на гомоэротизм характерны только для аналоамериканцев.
так то. вы случаем не аналоамериканец?
Чем кидаться говном в троллей, лучше выучите русский язык.
Знаешь, к какой классификации отнести себя? Молодец.
Все нормально:)
Сам соси.
никто не решит сишную задачку?
Теперь начнёт показывать, какой он невьёбенный кодировщик, не то, что мы, сирые и убогие.
Тьфу.
проблема обозначена. никого обсирать не собираюсь.
холивар развести - знатное дело.
А ты будто-бы отнас отличаешься. Хуева элита.
штоле?
Всех говном решил полить? Злой.
Разве что возможно эта область памяти не читабельна, но это всё равно не говнокод.
и это есть гавно.
ну знаешь, очень весело разбираться в спагетти криво названных макросов
у меня эти MOSI/MISO в глазах ебутся
Ну или наоборот, тот минус, который в макросах будет умножаться на sizeof(int), а тот, который в коде, не будет из-за того, что хз этот си короче.
За char* он считается. а точнее считался раньше. Современные компиляторы как минимум ворнинг выдают.
выражения препроцессора не взяты в скобки
_________
кстати да. там проблема была что из за отсутсвия скобок последний буффер был выше третьего. жаль свн базы нет под рукой
ну и что здесь?
В коде, наверное?
Готовы, детишки????
Да Капитан.
Я не слышу.
Так точно Капитан Очевидность.
Кто проживает на дне океана?
Жалкая губка, имбицил без изьяеа.
Сам детишка и школота. Убейся. Типичный Пидор-ГдеЗдесьСиПлюсПлюсовец-Задрот.
всем спасибо всех наебали, расходимся.
Да наш топикстартер будет постоянно держаться в топе по пяти-шести наградам.
Всё согласно ГОСТу.
Полил всех грязью и сам сел в лужу!
Слишком много было умных рассуждений, а как до дела дошло...
Не стоИт.
былинный фейл
Тред не читал, но на этих атмелах рам с 200000, а 100000 это флэш с кодом.
____________
соси хуй, школьник. doc6287.pdf page 20
internal flash - after 0x100000.
а мы от верхнего адреса вычитаем и в срам попадаем.
не поленился щас качнуть ман, так вот в этом pdf 17 страниц
Верно подмечено.
0x00000000 Boot Memory
0x00100000 Internal Flash
0x00200000 Internal SRAM
0x00300000 Internal ROM
Вычитая ОП попадает хуй пойми куда. Наверное, в этом и была тонкая подьёбка.
уссусь
т.е. ставили "типа я в теме" что ли?)
http://www.yaplakal.com/forum3/topic318893.html
на память
csrf verification error
тфьу
http://www.dependencywalker.com/
depends.exe сломался на API Sets, помню
Кстати, в x64 она не _WinMain@16. И не _WinMain@32 (как можно было бы подумать) а просто WinMain (судя по dumpbin .obj файла) бо другой калконвейншен видимо