A34 STM32_HAL库函数 之 PCCARD通用驱动 所有函数的介绍及使用

A34 STM32_HAL库函数 之 PCCARD通用驱动 所有函数的介绍及使用

  • [1 该驱动函数预览](#1 该驱动函数预览)
      • [1.1 HAL_PCCARD_Init](#1.1 HAL_PCCARD_Init)
      • [1.2 HAL_PCCARD_DeInit](#1.2 HAL_PCCARD_DeInit)
      • [1.3 HAL_PCCARD_MspInit](#1.3 HAL_PCCARD_MspInit)
      • [1.4 HAL_PCCARD_MspDeInit](#1.4 HAL_PCCARD_MspDeInit)
      • [1.5 HAL_PCCARD_Read_ID](#1.5 HAL_PCCARD_Read_ID)
      • [1.6 HAL_PCCARD_Read_Sector](#1.6 HAL_PCCARD_Read_Sector)
      • [1.7 HAL_PCCARD_Write_Sector](#1.7 HAL_PCCARD_Write_Sector)
      • [1.8 HAL_PCCARD_Erase_Sector](#1.8 HAL_PCCARD_Erase_Sector)
      • [1.9 HAL_PCCARD_Reset](#1.9 HAL_PCCARD_Reset)
      • [1.10 HAL_PCCARD_IRQHandler](#1.10 HAL_PCCARD_IRQHandler)
      • [1.11 HAL_PCCARD_ITCallback](#1.11 HAL_PCCARD_ITCallback)
      • [1.12 HAL_PCCARD_GetState](#1.12 HAL_PCCARD_GetState)
      • [1.13 HAL_PCCARD_GetStatus](#1.13 HAL_PCCARD_GetStatus)
      • [1.14 HAL_PCCARD_ReadStatus](#1.14 HAL_PCCARD_ReadStatus)
  • 该文档修改记录:
  • 总结

1 该驱动函数预览

序号 函数名 描述
1 HAL_PCCARD_Init() 初始化PCCARD接口。
2 HAL_PCCARD_DeInit() 反初始化PCCARD接口。
3 HAL_PCCARD_MspInit() 初始化MCU外设相关的PCCARD引脚或资源。
4 HAL_PCCARD_MspDeInit() 反初始化MCU外设相关的PCCARD引脚或资源。
5 HAL_PCCARD_Read_ID() 读取PCCARD设备的ID。
6 HAL_PCCARD_Read_Sector() 从PCCARD设备中读取扇区数据。
7 HAL_PCCARD_Write_Sector() 向PCCARD设备中写入扇区数据。
8 HAL_PCCARD_Erase_Sector() 擦除PCCARD设备的扇区。
9 HAL_PCCARD_Reset() 复位PCCARD设备。
10 HAL_PCCARD_IRQHandler() PCCARD中断处理程序。
11 HAL_PCCARD_ITCallback() PCCARD中断回调函数。
12 HAL_PCCARD_GetState() 获取PCCARD设备的状态。
13 HAL_PCCARD_GetStatus() 获取PCCARD设备的状态寄存器的值。
14 HAL_PCCARD_ReadStatus() 读取PCCARD设备的状态。

以下是使用模板:

c 复制代码
#include "stm32f4xx_hal.h"

int main(void) {
    // HAL初始化
    HAL_Init();
    
    // 初始化MCU外设相关的PCCARD引脚或资源
    HAL_PCCARD_MspInit();
    
    // 初始化PCCARD接口
    HAL_PCCARD_Init();
    
    // 进行其他操作...
    
    // 读取PCCARD设备的ID
    HAL_PCCARD_Read_ID();
    
    // 读取PCCARD设备的状态
    HAL_PCCARD_GetStatus();
    
    // 反初始化PCCARD接口
    HAL_PCCARD_DeInit();
    
    // 反初始化MCU外设相关的PCCARD引脚或资源
    HAL_PCCARD_MspDeInit();
    
    return 0;
}

1.1 HAL_PCCARD_Init

函数名 HAL_PCCARD_Init
函数原形 HAL_StatusTypeDef HAL_PCCARD_Init(PCCARD_HandleTypeDef *hpccard)
功能描述 初始化 PCCARD 接口
输入参数 hpccard:PCCARD 句柄,指向一个 PCCARD_HandleTypeDef 结构体
输出参数
返回值 HAL_StatusTypeDef:操作状态,可以是 HAL_OK 或 HAL_ERROR
先决条件
被调用函数

1.2 HAL_PCCARD_DeInit

函数名 HAL_PCCARD_DeInit
函数原形 HAL_StatusTypeDef HAL_PCCARD_DeInit(PCCARD_HandleTypeDef *hpccard)
功能描述 反初始化 PCCARD 接口
输入参数 hpccard:PCCARD 句柄,指向一个 PCCARD_HandleTypeDef 结构体
输出参数
返回值 HAL_StatusTypeDef:操作状态,可以是 HAL_OK 或 HAL_ERROR
先决条件
被调用函数

1.3 HAL_PCCARD_MspInit

函数名 HAL_PCCARD_MspInit
函数原形 void HAL_PCCARD_MspInit(PCCARD_HandleTypeDef *hpccard)
功能描述 初始化 PCCARD 接口时的低层硬件资源
输入参数 hpccard:PCCARD 句柄,指向一个 PCCARD_HandleTypeDef 结构体
输出参数
返回值
先决条件
被调用函数

1.4 HAL_PCCARD_MspDeInit

函数名 HAL_PCCARD_MspDeInit
函数原形 void HAL_PCCARD_MspDeInit(PCCARD_HandleTypeDef *hpccard)
功能描述 反初始化 PCCARD 接口时的低层硬件资源
输入参数 hpccard:PCCARD 句柄,指向一个 PCCARD_HandleTypeDef 结构体
输出参数
返回值
先决条件
被调用函数

1.5 HAL_PCCARD_Read_ID

函数名 HAL_PCCARD_Read_ID
函数原形 HAL_StatusTypeDef HAL_PCCARD_Read_ID(PCCARD_HandleTypeDef *hpccard, PCCARD_IDTypeDef *pCID)
功能描述 读取 PCCARD 设备的 ID
输入参数 1 hpccard:PCCARD 句柄,指向一个 PCCARD_HandleTypeDef 结构体
输入参数 2 pCID:存储读取到的 PCCARD ID 的结构体
输出参数 pCID:存储读取到的 PCCARD ID 的结构体
返回值 HAL_StatusTypeDef:操作状态,可以是 HAL_OK 或 HAL_ERROR
先决条件
被调用函数

1.6 HAL_PCCARD_Read_Sector

函数名 HAL_PCCARD_Read_Sector
函数原形 HAL_StatusTypeDef HAL_PCCARD_Read_Sector(PCCARD_HandleTypeDef *hpccard, uint8_t *pBuffer, uint32_t Sector, uint32_t NumSectors)
功能描述 从 PCCARD 设备读取扇区数据
输入参数 1 hpccard:PCCARD 句柄,指向一个 PCCARD_HandleTypeDef 结构体
输入参数 2 pBuffer:存储读取数据的缓冲区
输入参数 3 Sector:起始扇区号
输入参数 4 NumSectors:要读取的扇区数量
输出参数 pBuffer:存储读取数据的缓冲区
返回值 HAL_StatusTypeDef:操作状态,可以是 HAL_OK 或 HAL_ERROR
先决条件
被调用函数

1.7 HAL_PCCARD_Write_Sector

函数名 HAL_PCCARD_Write_Sector
函数原形 HAL_StatusTypeDef HAL_PCCARD_Write_Sector(PCCARD_HandleTypeDef *hpccard, uint8_t *pBuffer, uint32_t Sector, uint32_t NumSectors)
功能描述 向 PCCARD 设备写入扇区数据
输入参数 1 hpccard:PCCARD 句柄,指向一个 PCCARD_HandleTypeDef 结构体
输入参数 2 pBuffer:要写入的数据缓冲区
输入参数 3 Sector:起始扇区号
输入参数 4 NumSectors:要写入的扇区数量
输出参数
返回值 HAL_StatusTypeDef:操作状态,可以是 HAL_OK 或 HAL_ERROR
先决条件

| 无 |

| 被调用函数 | 无 |


1.8 HAL_PCCARD_Erase_Sector

函数名 HAL_PCCARD_Erase_Sector
函数原形 HAL_StatusTypeDef HAL_PCCARD_Erase_Sector(PCCARD_HandleTypeDef *hpccard, uint32_t Sector)
功能描述 擦除 PCCARD 设备的指定扇区
输入参数 1 hpccard:PCCARD 句柄,指向一个 PCCARD_HandleTypeDef 结构体
输入参数 2 Sector:要擦除的扇区号
输出参数
返回值 HAL_StatusTypeDef:操作状态,可以是 HAL_OK 或 HAL_ERROR
先决条件
被调用函数

1.9 HAL_PCCARD_Reset

函数名 HAL_PCCARD_Reset
函数原形 HAL_StatusTypeDef HAL_PCCARD_Reset(PCCARD_HandleTypeDef *hpccard)
功能描述 重置 PCCARD 设备
输入参数 hpccard:PCCARD 句柄,指向一个 PCCARD_HandleTypeDef 结构体
输出参数
返回值 HAL_StatusTypeDef:操作状态,可以是 HAL_OK 或 HAL_ERROR
先决条件
被调用函数

1.10 HAL_PCCARD_IRQHandler

函数名 HAL_PCCARD_IRQHandler
函数原形 void HAL_PCCARD_IRQHandler(PCCARD_HandleTypeDef *hpccard)
功能描述 处理 PCCARD 中断
输入参数 hpccard:PCCARD 句柄,指向一个 PCCARD_HandleTypeDef 结构体
输出参数
返回值
先决条件
被调用函数

1.11 HAL_PCCARD_ITCallback

函数名 HAL_PCCARD_ITCallback
函数原形 void HAL_PCCARD_ITCallback(PCCARD_HandleTypeDef *hpccard)
功能描述 PCCARD 中断回调函数
输入参数 hpccard:PCCARD 句柄,指向一个 PCCARD_HandleTypeDef 结构体
输出参数
返回值
先决条件
被调用函数

1.12 HAL_PCCARD_GetState

函数名 HAL_PCCARD_GetState
函数原形 HAL_PCCARD_StateTypeDef HAL_PCCARD_GetState(PCCARD_HandleTypeDef *hpccard)
功能描述 获取 PCCARD 设备的当前状态
输入参数 hpccard:PCCARD 句柄,指向一个 PCCARD_HandleTypeDef 结构体
输出参数
返回值 HAL_PCCARD_StateTypeDef:PCCARD 设备的状态
先决条件
被调用函数

1.13 HAL_PCCARD_GetStatus

函数名 HAL_PCCARD_GetStatus
函数原形 uint32_t HAL_PCCARD_GetStatus(PCCARD_HandleTypeDef *hpccard)
功能描述 获取 PCCARD 设备的状态寄存器值
输入参数 hpccard:PCCARD 句柄,指向一个 PCCARD_HandleTypeDef 结构体
输出参数
返回值 uint32_t:PCCARD 设备的状态寄存器值
先决条件
被调用函数

1.14 HAL_PCCARD_ReadStatus

函数名 HAL_PCCARD_ReadStatus
函数原形 uint32_t HAL_PCCARD_ReadStatus(PCCARD_HandleTypeDef *hpccard, uint32_t Address)
功能描述 从 PCCARD 设备的指定地址读取状态寄存器值
输入参数 1 hpccard:PCCARD 句柄,指向一个 PCCARD_HandleTypeDef 结构体
输入参数 2 Address:要读取的状态寄存器地址
输出参数
返回值 uint32_t:指定地址的状态寄存器值
先决条件
被调用函数

该文档修改记录:

修改时间 修改说明
2024年4月30日 第一次发布,介绍了该博客驱动所有函数的介绍及使用

总结

以上就是该博客驱动所有函数的介绍及使用的内容。
有不明白的地方欢迎留言;有建议欢迎留言,我后面编写文档好改进。
创作不容,如果文档对您有帮助,记得给个赞。

相关推荐
2301_822782827 分钟前
C语言利用EasyX实现图形化界面的小游戏
c语言·单片机·图形化界面·lcd菜单·接口实现
Heartache boy20 分钟前
野火STM32_HAL库版课程笔记-TIM触发ADC采集
笔记·stm32·单片机·嵌入式硬件
你疯了抱抱我21 分钟前
【Altium Designer】网络线(颜色、旋转、粗细);网络标签 && 端口的差别(重点!)
嵌入式硬件·嵌入式·pcb·电路
蓝凌y33 分钟前
51单片机之按键控制RGB灯
单片机·嵌入式硬件
156082072191 小时前
关于XILINX的fir compiler小数倍内插设计
单片机·嵌入式硬件
ivy159868377155 小时前
芯锦科技 HP9116 QC3+多协议USB快充接口芯片
网络·单片机·嵌入式硬件·5g·p2p
FreakStudio10 小时前
ESP32居然能当 DNS 服务器用?内含NCSI欺骗和DNS劫持实现
python·单片机·嵌入式·面向对象·并行计算·电子diy
LXY_BUAA10 小时前
《嵌入式操作系统》_使用GPIOLIB编写驱动_添加驱动到内核中_20260328
驱动开发·嵌入式硬件
啊哈的哲学路途12 小时前
家里签了100M网络、1000M网络的下载速度应该是多少。
stm32
liwulin050614 小时前
【ESP32-S3】通过ROS2使用YDLIDAR X2进行SLAM、自主导航方案选择
单片机·嵌入式硬件