jim hamblen
/
moreSRAM_LPC1768
Demo using extra 16K SRAM banks on LPC1768 for C object storage
Embed:
(wiki syntax)
Show/hide line numbers
main.cpp
00001 //Demo using additional SRAM Banks on LPC1768 00002 #include "mbed.h" 00003 Serial pc(USBTX,USBRX); 00004 DigitalOut myled(LED1); 00005 int i=0; 00006 int buffer_SRAM[3000]; //regular SRAM use by compiler 00007 int buffer_SRAM_Bank0[4000] __attribute__((section("AHBSRAM0"))); //put in extra 16K bank 00008 int buffer_SRAM_Bank1[4000] __attribute__((section("AHBSRAM1"))); //put in other extra 16K bank 00009 int main() 00010 { 00011 pc.printf("Hello Extra SRAM\n\r"); 00012 pc.printf("size of int %d bytes\n\r",sizeof(buffer_SRAM[0])); 00013 pc.printf("address of buffer_SRAM %x\n\r",buffer_SRAM); 00014 pc.printf("address of buffer_SRAM_Bank0 %x\n\r",buffer_SRAM_Bank0); 00015 pc.printf("address of buffer_SRAM_Bank1 %x\n\r",buffer_SRAM_Bank1); 00016 wait(5); 00017 while(1) { 00018 myled = 1; 00019 for(i=0; i<4000; i++) { 00020 buffer_SRAM_Bank0[i]=i; 00021 } 00022 for(i=0; i<4000; i++) { 00023 buffer_SRAM_Bank1[i]= -i; 00024 } 00025 for(i=0; i<3000; i++) { 00026 buffer_SRAM[i]= 0; 00027 } 00028 myled=0; 00029 for (i=0; i<4000; i++) { 00030 pc.printf("%d\n\r",buffer_SRAM_Bank0[i]); 00031 } 00032 for (i=0; i<4000; i++) { 00033 pc.printf("%d\n\r",buffer_SRAM_Bank1[i]); 00034 } 00035 for (i=0; i<3000; i++) { 00036 pc.printf("%d\n\r",buffer_SRAM[i]); 00037 } 00038 myled = 1; 00039 } 00040 }
Generated on Fri Sep 23 2022 14:11:00 by 1.7.2