RP2040 PSRAM 项目使用教程
1. 项目的目录结构及介绍
rp2040-psram/
├── examples/
│ └── psram_test.c
├── include/
│ └── psram_spi.h
├── CMakeLists.txt
├── LICENSE
├── README.md
└── src/
└── psram_spi.c
- examples/: 包含示例代码,例如
psram_test.c
,用于测试 PSRAM 的读写功能。 - include/: 包含头文件
psram_spi.h
,定义了访问 PSRAM 的接口。 - CMakeLists.txt: CMake 配置文件,用于构建项目。
- LICENSE: 项目许可证文件,本项目使用 MIT 许可证。
- README.md: 项目说明文档。
- src/: 包含源文件
psram_spi.c
,实现了 PSRAM 访问的具体逻辑。
2. 项目的启动文件介绍
项目的启动文件主要是 examples/psram_test.c
,该文件演示了如何初始化 PSRAM 并进行读写操作。以下是启动文件的关键部分:
#include "psram_spi.h"
int main() {
// 初始化 PSRAM
psram_init();
// 写入数据
uint8_t data_to_write = 0xAA;
psram_write_byte(0x00, data_to_write);
// 读取数据
uint8_t data_read = psram_read_byte(0x00);
// 验证数据
if (data_read == data_to_write) {
printf("PSRAM test passed!\n");
} else {
printf("PSRAM test failed!\n");
}
return 0;
}
3. 项目的配置文件介绍
项目的配置文件主要是 CMakeLists.txt
,该文件定义了项目的构建规则。以下是配置文件的关键部分:
cmake_minimum_required(VERSION 3.12)
project(rp2040-psram)
# 添加子目录
add_subdirectory(${CMAKE_CURRENT_LIST_DIR}/src rp2040-psram)
# 链接库
target_link_libraries(rp2040-psram psram_spi)
在 include/psram_spi.h
中,定义了一些必须和可选的宏:
#define PSRAM_PIN_CS 0 // GPIO 芯片选择引脚
#define PSRAM_PIN_SCK 1 // GPIO 时钟引脚
#define PSRAM_PIN_MOSI 2 // GPIO MOSI 引脚
#define PSRAM_PIN_MISO 3 // GPIO MISO 引脚
// 可选定义
#define PSRAM_MUTEX 1 // 如果 PSRAM 被多个核心使用,需要定义此宏
这些宏用于配置 PSRAM 的硬件连接和访问控制。