외부 SRAM 을 사용 하 는 방법

전재 주소:http://blog.csdn.net/zsy2020314/article/details/9313093
     저 는 stm 32 를 사용 하고 1MB 의 외부 SRAM 을 추 가 했 습 니 다. emWin 을 사용 할 때 일부 메모 리 를 emWin 에 할당 하여 사용 합 니 다.사실 방법 은 매우 간단 합 니 다. SRAM 데이터 버스 주 소 를 입력 하면 됩 니 다. 데이터 의 위치 가 넓 고 저 는 16bit 를 사용 합 니 다. 왜냐하면 사용 하 는 SRAM 은 16bit 이기 때문에 이렇게 하 는 것 이 적당 합 니 다.ARM 9 이상 의 플랫폼 에서 사용 하면 DDRAM 의 물리 적 주 소 를 emWin 에 그대로 전달 하면 되 지만 주소 의 폭 은 보통 32 비트 이 고 크기 는 스스로 결정 합 니 다.
/*********************************************************************
*                SEGGER Microcontroller GmbH & Co. KG                *
*        Solutions for real time microcontroller applications        *
**********************************************************************
*                                                                    *
*        (c) 1996 - 2013  SEGGER Microcontroller GmbH & Co. KG       *
*                                                                    *
*        Internet: www.segger.com    Support:  [email protected]    *
*                                                                    *
**********************************************************************


** emWin V5.18 - Graphical user interface for embedded applications **
All  Intellectual Property rights  in the Software belongs to  SEGGER.
emWin is protected by  international copyright laws.  Knowledge of the
source code may not be used to write a similar product.  This file may
only be used in accordance with the following terms:


The software has been licensed to  NXP Semiconductors USA, Inc.  whose
registered  office  is  situated  at 411 E. Plumeria Drive, San  Jose,
CA 95134, USA  solely for  the  purposes  of  creating  libraries  for
NXPs M0, M3/M4 and  ARM7/9 processor-based  devices,  sublicensed  and
distributed under the terms and conditions of the NXP End User License
Agreement.
Full source code is available at: www.segger.com


We appreciate your understanding and fairness.
----------------------------------------------------------------------
File        : GUIConf.c
Purpose     : Display controller initialization
---------------------------END-OF-HEADER------------------------------
*/


#include "GUI.h"
#include "SRAM_Driver.h"
/*********************************************************************
*
*       Defines
*
**********************************************************************
*/
//
// Define the available number of bytes available for the GUI
//
#define Bank1_SRAM3_ADDR    ((u32)0x68000000)
#define GUI_NUMBYTES  (1024*700)
//
// Define the average block size
//
#define GUI_BLOCKSIZE 0x80


/*********************************************************************
*
*       Public code
*
**********************************************************************
*/
/*********************************************************************
*
*       GUI_X_Config
*
* Purpose:
*   Called during the initialization process in order to set up the
*   available memory for the GUI.
*/
void GUI_X_Config(void) {
  //
  // 16 bit aligned memory area
  //
   volatile U16* aMemory = (volatile U16*)(Bank1_SRAM3_ADDR);
  //
  // Assign memory to emWin
  //
  GUI_ALLOC_AssignMemory((void*)aMemory, GUI_NUMBYTES);
  GUI_ALLOC_SetAvBlockSize(GUI_BLOCKSIZE);
  //
  // Set default font
  //
  GUI_SetDefaultFont(GUI_FONT_6X8);
}


/*************************** End of file ****************************/

좋은 웹페이지 즐겨찾기