📄 flash0_test.c
字号:
/*! * \file flash0_test.c * \brief Test the AT49BV040A/AM29LV040 on Jamaica * \version $Revision: 1.2 $ * \author Michael Norman * * Test the 512K (1 x 8bit) flash on Jamaica known as "Flash0" */ #include "common.h"#include "amd_flash.h"#include "jamaica_tests.h"/*! Test data */static uint8 data[] = { 0x01, 0x02, 0x04, 0x08, 0x10, 0x20, 0x40, 0x80, 0xAA, 0x55, 0x33, 0xCC, 0x66, 0x99, 0xFF, 0x00 }; /********************************************************************//*! * \brief Flash0 Test * \return FLASH0_PASS or FLASH0_FAIL */intflash0_test(void){ int result, i; amd_flash_init(FLASH0_ADDRESS); /* Erase and program data in sector 2 */ result = amd_flash_program((ADDRESS)(FLASH0_ADDRESS + 0x006000), (ADDRESS)data, sizeof(data), YES, NULL, NULL); if (result != sizeof(data)) return FLASH0_FAIL; for (i = 0; i < sizeof(data); i++) { if (*(uint8*)(FLASH0_ADDRESS + 0x006000 + i) != data[i]) return FLASH0_FAIL; } amd_flash_erase((ADDRESS)(FLASH0_ADDRESS + 0x006000), 1, NULL); /* Erase and program data in sector 7 */ result = amd_flash_program((ADDRESS)(FLASH0_ADDRESS + 0x040000), (ADDRESS)data, sizeof(data), YES, NULL, NULL); if (result != sizeof(data)) return FLASH0_FAIL; for (i = 0; i < sizeof(data); i++) { if (*(uint8*)(FLASH0_ADDRESS + 0x040000 + i) != data[i]) return FLASH0_FAIL; } amd_flash_erase((ADDRESS)(FLASH0_ADDRESS + 0x040000), 1, NULL); /* Erase and program data in sector 10 */ result = amd_flash_program((ADDRESS)(FLASH0_ADDRESS + 0x070000), (ADDRESS)data, sizeof(data), YES, NULL, NULL); if (result != sizeof(data)) return FLASH0_FAIL; for (i = 0; i < sizeof(data); i++) { if (*(uint8*)(FLASH0_ADDRESS + 0x070000 + i) != data[i]) return FLASH0_FAIL; } amd_flash_erase((ADDRESS)(FLASH0_ADDRESS + 0x070000), 1, NULL); return FLASH0_PASS;}/********************************************************************/
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -