Здравствуйте. Тоже решил освоить ARM. Есть плата AT91SAM7X-EK и скачал примеры для неё от
атмела
Пишу под Keil µVision3 V3.34.
Попробовал проект basic-dataflash-project-at91sam7x-ek для программирования м/с AT45DB642D. После компиляции вылетело
..\..\basic-dataflash-project\main.c(35
warning: #61-D: integer operation result is out of range. Анализ кода показал что эту ошибку дает запись
#define AT91C_SPI_DLYBCT (0xFF ‹‹ 24) // (SPI) Delay Between Consecutive Transfers в файле AT91SAM7X256.h . После замены на #define AT91C_SPI_DLYBCT (0xF ‹‹ 24) - ошибок нет.
Окно DEBUG на терминале выдает:
" Dataflash Project 1.5 --
-- AT91SAM7X-EK
-- Compiled: Aug 23 2010 18:39:58 --
-I- Initializing the SPI and AT45 drivers
-I- At45 enabled
-I- SPI interrupt enabled
-I- Waiting for a dataflash to be connected .." - и все...
пробовал менять в разных комбинациях
#define AT91C_SPI_CPOL (0x0 ‹‹ 0) // (SPI) Clock Polarity
#define AT91C_SPI_NCPHA (0x1 ‹‹ 1) // (SPI) Clock Phase
ничего не меняется и осцила дома нет.
Подскажите, чтоб заработал пример.
Спасибо.
P.S. примеры идут одним архивом ~ 40 М если надо и можна то выложу код здесь только для этого проекта.