K Standalone SDK 编程指南 KENDRYTE 勘智 嘉楠科技版权 2019 KENDRYTE.COM

Size: px
Start display at page:

Download "K Standalone SDK 编程指南 KENDRYTE 勘智 嘉楠科技版权 2019 KENDRYTE.COM"

Transcription

1 K Standalone SDK 编程指南 KENDRYTE 勘智 嘉楠科技版权 2019 KENDRYTE.COM

2 i 关于本手册 本文档为用户提供基于 Kendryte K210 Standalone SDK 开发时的编程指南. 对应 SDK 版本 Kendryte Standalone SDK v0.5.6 (9410af7ca bce9523dd2dab56ad2b8c243) 发布说明 日期 版本 发布说明 V0.1.0 初始版本 V0.2.0 发布对应 Standalone SDK v0.4.0 的文档 V0.3.0 发布对应 Standalone SDK v0.5.1 的文档 V0.4.0 发布对应 Standalone SDK v0.5.3 的文档 V0.5.0 发布对应 Standalone SDK v0.5.6 的文档 免责声明 本文中的信息, 包括参考的 URL 地址, 如有变更, 恕不另行通知 文档 按现状 提供, 不负任何担保责任, 包括对适销性 适用于特定用途或非侵权性的任何担保, 和任何提案 规格或样品在他处提到的任何担保 本文档不负任何责任, 包括使用本文档内信息产生的侵犯任何专利权行为的责任 本文档在此未以禁止反言或其他方式授予任何知识产权使用许可, 不管是明示许可还是暗示许可 文中提到的所有商标名称 商标和注册商标均属其各自所有者的财产, 特此声明 版权公告 版权归 2019 嘉楠科技所有 保留所有权利

3 ii 目录 关于本手册对应 SDK 版本 发布说明 免责声明 版权公告 i i i i i 第 1 章 神经网络处理器 (KPU) 概述 功能描述 API 参考 数据类型 第 2 章 麦克风阵列处理器 (APU) 概述 功能描述 API 参考 数据类型 第 3 章 高级加密加速器 (AES) 功能描述 API 参考 数据类型 第 4 章 中断 PLIC 概述 功能描述

4 目录 iii 4.3 API 参考 数据类型 第 5 章 通用输入 / 输出 (GPIO) 概述 功能描述 API 参考 数据类型 第 6 章 通用高速输入 / 输出 (GPIOHS) 概述 功能描述 API 参考 数据类型 第 7 章 现场可编程 IO 阵列 (FPIOA) 概述 功能描述 API 参考 数据类型 第 8 章 数字摄像头接口 (DVP) 概述 功能描述 API 参考 数据类型 第 9 章 快速傅里叶变换加速器 (FFT) 概述 功能描述 API 参考 数据类型 第 10 章 安全散列算法加速器 (SHA256) 功能描述 API 参考 例程 第 11 章 通用异步收发传输器 (UART) 124

5 目录 iv 11.1 概述 功能描述 API 参考 数据类型 第 12 章 高速通用异步收发传输器 (UARTHS) 概述 功能描述 API 参考 数据类型 第 13 章 看门狗定时器 (WDT) 概述 功能描述 API 参考 数据类型 第 14 章 直接内存存取控制器 (DMAC) 概述 功能描述 API 参考 数据类型 第 15 章 集成电路内置总线 (I²C) 概述 功能描述 API 参考 数据类型 第 16 章 串行外设接口 (SPI) 概述 功能描述 API 参考 数据类型 第 17 章 集成电路内置音频总线 (I2S) 概述 功能描述 API 参考

6 目录 v 17.4 数据类型 第 18 章 定时器 (TIMER) 概述 功能描述 API 参考 数据类型 第 19 章 实时时钟 (RTC) 概述 功能描述 API 参考 第 20 章 脉冲宽度调制器 (PWM) 概述 功能描述 API 参考 数据类型 第 21 章 系统控制 概述 功能描述 API 参考 数据类型 第 22 章 平台相关 (BSP) 概述 功能描述 API 参考 数据类型

7 1 第 1 章 神经网络处理器 (KPU) 1.1 概述 KPU 是通用的神经网络处理器, 它可以在低功耗的情况下实现卷积神经网络计算, 实时获取被检测目 标的大小 坐标和种类, 对人脸或者物体进行检测和分类 使用 kpu 时, 必须结合 model compiler 1.2 功能描述 KPU 具备以下几个特点 : 支持主流训练框架按照特定限制规则训练出来的定点化模型 对网络层数无直接限制, 支持每层卷积神经网络参数单独配置, 包括输入输出通道数目 输入输出行宽列高 支持两种卷积内核 1x1 和 3x3 支持任意形式的激活函数 实时工作时最大支持神经网络参数大小为 5.5MiB 到 5.9MiB 非实时工作时最大支持网络参数大小为 (Flash 容量 - 软件体积 ) 1.3 API 参考 对应的头文件 kpu.h 为用户提供以下接口 kpu_task_init (0.6.0 以后不再支持, 请使用 kpu_single_task_init) kpu_run (0.6.0 以后不再支持, 请使用 kpu_start) kpu_get_output_buf (0.6.0 以后不再支持 )

8 第 1 章神经网络处理器 (KPU) 2 kpu_release_output_buf (0.6.0 以后不再支持 ) kpu_start kpu_single_task_init kpu_single_task_deinit kpu_model_load_from_buffer kpu_load_kmodel kpu_model_free kpu_get_output kpu_run_kmodel kpu_task_init 描述 初始化 kpu 任务句柄, 该函数具体实现在 model compiler 生成的 gencode_output.c 中 函数定义 kpu_task_t kpu_task_init ( kpu_task_t task ) 参数 参数名称描述输入输出 task KPU 任务句柄输入 返回值 KPU 任务句柄 kpu_run 描述 启动 KPU, 进行 AI 运算 函数原型 int kpu_run ( kpu_task_t v_task, dmac_channel_number_t dma_ch, const void src, void dest, plic_irq_callback_t callback )

9 第 1 章神经网络处理器 (KPU) 参数 参数名称 描述 输入输出 task KPU 任务句柄 输入 dma_ch DMA 通道 输入 src 输入图像数据 输入 dest 运算输出结果 输出 callback 运算完成回调函数 输入 返回值 返回值 描述 0 成功 非 0 KPU 忙, 失败 kpu_get_output_buf 描述 获取 KPU 输出结果的缓存 函数原型 uint8_t kpu_get_output_buf ( kpu_task_t task ) 参数 参数名称描述输入输出 task KPU 任务句柄输入 返回值 KPU 输出结果的缓存的指针

10 第 1 章神经网络处理器 (KPU) kpu_release_output_buf 描述 释放 KPU 输出结果缓存 函数原型 void kpu_release_output_buf ( uint8_t output_buf ) 参数 参数名称描述输入输出 output_buf KPU 输出结果缓存输入 返回值 无 kpu_start 描述 启动 KPU, 进行 AI 运算 函数原型 int kpu_start ( kpu_task_t task ) 参数 参数名称描述输入输出 task KPU 任务句柄输入 返回值 返回值 描述 0 成功

11 第 1 章神经网络处理器 (KPU) 5 返回值 非 0 描述 KPU 忙, 失败 kpu_single_task_init 描述 初始化 kpu 任务句柄 函数原型 int kpu_single_task_init ( kpu_task_t task ) 参数 参数名称描述输入输出 task KPU 任务句柄输入 返回值 返回值 描述 0 成功 非 0 失败 kpu_single_task_deinit 描述 注销 kpu 任务 函数原型 int kpu_single_task_deinit ( kpu_task_t task ) 参数

12 第 1 章神经网络处理器 (KPU) 6 参数名称描述输入输出 task KPU 任务句柄输入 返回值 返回值 描述 0 成功 非 0 失败 kpu_model_load_from_buffer 描述 解析 kmodel 并初始化 kpu 句柄 函数原型 int kpu_model_load_from_buffer ( kpu_task_t task, uint8_t buffer, kpu_model_layer_metadata_t meta ); 参数 参数名称 描述 输入输出 task KPU 任务句柄 输入 buffer kmodel 数据 输入 meta 内部测试数据, 用户设置为 NULL 输出 返回值 返回值 描述 0 成功 非 0 失败

13 第 1 章 神经网络处理器 (KPU) kpu_load_kmodel 描述 加载 kmodel, 需要与 nncase 配合使用 函数原型 int kpu_load_kmodel ( kpu_model_context_t ctx, const uint8_t buffer ) 参数 参数名称描述输入输出 ctx KPU 任务句柄输入 buffer kmodel 数据输入 返回值 返回值 描述 0 成功 非 0 失败 kpu_model_free 描述 释放 kpu 资源 函数原型 void kpu_model_free ( kpu_model_context_t ctx ) 参数 参数名称描述输入输出 ctx KPU 任务句柄输入

14 第 1 章神经网络处理器 (KPU) 返回值 kpu_get_output 描述 获取 KPU 最终处理的结果 函数原型 int kpu_get_output ( kpu_model_context_t ctx, uint32_t index, uint8_t data, size_t size ) 参数 参数名称 描述 输入输出 ctx KPU 任务句柄 输入 index 结果的索引值, 如 kmodel 有关 输入 data 结果 输入 size 大小 ( 字节 ) 输入 返回值 返回值 描述 0 成功 非 0 失败 kpu_run_kmodel 描述 运行 kmodel 函数原型 int kpu_run_kmodel ( kpu_model_context_t ctx, const uint8_t src, dmac_channel_number_t dma_ch, kpu_done_callback_t done_callback, void userdata )

15 第 1 章神经网络处理器 (KPU) 参数 参数名称 描述 输入输出 ctx KPU 任务句柄 输入 src 源数据 输入 dma_ch DMA 通道 输入 done_callback 完成后回调函数 输入 userdata 回调的参数 输入 返回值 返回值 描述 0 成功 非 0 失败 举例 / 通过 MC 生成 kpu_task_gencode_output_init, 设置源数据为 g _ a i _ b u f, 使用 D M A 5,kpu 完成后调 用 ai_done 函数 / kpu_task_t task ; volatile uint8_t g_ai_done_flag ; static int ai_done ( void ctx) { g_ai_done_flag = 1; return 0; } / 初始化 kpu / kpu_task_gencode_output_init (& task ); / MC 生成的函数 / task. src = g_ai_buf ; task. dma_ch = 5; task. callback = ai_done ; kpu_single_task_init (& task ); / 启动 kpu / kpu_start (& task ); 1.4 数据类型 相关数据类型 数据结构定义如下 :

16 第 1 章神经网络处理器 (KPU) 10 kpu_task_t:kpu 任务结构体 kpu_task_t 描述 kpu 任务结构体 定义 typedef struct { kpu_layer_argument_t layers ; kpu_layer_argument_t remain_layers ; plic_irq_callback_t callback ; void ctx; uint64_t src; uint64_t dst; uint32_t src_length ; uint32_t dst_length ; uint32_t layers_length ; uint32_t remain_layers_length ; dmac_channel_number_t dma_ch ; uint32_t eight_bit_mode ; float output_scale ; float output_bias ; float input_scale ; float input_bias ; } kpu_task_t ; 成员 成员名称 描述 layers KPU 参数指针 (MC 初始化, 用户不必关心 ) remain_layers KPU 参数指针 ( 运算过程中使用, 用户不必关心 ) callback 运算完成回调函数 ( 需要用户设置 ) ctx 回调函数的参数 ( 非空需要用户设置 ) src 运算源数据 ( 需要用户设置 ) dst 运算结果输出指针 (KPU 初始化赋值, 用户不必关心 ) src_length 源数据长度 (MC 初始化, 用户不必关心 ) dst_length 运算结果长度 (MC 初始化, 用户不必关心 ) layers_length 层数 (MC 初始化, 用户不必关心 ) remain_layers_length 剩余层数 ( 运算过程中使用, 用户不必关心 )

17 第 1 章神经网络处理器 (KPU) 11 成员名称 描述 dma_ch 使用的 DMA 通道号 ( 需要用户设置 ) eight_bit_mode 是否是 8 比特模式 (MC 初始化, 用户不必关心 ) output_scale 输出 scale 值 (MC 初始化, 用户不必关心 ) output_bias 输出 bias 值 (MC 初始化, 用户不必关心 ) input_scale 输入 scale 值 (MC 初始化, 用户不必关心 ) input_bias 输入 bias 值 (MC 初始化, 用户不必关心 )

18 12 第 2 章 麦克风阵列处理器 (APU) 2.1 概述 APU 麦克风阵列语音数据加速计算处理器, 能够实时计算不同方向的语音延时累加值, 通过这个值来 判断语音方向, 以及选取某一方向的增强语音数据 2.2 功能描述 APU 具备以下几个特点 : 支持最多八个麦克风的数据 可以实时计算 16 个方向的语音延时累加值 支持选定方向的增强语音输出 2.3 API 参考 对应的头文件 apu.h 为用户提供以下接口 audio_bf_dir_set_prev_fir audio_bf_dir_set_post_fir audio_bf_voc_set_prev_fir audio_bf_voc_set_post_fir audio_bf_set_delay audio_bf_voc_set_direction audio_bf_set_channel_enabled

19 第 2 章麦克风阵列处理器 (APU) 13 audio_bf_dir_enable audio_bf_voc_enable audio_bf_dir_set_prev_fir 描述 在计算各个方向的延时累加值之前的 fir 滤波系数 函数定义 void audio_bf_dir_set_prev_fir ( uint16_t fir_coef ) 参数 参数名称描述输入输出 fir_coef 17 位滤波系数指针输入 返回值 audio_bf_dir_set_post_fir 描述 在计算各个方向的延时累加值之后的 fir 滤波系数 函数原型 void audio_bf_dir_set_post_fir ( uint16_t fir_coef ) 参数 参数名称描述输入输出 fir_coef 17 位滤波系数指针输入

20 第 2 章麦克风阵列处理器 (APU) 返回值 audio_bf_voc_set_prev_fir 描述 在计算选定方向的延时累加值之前的 fir 滤波系数 函数原型 void audio_bf_voc_set_prev_fir ( uint16_t fir_coef ) 参数 参数名称描述输入输出 fir_coef 17 位滤波系数指针输入 返回值 audio_bf_voc_set_post_fir 描述 在计算选定方向的延时累加值之后的 fir 滤波系数 函数原型 void audio_bf_voc_set_post_fir ( uint16_t fir_coef ) 参数 参数名称描述输入输出 fir_coef 17 位滤波系数指针输入 返回值

21 第 2 章麦克风阵列处理器 (APU) audio_bf_set_delay 描述 初始化圆形麦克风阵列板子上麦克风之间的声波延时参数 函数原型 void audio_bf_set_delay ( float R, uint8_t mic_num_a_circle, uint8_t center, float I2s_fs ) 参数 参数名称 描述 输入输出 R 麦克风围成的圆半径 输入 micnuma_circle 在圆周上的麦克风个数 输入 center 圆心点上是否有麦克风 输入 I2s_fs 麦克风采样率 输入 返回值 audio_bf_voc_set_direction 描述 选择语音增强的方向 函数原型 void audio_bf_voc_set_direction ( enum en_bf_dir direction ) 参数 参数名称描述输入输出 direction 选择语音增强的方向, 取 0~15 输入

22 第 2 章麦克风阵列处理器 (APU) 返回值 audio_bf_set_channel_enabled 描述 选择使用的麦克风通道,I2S 可用 4 路, 每路有左右声道, 共 8 个通道, 相应位为 1, 则选择使用这 个通道 函数原型 void audio_bf_set_channel_enabled ( uint8_t channel_bit ) 参数 参数名称描述输入输出 channel_bit 相应位为 1, 则选择使用这个通道 输入 返回值 audio_bf_dir_enable 描述 使能各个方向的延时累加计算 函数原型 void audio_bf_dir_enable ( void ) 参数 返回值

23 第 2 章麦克风阵列处理器 (APU) audio_bf_voc_enable 描述 使能选定方向的延时累加计算 函数原型 void audio_bf_voc_enable ( uint8_t enable_flag ) 参数 返回值 举例 uint16_t fir_prev_t [17] = { 0x8000, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, }; audio_bf_dir_set_prev_fir ( fir_prev_t ); audio_bf_dir_set_post_fir ( fir_post_t ); audio_bf_voc_set_prev_fir ( fir_prev_t ); audio_bf_voc_set_post_fir ( fir_post_t ); audio_bf_set_delay (3, 7, 1, 44100); audio_bf_voc_set_direction (0); audio_bf_set_channel_enabled (0 xff ); audio_bf_dir_enable (); audio_bf_voc_enable (1); 2.4 数据类型 相关数据类型 数据结构定义如下 : apu_reg_t:apu 任务结构体

24 第 2 章麦克风阵列处理器 (APU) apu_reg_t 描述 kpu 任务结构体 定义 typedef struct _apu_reg { //0 x200 apu_ch_cfg_t bf_ch_cfg_reg ; //0 x204 apu_ctl_t bf_ctl_reg ; //0 x208 apu_dir_bidx_t bf_dir_bidx [16][2]; //0 x288 apu_fir_coef_t bf_pre_fir0_coef [9]; //0 x2ac apu_fir_coef_t bf_post_fir0_coef [9]; //0 x2d0 apu_fir_coef_t bf_pre_fir1_coef [9]; //0 x2f4 apu_fir_coef_t bf_post_fir1_coef [9]; //0 x318 apu_dwsz_cfg_t bf_dwsz_cfg_reg ; //0 x31c apu_fft_cfg_t bf_fft_cfg_reg ; // 0 x320 volatile uint32_t sobuf_dma_rdata ; // 0 x324 volatile uint32_t vobuf_dma_rdata ; / 0 x328 / apu_int_stat_t bf_int_stat_reg ; / 0 x32c / apu_int_mask_t bf_int_mask_reg ; / 0 x330 / uint32_t saturation_counter ; / 0 x334 / uint32_t saturation_limits ; } attribute (( packed, aligned (4))) apu_reg_t ; 成员 成员名称 bf_ch_cfg_reg bf_ctl_reg 描述 通道配置 控制寄存器

25 第 2 章麦克风阵列处理器 (APU) 19 成员名称 bf_dir_bidx[16][2] bf_pre_fir0_coef[9] bf_post_fir0_coef[9] bf_pre_fir1_coef[9] bf_post_fir1_coef[9] bf_dwsz_cfg_reg bf_fft_cfg_reg sobuf_dma_rdata vobuf_dma_rdata bf_int_stat_reg bf_int_mask_reg saturation_counter saturation_limits 描述各个方向延时累加计算前滤波系数各个方向延时累加计算后滤波系数计算选定方向延时累加值之前滤波系数计算选定方向延时累加值之后滤波系数下采样系数 fft 控制寄存器方向数据源地址选定方向数据源地址中断状态寄存器中断选定寄存器

26 20 第 3 章 高级加密加速器 (AES) 3.1 功能描述 K210 内置 AES( 高级加密加速器 ), 相对于软件可以极大的提高 AES 运算速度 AES 加速器支持多种加 密 / 解密模式 (ECB,CBC,GCM), 多种长度的 KEY(128,192,256) 的运算 3.2 API 参考 对应的头文件 aes.h 为用户提供以下接口 aes_ecb128_hard_encrypt aes_ecb128_hard_decrypt aes_ecb192_hard_encrypt aes_ecb192_hard_decrypt aes_ecb256_hard_encrypt aes_ecb256_hard_decrypt aes_cbc128_hard_encrypt aes_cbc128_hard_decrypt aes_cbc192_hard_encrypt aes_cbc192_hard_decrypt aes_cbc256_hard_encrypt aes_cbc256_hard_decrypt aes_gcm128_hard_encrypt aes_gcm128_hard_decrypt aes_gcm192_hard_encrypt

27 第 3 章高级加密加速器 (AES) 21 aes_gcm192_hard_decrypt aes_gcm256_hard_encrypt aes_gcm256_hard_decrypt aes_ecb128_hard_encrypt_dma aes_ecb128_hard_decrypt_dma aes_ecb192_hard_encrypt_dma aes_ecb192_hard_decrypt_dma aes_ecb256_hard_encrypt_dma aes_ecb256_hard_decrypt_dma aes_cbc128_hard_encrypt_dma aes_cbc128_hard_decrypt_dma aes_cbc192_hard_encrypt_dma aes_cbc192_hard_decrypt_dma aes_cbc256_hard_encrypt_dma aes_cbc256_hard_decrypt_dma aes_gcm128_hard_encrypt_dma aes_gcm128_hard_decrypt_dma aes_gcm192_hard_encrypt_dma aes_gcm192_hard_decrypt_dma aes_gcm256_hard_encrypt_dma aes_gcm256_hard_decrypt_dma aes_init aes_process gcm_get_tag aes_ecb128_hard_encrypt 描述 AES-ECB-128 加密运算 输入输出数据都使用 cpu 传输 ECB 加密将明文按照固定大小 16bytes 的块进行加密的, 块大小不足则进行填充 ECB 模式没有用到向量 函数原型 void aes_ecb128_hard_encrypt ( uint8_t input_key, uint8_t input_data, size_t input_len, uint8_t output_data )

28 第 3 章高级加密加速器 (AES) 参数 参数名称 描述 输入输出 input_key AES-ECB-128 加密的密钥 输入 input_data AES-ECB-128 待加密的明文 输入 数据 input_len AES-ECB-128 待加密明文数 输入 据的长度 output_data AES-ECB-128 加密运算后的结果存放在这个 buffer 这个 buffer 的大小需要保证 16bytes 对齐 输出 返回值 aes_ecb128_hard_decrypt 描述 AES-ECB-128 解密运算 输入输出数据都使用 cpu 传输 ECB 加密将明文按照固定大小 16bytes 的块进行加密的, 块大小不足则进行填充 ECB 模式没有用到向量 函数原型 void aes_ecb128_hard_decrypt ( uint8_t input_key, uint8_t input_data, size_t input_len, uint8_t output_data ) 参数 参数名称 描述 输入输出 input_key AES-ECB-128 解密的密钥 输入 input_data AES-ECB-128 待解密的密文 输入 数据 input_len AES-ECB-128 待解密密文数据的长度 输入

29 第 3 章高级加密加速器 (AES) 23 参数名称描述输入输出 output_data AES-ECB-128 解密运算后的结果存放在这个 buffer 这个 buffer 的大小需要保证 16bytes 对齐 输出 返回值 aes_ecb192_hard_encrypt 描述 AES-ECB-192 加密运算 输入输出数据都使用 cpu 传输 ECB 加密将明文按照固定大小 16bytes 的块进行加密的, 块大小不足则进行填充 ECB 模式没有用到向量 函数原型 void aes_ecb192_hard_encrypt ( uint8_t input_key, uint8_t input_data, size_t input_len, uint8_t output_data ) 参数 参数名称 描述 输入输出 input_key AES-ECB-192 加密的密钥 输入 input_data AES-ECB-192 待加密的明文 输入 数据 input_len AES-ECB-192 待加密明文数 输入 据的长度 output_data AES-ECB-192 加密运算后的结果存放在这个 buffer 这个 buffer 的大小需要保证 16bytes 对齐 输出 返回值

30 第 3 章高级加密加速器 (AES) aes_ecb192_hard_decrypt 描述 AES-ECB-192 解密运算 输入输出数据都使用 cpu 传输 ECB 加密将明文按照固定大小 16bytes 的块进行加密的, 块大小不足则进行填充 ECB 模式没有用到向量 函数原型 void aes_ecb192_hard_decrypt ( uint8_t input_key, uint8_t input_data, size_t input_len, uint8_t output_data ) 参数 参数名称 描述 输入输出 input_key AES-ECB-192 解密的密钥 输入 input_data AES-ECB-192 待解密的密文 输入 数据 input_len AES-ECB-192 待解密密文数 输入 据的长度 output_data AES-ECB-192 解密运算后的结果存放在这个 buffer 这个 buffer 的大小需要保证 16bytes 对齐 输出 返回值 aes_ecb256_hard_encrypt 描述 AES-ECB-256 加密运算 输入输出数据都使用 cpu 传输 ECB 加密将明文按照固定大小 16bytes 的块进行加密的, 块大小不足则进行填充 ECB 模式没有用到向量 函数原型

31 第 3 章高级加密加速器 (AES) 25 void aes_ecb256_hard_encrypt ( uint8_t input_key, uint8_t input_data, size_t input_len, uint8_t output_data ) 参数 参数名称 描述 输入输出 input_key AES-ECB-256 加密的密钥 输入 input_data AES-ECB-256 待加密的明文 输入 数据 input_len AES-ECB-256 待加密明文数 输入 据的长度 output_data AES-ECB-256 加密运算后的结果存放在这个 buffer 这个 buffer 的大小需要保证 16bytes 对齐 输出 返回值 aes_ecb256_hard_decrypt 描述 AES-ECB-256 解密运算 输入输出数据都使用 cpu 传输 ECB 加密将明文按照固定大小 16bytes 的块进行加密的, 块大小不足则进行填充 ECB 模式没有用到向量 函数原型 void aes_ecb256_hard_decrypt ( uint8_t input_key, uint8_t input_data, size_t input_len, uint8_t output_data ) 参数 参数名称 描述 输入输出 input_key AES-ECB-256 解密的密钥 输入 input_data AES-ECB-256 待解密的密文数据 输入

32 第 3 章高级加密加速器 (AES) 26 参数名称描述输入输出 input_len output_data AES-ECB-256 待解密密文数据的长度 AES-ECB-256 解密运算后的结果存放在这个 buffer 这个 buffer 的大小需要保证 16bytes 对齐 输入 输出 返回值 aes_cbc128_hard_encrypt 描述 AES-CBC-128 加密运算 输入输出数据都使用 cpu 传输 CBC 加密将明文按照固定大小 16bytes 的块进行加密的, 块大小不足则进行填充 函数原型 void aes_cbc128_hard_encrypt ( cbc_context_t context, uint8_t input_data, size_t input_len, uint8_t output_data ) 参数 参数名称描述输入输出 context input_data input_len output_data AES-CBC-128 加密计算的结构体, 包含加密密钥与偏移向量 AES-CBC-128 待加密的明文数据 AES-CBC-128 待加密明文数据的长度 AES-CBC-128 加密运算后的结果存放在这个 buffer 这个 buffer 的大小需要保证 16bytes 对齐 输入输入输入输出

33 第 3 章高级加密加速器 (AES) 返回值 aes_cbc128_hard_decrypt 描述 AES-CBC-128 解密运算 输入输出数据都使用 cpu 传输 CBC 加密将明文按照固定大小 16bytes 的块进行加密的, 块大小不足则进行填充 函数原型 void aes_cbc128_hard_decrypt ( cbc_context_t context, uint8_t input_data, size_t input_len, uint8_t output_data ) 参数 参数名称描述输入输出 context input_data input_len output_data AES-CBC-128 解密计算的结构体, 包含解密密钥与偏移向量 AES-CBC-128 待解密的密文数据 AES-CBC-128 待解密密文数据的长度 AES-CBC-128 解密运算后的结果存放在这个 buffer 这个 buffer 的大小需要保证 16bytes 对齐 输入输入输入输出 返回值 aes_cbc192_hard_encrypt 描述 AES-CBC-192 加密运算 输入输出数据都使用 cpu 传输 CBC 加密将明文按照固定大小 16bytes 的块进行加密的, 块大小不足则进行填充

34 第 3 章高级加密加速器 (AES) 函数原型 void aes_cbc192_hard_encrypt ( cbc_context_t context, uint8_t input_data, size_t input_len, uint8_t output_data ) 参数 参数名称描述输入输出 context input_data input_len output_data AES-CBC-192 加密计算的结构体, 包含加密密钥与偏移向量 AES-CBC-192 待加密的明文数据 AES-CBC-192 待加密明文数据的长度 AES-CBC-192 加密运算后的结果存放在这个 buffer 这个 buffer 的大小需要保证 16bytes 对齐 输入输入输入输出 返回值 aes_cbc192_hard_decrypt 描述 AES-CBC-192 解密运算 输入输出数据都使用 cpu 传输 CBC 加密将明文按照固定大小 16bytes 的块进行加密的, 块大小不足则进行填充 函数原型 void aes_cbc192_hard_decrypt ( cbc_context_t context, uint8_t input_data, size_t input_len, uint8_t output_data ) 参数

35 第 3 章高级加密加速器 (AES) 29 参数名称描述输入输出 context input_data input_len output_data AES-CBC-192 解密计算的结构体, 包含解密密钥与偏移向量 AES-CBC-192 待解密的密文数据 AES-CBC-192 待解密密文数据的长度 AES-CBC-192 解密运算后的结果存放在这个 buffer 这个 buffer 的大小需要保证 16bytes 对齐 输入输入输入输出 返回值 aes_cbc256_hard_encrypt 描述 AES-CBC-256 加密运算 输入输出数据都使用 cpu 传输 CBC 加密将明文按照固定大小 16bytes 的块进行加密的, 块大小不足则进行填充 函数原型 void aes_cbc256_hard_encrypt ( cbc_context_t context, uint8_t input_data, size_t input_len, uint8_t output_data ) 参数 参数名称描述输入输出 context input_data input_len AES-CBC-256 加密计算的结构体, 包含加密密钥与偏移向量 AES-CBC-256 待加密的明文数据 AES-CBC-256 待加密明文数据的长度 输入 输入 输入

36 第 3 章高级加密加速器 (AES) 30 参数名称描述输入输出 output_data AES-CBC-256 加密运算后的结果存放在这个 buffer 这个 buffer 的大小需要保证 16bytes 对齐 输出 返回值 aes_cbc256_hard_decrypt 描述 AES-CBC-256 解密运算 输入输出数据都使用 cpu 传输 CBC 加密将明文按照固定大小 16bytes 的块进行加密的, 块大小不足则进行填充 函数原型 void aes_cbc256_hard_decrypt ( uint8_t input_key, uint8_t input_data, size_t input_len, uint8_t output_data ) 参数 参数名称描述输入输出 context input_data input_len output_data AES-CBC-256 解密计算的结构体, 包含解密密钥与偏移向量 AES-CBC-256 待解密的密文数据 AES-CBC-256 待解密密文数据的长度 AES-CBC-256 解密运算后的结果存放在这个 buffer 这个 buffer 的大小需要保证 16bytes 对齐 输入输入输入输出

37 第 3 章高级加密加速器 (AES) 返回值 aes_gcm128_hard_encrypt 描述 AES-GCM-128 加密运算 输入输出数据都使用 cpu 传输 函数原型 void aes_gcm128_hard_encrypt ( gcm_context_t context, uint8_t input_data, size_t input_len, uint8_t output_data, uint8_t gcm_tag ) 参数 参数名称 描述 输入输出 context AES-GCM-128 加密计算的结构体, 包含加密密钥 / 偏移向量 /aad/aad 长度 输入 input_data AES-GCM-128 待加密的明文数据 输入 input_len AES-GCM-128 待加密明文数据的长度 输入 output_data AES-GCM-128 加密运算后的结果存放在这个 buffer 输出 gcm_tag AES-GCM-128 加密运算后的 tag 存放在这个 buffer 这个 buffer 大小需要保证为 16bytes 输出 返回值 aes_gcm128_hard_decrypt 描述 AES-GCM-128 解密运算 输入输出数据都使用 cpu 传输 函数原型 void aes_gcm128_hard_decrypt ( gcm_context_t context, uint8_t input_data, size_t input_len, uint8_t output_data, uint8_t gcm_tag ) 参数

38 第 3 章高级加密加速器 (AES) 32 参数名称 描述 输入输出 context AES-GCM-128 解密计算的结构体, 包含解密密钥 / 偏移向量 /aad/aad 长度 输入 input_data AES-GCM-128 待解密的密文数据 输入 input_len AES-GCM-128 待解密密文数据的长度 输入 output_data AES-GCM-128 解密运算后的结果存放在这个 buffer 输出 gcm_tag AES-GCM-128 解密运算后的 tag 存放在这个 buffer 这个 buffer 大小需要保证为 16bytes 输出 返回值 aes_gcm192_hard_encrypt 描述 AES-GCM-192 加密运算 输入输出数据都使用 cpu 传输 函数原型 void aes_gcm192_hard_encrypt ( gcm_context_t context, uint8_t input_data, size_t input_len, uint8_t output_data, uint8_t gcm_tag ) 参数 参数名称 描述 输入输出 context AES-GCM-192 加密计算的结构体, 包含加密密钥 / 偏移向量 /aad/aad 长度 输入 input_data AES-GCM-192 待加密的明文数据 输入 input_len AES-GCM-192 待加密明文数据的长度 输入 output_data AES-GCM-192 加密运算后的结果存放在这个 buffer 输出 gcm_tag AES-GCM-192 加密运算后的 tag 存放在这个 buffer 这个 buffer 大小需要保证为 16bytes 输出 返回值 aes_gcm192_hard_decrypt 描述 AES-GCM-192 解密运算 输入输出数据都使用 cpu 传输

39 第 3 章高级加密加速器 (AES) 函数原型 void aes_gcm192_hard_decrypt ( gcm_context_t context, uint8_t input_data, size_t input_len, uint8_t output_data, uint8_t gcm_tag ) 参数 参数名称 描述 输入输出 context AES-GCM-192 解密计算的结构体, 包含解密密钥 / 偏移向量 /aad/aad 长度 输入 input_data AES-GCM-192 待解密的密文数据 输入 input_len AES-GCM-192 待解密密文数据的长度 输入 output_data AES-GCM-192 解密运算后的结果存放在这个 buffer 输出 gcm_tag AES-GCM-192 解密运算后的 tag 存放在这个 buffer 这个 buffer 大小需要保证为 16bytes 输出 返回值 aes_gcm256_hard_encrypt 描述 AES-GCM-256 加密运算 输入输出数据都使用 cpu 传输 函数原型 void aes_gcm256_hard_encrypt ( gcm_context_t context, uint8_t input_data, size_t input_len, uint8_t output_data, uint8_t gcm_tag ) 参数 参数名称 描述 输入输出 context AES-GCM-256 加密计算的结构体, 包含加密密钥 / 偏移向量 /aad/aad 长度 输入 input_data AES-GCM-256 待加密的明文数据 输入 input_len AES-GCM-256 待加密明文数据的长度 输入 output_data AES-GCM-256 加密运算后的结果存放在这个 buffer 输出 gcm_tag AES-GCM-256 加密运算后的 tag 存放在这个 buffer 这个 buffer 大小需要保证为 16bytes 输出

40 第 3 章高级加密加速器 (AES) 返回值 aes_gcm256_hard_decrypt 描述 AES-GCM-256 解密运算 输入输出数据都使用 cpu 传输 函数原型 void aes_gcm256_hard_decrypt ( gcm_context_t context, uint8_t input_data, size_t input_len, uint8_t output_data, uint8_t gcm_tag ) 参数 参数名称 描述 输入输出 context AES-GCM-256 解密计算的结构体, 包含解密密钥 / 偏移向量 /aad/aad 长度 输入 input_data AES-GCM-256 待解密的密文数据 输入 input_len AES-GCM-256 待解密密文数据的长度 输入 output_data AES-GCM-256 解密运算后的结果存放在这个 buffer 输出 gcm_tag AES-GCM-256 解密运算后的 tag 存放在这个 buffer 这个 buffer 大小需要保证为 16bytes 输出 返回值 aes_ecb128_hard_encrypt_dma 描述 AES-ECB-128 加密运算 输入数据使用 cpu 传输, 输出数据都使用 dma 传输 ECB 加密将明文按照固定大小 16bytes 的块进行加密的, 块大小不足则进行填充 ECB 模式没有用到向量 函数原型 void aes_ecb128_hard_encrypt_dma ( dmac_channel_number_t dma_receive_channel_num, uint8_t input_key, uint8_t input_data, size_t input_len, uint8_t output_data ) 参数

41 第 3 章高级加密加速器 (AES) 35 参数名称 描述 输入输出 dma_receive_channel_num AES 输出数据的 DMA 通道号 输入 input_key AES-ECB-128 加密的密钥 输入 input_data AES-ECB-128 待加密的明文 输入 数据 input_len AES-ECB-128 待加密明文数 输入 据的长度 output_data AES-ECB-128 加密运算后的结果存放在这个 buffer 这个 buffer 的大小需要保证 16bytes 对齐 输出 返回值 aes_ecb128_hard_decrypt_dma 描述 AES-ECB-128 解密运算 输入数据使用 cpu 传输, 输出数据都使用 dma 传输 ECB 加密将明文按照固定大小 16bytes 的块进行加密的, 块大小不足则进行填充 ECB 模式没有用到向量 函数原型 void aes_ecb128_hard_decrypt_dma ( dmac_channel_number_t dma_receive_channel_num, uint8_t input_key, uint8_t input_data, size_t input_len, uint8_t output_data ) 参数 参数名称 描述 输入输出 dma_receive_channel_num AES 输出数据的 DMA 通道号 输入 input_key AES-ECB-128 解密的密钥 输入 input_data AES-ECB-128 待解密的密文 输入 数据 input_len AES-ECB-128 待解密密文数据的长度 输入

42 第 3 章高级加密加速器 (AES) 36 参数名称描述输入输出 output_data AES-ECB-128 解密运算后的结果存放在这个 buffer 这个 buffer 的大小需要保证 16bytes 对齐 输出 返回值 aes_ecb192_hard_encrypt_dma 描述 AES-ECB-192 加密运算 输入数据使用 cpu 传输, 输出数据都使用 dma 传输 ECB 加密将明文按照固定大小 16bytes 的块进行加密的, 块大小不足则进行填充 ECB 模式没有用到向量 函数原型 void aes_ecb192_hard_encrypt_dma ( dmac_channel_number_t dma_receive_channel_num, uint8_t input_key, uint8_t input_data, size_t input_len, uint8_t output_data ) 参数 参数名称 描述 输入输出 dma_receive_channel_num AES 输出数据的 DMA 通道号 输入 input_key AES-ECB-192 加密的密钥 输入 input_data AES-ECB-192 待加密的明文 输入 数据 input_len AES-ECB-192 待加密明文数 输入 据的长度 output_data AES-ECB-192 加密运算后的结果存放在这个 buffer 这个 buffer 的大小需要保证 16bytes 对齐 输出 返回值

43 第 3 章高级加密加速器 (AES) aes_ecb192_hard_decrypt_dma 描述 AES-ECB-192 解密运算 输入数据使用 cpu 传输, 输出数据都使用 dma 传输 ECB 加密将明文按照固定大小 16bytes 的块进行加密的, 块大小不足则进行填充 ECB 模式没有用到向量 函数原型 void aes_ecb192_hard_decrypt_dma ( dmac_channel_number_t dma_receive_channel_num, uint8_t input_key, uint8_t input_data, size_t input_len, uint8_t output_data ) 参数 参数名称 描述 输入输出 dma_receive_channel_num AES 输出数据的 DMA 通道号 输入 input_key AES-ECB-192 解密的密钥 输入 input_data AES-ECB-192 待解密的密文 输入 数据 input_len AES-ECB-192 待解密密文数 输入 据的长度 output_data AES-ECB-192 解密运算后的结果存放在这个 buffer 这个 buffer 的大小需要保证 16bytes 对齐 输出 返回值 aes_ecb256_hard_encrypt_dma 描述 AES-ECB-256 加密运算 输入数据使用 cpu 传输, 输出数据都使用 dma 传输 ECB 加密将明文按照固定大小 16bytes 的块进行加密的, 块大小不足则进行填充 ECB 模式没有用到向量 函数原型

44 第 3 章高级加密加速器 (AES) 38 void aes_ecb256_hard_encrypt_dma ( dmac_channel_number_t dma_receive_channel_num, uint8_t input_key, uint8_t input_data, size_t input_len, uint8_t output_data ) 参数 参数名称 描述 输入输出 dma_receive_channel_num AES 输出数据的 DMA 通道号 输入 input_key AES-ECB-256 加密的密钥 输入 input_data AES-ECB-256 待加密的明文 输入 数据 input_len AES-ECB-256 待加密明文数 输入 据的长度 output_data AES-ECB-256 加密运算后的结果存放在这个 buffer 这个 buffer 的大小需要保证 16bytes 对齐 输出 返回值 aes_ecb256_hard_decrypt_dma 描述 AES-ECB-256 解密运算 输入数据使用 cpu 传输, 输出数据都使用 dma 传输 ECB 加密将明文按照固定大小 16bytes 的块进行加密的, 块大小不足则进行填充 ECB 模式没有用到向量 函数原型 void aes_ecb256_hard_decrypt_dma ( dmac_channel_number_t dma_receive_channel_num, uint8_t input_key, uint8_t input_data, size_t input_len, uint8_t output_data ) 参数 参数名称描述输入输出 dma_receive_channel_num AES 输出数据的 DMA 通道号输入 input_key AES-ECB-256 解密的密钥输入

45 第 3 章高级加密加速器 (AES) 39 参数名称描述输入输出 input_data input_len output_data AES-ECB-256 待解密的密文数据 AES-ECB-256 待解密密文数据的长度 AES-ECB-256 解密运算后的结果存放在这个 buffer 这个 buffer 的大小需要保证 16bytes 对齐 输入 输入 输出 返回值 aes_cbc128_hard_encrypt_dma 描述 AES-CBC-128 加密运算 输入数据使用 cpu 传输, 输出数据都使用 dma 传输 CBC 加密将明文按照固定大小 16bytes 的块进行加密的, 块大小不足则进行填充 函数原型 void aes_cbc128_hard_encrypt_dma ( dmac_channel_number_t dma_receive_channel_num, cbc_context_t context, uint8_t input_data, size_t input_len, uint8_t output_data ) 参数 参数名称 描述 输入输出 dma_receive_channel_num AES 输出数据的 DMA 通道号 输入 context AES-CBC-128 加密计算的结 输入 构体, 包含加密密钥与偏移向量 input_data AES-CBC-128 待加密的明文 输入 数据 input_len AES-CBC-128 待加密明文数据的长度 输入

46 第 3 章高级加密加速器 (AES) 40 参数名称描述输入输出 output_data AES-CBC-128 加密运算后的结果存放在这个 buffer 这个 buffer 的大小需要保证 16bytes 对齐 输出 返回值 aes_cbc128_hard_decrypt_dma 描述 AES-CBC-128 解密运算 输入数据使用 cpu 传输, 输出数据都使用 dma 传输 CBC 加密将明文按照固定大小 16bytes 的块进行加密的, 块大小不足则进行填充 函数原型 void aes_cbc128_hard_decrypt_dma ( dmac_channel_number_t dma_receive_channel_num, cbc_context_t context, uint8_t input_data, size_t input_len, uint8_t output_data ) 参数 参数名称 描述 输入输出 dma_receive_channel_num AES 输出数据的 DMA 通道号 输入 context AES-CBC-128 解密计算的结 输入 构体, 包含解密密钥与偏移向量 input_data AES-CBC-128 待解密的密文 输入 数据 input_len AES-CBC-128 待解密密文数 输入 据的长度 output_data AES-CBC-128 解密运算后的结果存放在这个 buffer 这个 buffer 的大小需要保证 16bytes 对齐 输出

47 第 3 章高级加密加速器 (AES) 返回值 aes_cbc192_hard_encrypt_dma 描述 AES-CBC-192 加密运算 输入数据使用 cpu 传输, 输出数据都使用 dma 传输 CBC 加密将明文按照固定大小 16bytes 的块进行加密的, 块大小不足则进行填充 函数原型 void aes_cbc192_hard_encrypt_dma ( dmac_channel_number_t dma_receive_channel_num, cbc_context_t context, uint8_t input_data, size_t input_len, uint8_t output_data ) 参数 参数名称 描述 输入输出 dma_receive_channel_num AES 输出数据的 DMA 通道号 输入 context AES-CBC-192 加密计算的结 输入 构体, 包含加密密钥与偏移向量 input_data AES-CBC-192 待加密的明文 输入 数据 input_len AES-CBC-192 待加密明文数 输入 据的长度 output_data AES-CBC-192 加密运算后的结果存放在这个 buffer 这个 buffer 的大小需要保证 16bytes 对齐 输出 返回值

48 第 3 章高级加密加速器 (AES) aes_cbc192_hard_decrypt_dma 描述 AES-CBC-192 解密运算 输入数据使用 cpu 传输, 输出数据都使用 dma 传输 CBC 加密将明文按照固定大小 16bytes 的块进行加密的, 块大小不足则进行填充 函数原型 void aes_cbc192_hard_decrypt_dma ( dmac_channel_number_t dma_receive_channel_num, cbc_context_t context, uint8_t input_data, size_t input_len, uint8_t output_data ) 参数 参数名称 描述 输入输出 dma_receive_channel_num AES 输出数据的 DMA 通道号 输入 context AES-CBC-192 解密计算的结 输入 构体, 包含解密密钥与偏移向量 input_data AES-CBC-192 待解密的密文 输入 数据 input_len AES-CBC-192 待解密密文数 输入 据的长度 output_data AES-CBC-192 解密运算后的结果存放在这个 buffer 这个 buffer 的大小需要保证 16bytes 对齐 输出 返回值 aes_cbc256_hard_encrypt_dma 描述 AES-CBC-256 加密运算 输入数据使用 cpu 传输, 输出数据都使用 dma 传输 CBC 加密将明文按照固定大小 16bytes 的块进行加密的, 块大小不足则进行填充

49 第 3 章高级加密加速器 (AES) 函数原型 void aes_cbc256_hard_encrypt_dma ( dmac_channel_number_t dma_receive_channel_num, cbc_context_t context, uint8_t input_data, size_t input_len, uint8_t output_data ) 参数 参数名称 描述 输入输出 dma_receive_channel_num AES 输出数据的 DMA 通道号 输入 context AES-CBC-256 加密计算的结 输入 构体, 包含加密密钥与偏移向量 input_data AES-CBC-256 待加密的明文 输入 数据 input_len AES-CBC-256 待加密明文数 输入 据的长度 output_data AES-CBC-256 加密运算后的结果存放在这个 buffer 这个 buffer 的大小需要保证 16bytes 对齐 输出 返回值 aes_cbc256_hard_decrypt_dma 描述 AES-CBC-256 解密运算 输入数据使用 cpu 传输, 输出数据都使用 dma 传输 CBC 加密将明文按照固定大小 16bytes 的块进行加密的, 块大小不足则进行填充 函数原型 void aes_cbc256_hard_decrypt_dma ( dmac_channel_number_t dma_receive_channel_num, uint8_t input_key, uint8_t input_data, size_t input_len, uint8_t output_data )

50 第 3 章高级加密加速器 (AES) 参数 参数名称 描述 输入输出 dma_receive_channel_num AES 输出数据的 DMA 通道号 输入 context AES-CBC-256 解密计算的结 输入 构体, 包含解密密钥与偏移向量 input_data AES-CBC-256 待解密的密文 输入 数据 input_len AES-CBC-256 待解密密文数 输入 据的长度 output_data AES-CBC-256 解密运算后的结果存放在这个 buffer 这个 buffer 的大小需要保证 16bytes 对齐 输出 返回值 aes_gcm128_hard_encrypt_dma 描述 AES-GCM-128 加密运算 输入数据使用 cpu 传输, 输出数据都使用 dma 传输 函数原型 void aes_gcm128_hard_encrypt_dma ( dmac_channel_number_t dma_receive_channel_num, gcm_context_t context, uint8_t input_data, size_t input_len, uint8_t output_data, uint8_t gcm_tag ) 参数 参数名称描述输入输出 dma_receive_channel_num AES 输出数据的 DMA 通道号输入

51 第 3 章高级加密加速器 (AES) 45 参数名称描述输入输出 context input_data input_len output_data gcm_tag AES-GCM-128 加密计算的结构体, 包含加密密钥 / 偏移向量 /aad/aad 长度 AES-GCM-128 待加密的明文数据 AES-GCM-128 待加密明文数据的长度 AES-GCM-128 加密运算后的结果存放在这个 buffer 由于 DMA 搬运数据的最小粒度为 4bytes, 所以需要保证这个 buffer 大小至少为 4bytes 的整数倍 AES-GCM-128 加密运算后的 tag 存放在这个 buffer 这个 buffer 大小需要保证为 16bytes 输入输入输入输出输出 返回值 aes_gcm128_hard_decrypt_dma 描述 AES-GCM-128 解密运算 输入数据使用 cpu 传输, 输出数据都使用 dma 传输 函数原型 void aes_gcm128_hard_decrypt_dma ( dmac_channel_number_t dma_receive_channel_num, gcm_context_t context, uint8_t input_data, size_t input_len, uint8_t output_data, uint8_t gcm_tag ) 参数

52 第 3 章高级加密加速器 (AES) 46 参数名称 描述 输入输出 dma_receive_channel_num AES 输出数据的 DMA 通道号 输入 context AES-GCM-128 解密计算的结 输入 构体, 包含解密密钥 / 偏移向量 /aad/aad 长度 input_data AES-GCM-128 待解密的密文 输入 数据 input_len AES-GCM-128 待解密密文数 输入 据的长度 output_data AES-GCM-128 解密运算后的 输出 结果存放在这个 buffer 由于 DMA 搬运数据的最小粒度为 4bytes, 所以需要保证这个 buffer 大小至少为 4bytes 的整数倍 gcm_tag AES-GCM-128 解密运算后的 tag 存放在这个 buffer 这个 buffer 大小需要保证为 16bytes 输出 返回值 aes_gcm192_hard_encrypt_dma 描述 AES-GCM-192 加密运算 输入数据使用 cpu 传输, 输出数据都使用 dma 传输 函数原型 void aes_gcm192_hard_encrypt_dma ( dmac_channel_number_t dma_receive_channel_num, gcm_context_t context, uint8_t input_data, size_t input_len, uint8_t output_data, uint8_t gcm_tag ) 参数

53 第 3 章高级加密加速器 (AES) 47 参数名称 描述 输入输出 dma_receive_channel_num AES 输出数据的 DMA 通道号 输入 context AES-GCM-192 加密计算的结 输入 构体, 包含加密密钥 / 偏移向量 /aad/aad 长度 input_data AES-GCM-192 待加密的明文 输入 数据 input_len AES-GCM-192 待加密明文数 输入 据的长度 output_data AES-GCM-192 加密运算后的 输出 结果存放在这个 buffer 由于 DMA 搬运数据的最小粒度为 4bytes, 所以需要保证这个 buffer 大小至少为 4bytes 的整数倍 gcm_tag AES-GCM-192 加密运算后的 tag 存放在这个 buffer 这个 buffer 大小需要保证为 16bytes 输出 返回值 aes_gcm192_hard_decrypt_dma 描述 AES-GCM-192 解密运算 输入数据使用 cpu 传输, 输出数据都使用 dma 传输 函数原型 void aes_gcm192_hard_decrypt_dma ( dmac_channel_number_t dma_receive_channel_num, gcm_context_t context, uint8_t input_data, size_t input_len, uint8_t output_data, uint8_t gcm_tag ) 参数

54 第 3 章高级加密加速器 (AES) 48 参数名称 描述 输入输出 dma_receive_channel_num AES 输出数据的 DMA 通道号 输入 context AES-GCM-192 解密计算的结 输入 构体, 包含解密密钥 / 偏移向量 /aad/aad 长度 input_data AES-GCM-192 待解密的密文 输入 数据 input_len AES-GCM-192 待解密密文数 输入 据的长度 output_data AES-GCM-192 解密运算后的 输出 结果存放在这个 buffer 由于 DMA 搬运数据的最小粒度为 4bytes, 所以需要保证这个 buffer 大小至少为 4bytes 的整数倍 gcm_tag AES-GCM-192 解密运算后的 tag 存放在这个 buffer 这个 buffer 大小需要保证为 16bytes 输出 返回值 aes_gcm256_hard_encrypt_dma 描述 AES-GCM-256 加密运算 输入数据使用 cpu 传输, 输出数据都使用 dma 传输 函数原型 void aes_gcm256_hard_encrypt_dma ( dmac_channel_number_t dma_receive_channel_num, gcm_context_t context, uint8_t input_data, size_t input_len, uint8_t output_data, uint8_t gcm_tag ) 参数

55 第 3 章高级加密加速器 (AES) 49 参数名称 描述 输入输出 dma_receive_channel_num AES 输出数据的 DMA 通道号 输入 context AES-GCM-256 加密计算的结 输入 构体, 包含加密密钥 / 偏移向量 /aad/aad 长度 input_data AES-GCM-256 待加密的明文 输入 数据 input_len AES-GCM-256 待加密明文数 输入 据的长度 output_data AES-GCM-256 加密运算后的 输出 结果存放在这个 buffer 由于 DMA 搬运数据的最小粒度为 4bytes, 所以需要保证这个 buffer 大小至少为 4bytes 的整数倍 gcm_tag AES-GCM-256 加密运算后的 tag 存放在这个 buffer 这个 buffer 大小需要保证为 16bytes 输出 返回值 aes_gcm256_hard_decrypt_dma 描述 AES-GCM-256 解密运算 输入数据使用 cpu 传输, 输出数据都使用 dma 传输 函数原型 void aes_gcm256_hard_decrypt_dma ( dmac_channel_number_t dma_receive_channel_num, gcm_context_t context, uint8_t input_data, size_t input_len, uint8_t output_data, uint8_t gcm_tag ) 参数

56 第 3 章高级加密加速器 (AES) 50 参数名称 描述 输入输出 dma_receive_channel_num AES 输出数据的 DMA 通道号 输入 context AES-GCM-256 解密计算的结 输入 构体, 包含解密密钥 / 偏移向量 /aad/aad 长度 input_data AES-GCM-256 待解密的密文 输入 数据 input_len AES-GCM-256 待解密密文数 输入 据的长度 output_data AES-GCM-256 解密运算后的 输出 结果存放在这个 buffer 由于 DMA 搬运数据的最小粒度为 4bytes, 所以需要保证这个 buffer 大小至少为 4bytes 的整数倍 gcm_tag AES-GCM-256 解密运算后的 tag 存放在这个 buffer 这个 buffer 大小需要保证为 16bytes 输出 返回值 aes_init 描述 AES 硬件模块的初始化 函数原型 void aes_init ( uint8_t input_key, size_t input_key_len, uint8_t iv, size_t iv_len, uint8_t gcm_aad, aes_cipher_mode_t cipher_mode, aes_encrypt_sel_t encrypt_sel, size_t gcm_aad_len, size_t input_data_len ) 参数

57 第 3 章高级加密加速器 (AES) 51 参数名称 描述 输入输出 input_key 待加密 / 解密的密钥 输入 input_key_len 待加密 / 解密密钥的长度 输入 iv AES 加密解密用到的 iv 数据 输入 iv_len AES 加密解密用到的 iv 数据的长度,CBC 固定为 16bytes,GCM 固定为 12bytes 输出 gcm_aad AES-GCM 加密解密用到的 aad 数据 输出 cipher_mode AES 硬件模块执行的加密解密类型, 支持 AES_CBC/AES_ECB/AES_GCM 输入 encrypt_sel AES 硬件模块执行的模式 : 加密或解密 输入 gcm_aad_len AES-GCM 加密解密用到的 aad 数据的长度 输入 input_data_len 待加密 / 解密的数据长度 输入 返回值 aes_process 描述 AES 硬件模块执行加密解密操作 函数原型 void aes_process ( uint8_t input_data, uint8_t output_data, size_t input_data_len, aes_cipher_mode_t cipher_mode ) 参数 参数名称 描述 输入输出 input_data 这个 buffer 存放待加密 / 解密的数据 输入 output_data 这个 buffer 存放加密 / 解密的输出结果 输出 input_data_len 待加密 / 解密的数据的长度 输入 cipher_mode AES 硬件模块执行的加密解密类型, 支持 AES_CBC/AES_ECB/AES_GCM 输入 返回值

58 第 3 章高级加密加速器 (AES) gcm_get_tag 描述 获取 AES-GCM 计算结束后的 tag 函数原型 void gcm_get_tag ( uint8_t gcm_tag ) 参数 参数名称描述输入输出 gcm_tag 这个 buffer 存放 AES-GCM 加密 / 解密后的 tag, 固定为 16bytes 的大小输出 返回值 举例 cbc_context_t cbc_context ; cbc_context. input_key = cbc_key ; cbc_context. iv = cbc_iv ; aes_cbc128_hard_encrypt (& cbc_context, aes_input_data, 16L, aes_output_data ); memcpy ( aes_input_data, aes_output_data, 16L); aes_cbc128_hard_decrypt (& cbc_context, aes_input_data, 16L, aes_output_data ); 3.3 数据类型 相关数据类型 数据结构定义如下 : aes_cipher_mode_t:aes 加密 / 解密的方式 aes_cipher_mode_t 描述 AES 加密 / 解密的方式

59 第 3 章高级加密加速器 (AES) 定义 typedef enum _aes_cipher_mode { AES_ECB = 0, AES_CBC = 1, AES_GCM = 2, AES_CIPHER_MAX } aes_cipher_mode_t ; gcm_context_t:aes-gcm 加密 / 解密时参数用到的结构体 gcm_context_t 描述 AES-GCM 参数用到的结构体, 包括密钥 偏移向量 aad 数据 aad 数据长度 定义 typedef struct _gcm_context { uint8_t input_key ; uint8_t iv; uint8_t gcm_aad ; size_t gcm_aad_len ; } gcm_context_t ; cbc_context_t:aes-cbc 加密 / 解密时参数用到的结构体 cbc_context_t 描述 AES-CBC 参数用到的结构体, 包括密钥 偏移向量 定义 typedef struct _cbc_context { uint8_t input_key ; uint8_t iv;

60 第 3 章高级加密加速器 (AES) 54 } cbc_context_t ; 成员 成员名称 AES_ECB AES_CBC AES_GCM 描述 ECB 加密 / 解密 CBC 加密 / 解密 GCM 加密 / 解密

61 55 第 4 章 中断 PLIC 4.1 概述 可以将任一外部中断源单独分配到每个 CPU 的外部中断上 这提供了强大的灵活性, 能适应不同的 应用需求 4.2 功能描述 PLIC 模块具有以下功能 : 启用或禁用中断 设置中断处理程序 配置中断优先级 4.3 API 参考 对应头文件 plic.h 为用户提供以下接口 plic_init plic_irq_enable plic_irq_disable plic_set_priority plic_get_priority plic_irq_register plic_irq_deregister

62 第 4 章中断 PLIC plic_init 描述 PLIC 初始化外部中断 函数原型 void plic_init ( void ) 参数 返回值 plic_irq_enable 描述 使能外部中断 函数原型 int plic_irq_enable ( plic_irq_t irq_number ) 参数 参数名称描述输入输出 irq_number 中断号输入 返回值 返回值 描述 0 成功 非 0 失败

63 第 4 章 中断 PLIC plic_irq_disable 描述 禁用外部中断 函数原型 int plic_irq_disable ( plic_irq_t irq_number ) 参数 参数名称描述输入输出 irq_number 中断号输入 返回值 返回值 描述 0 成功 非 0 失败 plic_set_priority 描述 设置中断优先级 函数原型 int plic_set_priority ( plic_irq_t irq_number, uint32_t priority ) 参数 参数名称描述输入输出 irq_number 中断号输入 priority 中断优先级输入

64 第 4 章中断 PLIC 返回值 返回值 描述 0 成功 非 0 失败 plic_get_priority 描述 获取中断优先级 函数原型 uint32_t plic_get_priority ( plic_irq_t irq_number ) 参数 参数名称描述输入输出 irq_number 中断号输入 返回值 irq_number 中断的优先级 plic_irq_register 描述 注册外部中断函数 函数原型 int plic_irq_register ( plic_irq_t irq, plic_irq_callback_t callback, void ctx ) 参数 参数名称描述输入输出 irq 中断号输入

65 第 4 章中断 PLIC 59 参数名称描述输入输出 callback 中断回调函数输入 ctx 回调函数的参数输入 返回值 返回值 描述 0 成功 非 0 失败 plic_irq_deregister 描述 注销外部中断函数 函数原型 int plic_irq_deregister ( plic_irq_t irq ) 参数 参数名称描述输入输出 irq 中断号输入 返回值 返回值 描述 0 成功 非 0 失败 举例 / 设置 GPIOHS0 的触发中断 / int count = 0; int gpiohs_pin_onchange_isr ( void ctx )

66 第 4 章中断 PLIC 60 { int userdata = ( int ) ctx; userdata ++; } plic_init (); plic_set_priority ( IRQN_GPIOHS0_INTERRUPT, 1); plic_irq_register ( IRQN_GPIOHS0_INTERRUPT, gpiohs_pin_onchange_isr, & count ); plic_irq_enable ( IRQN_GPIOHS0_INTERRUPT ); sysctl_enable_irq (); 4.4 数据类型 相关数据类型 数据结构定义如下 : plic_irq_t: 外部中断号 plic_irq_callback_t: 外部中断回调函数 plic_irq_t 描述 外部中断号 定义 typedef enum _plic_irq { IRQN_NO_INTERRUPT = 0, /!< The non - existent interrupt / IRQN_SPI0_INTERRUPT = 1, /!< SPI0 interrupt / IRQN_SPI1_INTERRUPT = 2, /!< SPI1 interrupt / IRQN_SPI_SLAVE_INTERRUPT = 3, /!< SPI_SLAVE interrupt / IRQN_SPI3_INTERRUPT = 4, /!< SPI3 interrupt / IRQN_I2S0_INTERRUPT = 5, /!< I2S0 interrupt / IRQN_I2S1_INTERRUPT = 6, /!< I2S1 interrupt / IRQN_I2S2_INTERRUPT = 7, /!< I2S2 interrupt / IRQN_I2C0_INTERRUPT = 8, /!< I2C0 interrupt / IRQN_I2C1_INTERRUPT = 9, /!< I2C1 interrupt / IRQN_I2C2_INTERRUPT = 10, /!< I2C2 interrupt / IRQN_UART1_INTERRUPT = 11, /!< UART1 interrupt / IRQN_UART2_INTERRUPT = 12, /!< UART2 interrupt / IRQN_UART3_INTERRUPT = 13, /!< UART3 interrupt / IRQN_TIMER0A_INTERRUPT = 14, /!< TIMER0 channel 0 or 1 interrupt / IRQN_TIMER0B_INTERRUPT = 15, /!< TIMER0 channel 2 or 3 interrupt / IRQN_TIMER1A_INTERRUPT = 16, /!< TIMER1 channel 0 or 1 interrupt / IRQN_TIMER1B_INTERRUPT = 17, /!< TIMER1 channel 2 or 3 interrupt / IRQN_TIMER2A_INTERRUPT = 18, /!< TIMER2 channel 0 or 1 interrupt / IRQN_TIMER2B_INTERRUPT = 19, /!< TIMER2 channel 2 or 3 interrupt /

67 第 4 章中断 PLIC 61 IRQN_RTC_INTERRUPT = 20, /!< RTC tick and alarm interrupt / IRQN_WDT0_INTERRUPT = 21, /!< Watching dog timer0 interrupt / IRQN_WDT1_INTERRUPT = 22, /!< Watching dog timer1 interrupt / IRQN_APB_GPIO_INTERRUPT = 23, /!< APB GPIO interrupt / IRQN_DVP_INTERRUPT = 24, /!< Digital video port interrupt / IRQN_AI_INTERRUPT = 25, /!< AI accelerator interrupt / IRQN_FFT_INTERRUPT = 26, /!< FFT accelerator interrupt / IRQN_DMA0_INTERRUPT = 27, /!< DMA channel0 interrupt / IRQN_DMA1_INTERRUPT = 28, /!< DMA channel1 interrupt / IRQN_DMA2_INTERRUPT = 29, /!< DMA channel2 interrupt / IRQN_DMA3_INTERRUPT = 30, /!< DMA channel3 interrupt / IRQN_DMA4_INTERRUPT = 31, /!< DMA channel4 interrupt / IRQN_DMA5_INTERRUPT = 32, /!< DMA channel5 interrupt / IRQN_UARTHS_INTERRUPT = 33, /!< Hi - speed UART0 interrupt / IRQN_GPIOHS0_INTERRUPT = 34, /!< Hi - speed GPIO0 interrupt / IRQN_GPIOHS1_INTERRUPT = 35, /!< Hi - speed GPIO1 interrupt / IRQN_GPIOHS2_INTERRUPT = 36, /!< Hi - speed GPIO2 interrupt / IRQN_GPIOHS3_INTERRUPT = 37, /!< Hi - speed GPIO3 interrupt / IRQN_GPIOHS4_INTERRUPT = 38, /!< Hi - speed GPIO4 interrupt / IRQN_GPIOHS5_INTERRUPT = 39, /!< Hi - speed GPIO5 interrupt / IRQN_GPIOHS6_INTERRUPT = 40, /!< Hi - speed GPIO6 interrupt / IRQN_GPIOHS7_INTERRUPT = 41, /!< Hi - speed GPIO7 interrupt / IRQN_GPIOHS8_INTERRUPT = 42, /!< Hi - speed GPIO8 interrupt / IRQN_GPIOHS9_INTERRUPT = 43, /!< Hi - speed GPIO9 interrupt / IRQN_GPIOHS10_INTERRUPT = 44, /!< Hi - speed GPIO10 interrupt / IRQN_GPIOHS11_INTERRUPT = 45, /!< Hi - speed GPIO11 interrupt / IRQN_GPIOHS12_INTERRUPT = 46, /!< Hi - speed GPIO12 interrupt / IRQN_GPIOHS13_INTERRUPT = 47, /!< Hi - speed GPIO13 interrupt / IRQN_GPIOHS14_INTERRUPT = 48, /!< Hi - speed GPIO14 interrupt / IRQN_GPIOHS15_INTERRUPT = 49, /!< Hi - speed GPIO15 interrupt / IRQN_GPIOHS16_INTERRUPT = 50, /!< Hi - speed GPIO16 interrupt / IRQN_GPIOHS17_INTERRUPT = 51, /!< Hi - speed GPIO17 interrupt / IRQN_GPIOHS18_INTERRUPT = 52, /!< Hi - speed GPIO18 interrupt / IRQN_GPIOHS19_INTERRUPT = 53, /!< Hi - speed GPIO19 interrupt / IRQN_GPIOHS20_INTERRUPT = 54, /!< Hi - speed GPIO20 interrupt / IRQN_GPIOHS21_INTERRUPT = 55, /!< Hi - speed GPIO21 interrupt / IRQN_GPIOHS22_INTERRUPT = 56, /!< Hi - speed GPIO22 interrupt / IRQN_GPIOHS23_INTERRUPT = 57, /!< Hi - speed GPIO23 interrupt / IRQN_GPIOHS24_INTERRUPT = 58, /!< Hi - speed GPIO24 interrupt / IRQN_GPIOHS25_INTERRUPT = 59, /!< Hi - speed GPIO25 interrupt / IRQN_GPIOHS26_INTERRUPT = 60, /!< Hi - speed GPIO26 interrupt / IRQN_GPIOHS27_INTERRUPT = 61, /!< Hi - speed GPIO27 interrupt / IRQN_GPIOHS28_INTERRUPT = 62, /!< Hi - speed GPIO28 interrupt / IRQN_GPIOHS29_INTERRUPT = 63, /!< Hi - speed GPIO29 interrupt / IRQN_GPIOHS30_INTERRUPT = 64, /!< Hi - speed GPIO30 interrupt / IRQN_GPIOHS31_INTERRUPT = 65, /!< Hi - speed GPIO31 interrupt / IRQN_MAX } plic_irq_t ; 成员

68 第 4 章中断 PLIC 62 成员名称 IRQN_NO_INTERRUPT IRQN_SPI0_INTERRUPT IRQN_SPI1_INTERRUPT IRQN_SPI_SLAVE_INTERRUPT IRQN_SPI3_INTERRUPT IRQN_I2S0_INTERRUPT IRQN_I2S1_INTERRUPT IRQN_I2S2_INTERRUPT IRQN_I2C0_INTERRUPT IRQN_I2C1_INTERRUPT IRQN_I2C2_INTERRUPT IRQN_UART1_INTERRUPT IRQN_UART2_INTERRUPT IRQN_UART3_INTERRUPT IRQN_TIMER0A_INTERRUPT IRQN_TIMER0B_INTERRUPT IRQN_TIMER1A_INTERRUPT IRQN_TIMER1B_INTERRUPT IRQN_TIMER2A_INTERRUPT IRQN_TIMER2B_INTERRUPT IRQN_RTC_INTERRUPT IRQN_WDT0_INTERRUPT IRQN_WDT1_INTERRUPT IRQN_APB_GPIO_INTERRUPT IRQN_DVP_INTERRUPT IRQN_AI_INTERRUPT IRQN_FFT_INTERRUPTFFT IRQN_DMA0_INTERRUPT IRQN_DMA1_INTERRUPT IRQN_DMA2_INTERRUPT IRQN_DMA3_INTERRUPT IRQN_DMA4_INTERRUPT IRQN_DMA5_INTERRUPT IRQN_UARTHS_INTERRUPT IRQN_GPIOHS0_INTERRUPT 描述不存在 SPI0 中断 SPI1 中断从 SPI 中断 SPI3 中断 I2S0 中断 I2S1 中断 I2S2 中断 I2C0 中断 I2C1 中断 I2C2 中断 UART1 中断 UART2 中断 UART3 中断 TIMER0 通道 0 和 1 中断 TIMER0 通道 2 和 3 中断 TIMER1 通道 0 和 1 中断 TIMER1 通道 2 和 3 中断 TIMER2 通道 0 和 1 中断 TIMER2 通道 2 和 3 中断 RTC 滴答中断和报警中断看门狗 0 中断看门狗 1 中断普通 GPIO 中断数字摄像头 (DVP) 中断 AI 加速器中断傅里叶加速器中断 DMA 通道 0 中断 DMA 通道 1 中断 DMA 通道 2 中断 DMA 通道 3 中断 DMA 通道 4 中断 DMA 通道 5 中断高速 UART 中断高速 GPIO0 中断

69 第 4 章中断 PLIC 63 成员名称 IRQN_GPIOHS1_INTERRUPT IRQN_GPIOHS2_INTERRUPT IRQN_GPIOHS3_INTERRUPT IRQN_GPIOHS4_INTERRUPT IRQN_GPIOHS5_INTERRUPT IRQN_GPIOHS6_INTERRUPT IRQN_GPIOHS7_INTERRUPT IRQN_GPIOHS8_INTERRUPT IRQN_GPIOHS9_INTERRUPT IRQN_GPIOHS10_INTERRUPT IRQN_GPIOHS11_INTERRUPT IRQN_GPIOHS12_INTERRUPT IRQN_GPIOHS13_INTERRUPT IRQN_GPIOHS14_INTERRUPT IRQN_GPIOHS15_INTERRUPT IRQN_GPIOHS16_INTERRUPT IRQN_GPIOHS17_INTERRUPT IRQN_GPIOHS18_INTERRUPT IRQN_GPIOHS19_INTERRUPT IRQN_GPIOHS20_INTERRUPT IRQN_GPIOHS21_INTERRUPT IRQN_GPIOHS22_INTERRUPT IRQN_GPIOHS23_INTERRUPT IRQN_GPIOHS24_INTERRUPT IRQN_GPIOHS25_INTERRUPT IRQN_GPIOHS26_INTERRUPT IRQN_GPIOHS27_INTERRUPT IRQN_GPIOHS28_INTERRUPT IRQN_GPIOHS29_INTERRUPT IRQN_GPIOHS30_INTERRUPT IRQN_GPIOHS31_INTERRUPT 描述高速 GPIO1 中断高速 GPIO2 中断高速 GPIO3 中断高速 GPIO4 中断高速 GPIO5 中断高速 GPIO6 中断高速 GPIO7 中断高速 GPIO8 中断高速 GPIO9 中断高速 GPIO10 中断高速 GPIO11 中断高速 GPIO12 中断高速 GPIO13 中断高速 GPIO14 中断高速 GPIO15 中断高速 GPIO16 中断高速 GPIO17 中断高速 GPIO18 中断高速 GPIO19 中断高速 GPIO20 中断高速 GPIO21 中断高速 GPIO22 中断高速 GPIO23 中断高速 GPIO24 中断高速 GPIO25 中断高速 GPIO26 中断高速 GPIO27 中断高速 GPIO28 中断高速 GPIO29 中断高速 GPIO30 中断高速 GPIO31 中断 plic_irq_callback_t 描述 外部中断回调函数

70 第 4 章中断 PLIC 定义 typedef int ( plic_irq_callback_t )( void ctx );

71 65 第 5 章 通用输入 / 输出 (GPIO) 5.1 概述 芯片有 8 个通用 GPIO 5.2 功能描述 GPIO 模块具有以下功能 : 可配置上下拉驱动模式 5.3 API 参考 对应的头文件 gpio.h 为用户提供以下接口 gpio_init gpio_set_drive_mode gpio_set_pin gpio_get_pin gpio_init 描述 初始化 GPIO

72 第 5 章通用输入 / 输出 (GPIO) 函数原型 int gpio_init ( void ) 返回值 返回值 描述 0 成功 非 0 失败 gpio_set_drive_mode 描述 设置 GPIO 驱动模式 函数原型 void gpio_set_drive_mode ( uint8_t pin, gpio_drive_mode_t mode ) 参数 参数名称描述输入输出 pin GPIO 管脚输入 mode GPIO 驱动模式输入 返回值 gpio_set_pin 描述 设置 GPIO 管脚值 函数原型

73 第 5 章通用输入 / 输出 (GPIO) 67 void gpio_set_pin ( uint8_t pin, gpio_pin_value_t value ) 参数 参数名称描述输入输出 pin GPIO 管脚输入 value GPIO 值输入 返回值 gpio_get_pin 描述 获取 GPIO 管脚值 函数原型 gpio_pin_value_t gpio_get_pin ( uint8_t pin ) 参数 参数名称描述输入输出 pin GPIO 管脚输入 返回值 获取的 GPIO 管脚值 举例 / 设置 IO13 为输出并置为高 / gpio_init (); fpioa_set_function (13, FUNC_GPIO3 ); gpio_set_drive_mode (3, GPIO_DM_OUTPUT ); gpio_set_pin (3, GPIO_PV_High );

74 第 5 章通用输入 / 输出 (GPIO) 数据类型 相关数据类型 数据结构定义如下 : gpio_drive_mode_t:gpio 驱动模式 gpio_pin_value_t:gpio 值 gpio_drive_mode_t 描述 GPIO 驱动模式 定义 typedef enum _gpio_drive_mode { GPIO_DM_INPUT, GPIO_DM_INPUT_PULL_DOWN, GPIO_DM_INPUT_PULL_UP, GPIO_DM_OUTPUT, } gpio_drive_mode_t ; 成员 成员名称 GPIO_DM_INPUT GPIO_DM_INPUT_PULL_DOWN GPIO_DM_INPUT_PULL_UP GPIO_DM_OUTPUT 描述输入输入下拉输入上拉输出 gpio_pin_value_t 描述 GPIO 值 定义 typedef enum _gpio_pin_value

75 第 5 章通用输入 / 输出 (GPIO) 69 { GPIO_PV_LOW, GPIO_PV_HIGH } gpio_pin_value_t ; 成员 成员名称 GPIO_PV_LOW GPIO_PV_HIGH 描述 低 高

76 70 第 6 章 通用高速输入 / 输出 (GPIOHS) 6.1 概述 芯片有 32 个高速 GPIO 与普通 GPIO 相似, 管脚反转能力更强 6.2 功能描述 GPIOHS 模块具有以下功能 : 可配置上下拉驱动模式 支持上升沿 下降沿和双沿触发 6.3 API 参考 对应的头文件 gpiohs.h 为用户提供以下接口 gpiohs_set_drive_mode gpiohs_set_pin gpiohs_get_pin gpiohs_set_pin_edge gpiohs_set_irq (0.6.0 后不再支持, 请使用 gpiohs_irq_register) gpiohs_irq_register gpiohs_irq_unregister

77 第 6 章通用高速输入 / 输出 (GPIOHS) gpiohs_set_drive_mode 描述 设置 GPIO 驱动模式 函数原型 void gpiohs_set_drive_mode ( uint8_t pin, gpio_drive_mode_t mode ) 参数 参数名称描述输入输出 pin GPIO 管脚输入 mode GPIO 驱动模式输入 返回值 gpio_set_pin 描述 设置 GPIO 管脚值 函数原型 void gpiohs_set_pin ( uint8_t pin, gpio_pin_value_t value ) 参数 参数名称描述输入输出 pin GPIO 管脚输入 value GPIO 值输入 返回值

78 第 6 章通用高速输入 / 输出 (GPIOHS) gpio_get_pin 描述 获取 GPIO 管脚值 函数原型 gpio_pin_value_t gpiohs_get_pin ( uint8_t pin ) 参数 参数名称描述输入输出 pin GPIO 管脚输入 返回值 获取的 GPIO 管脚值 gpiohs_set_pin_edge 描述 设置高速 GPIO 中断触发模式 函数原型 void gpiohs_set_pin_edge ( uint8_t pin, gpio_pin_edge_t edge ) 参数 参数名称描述输入输出 pin GPIO 管脚输入 edge 中断触发方式输入 返回值

79 第 6 章通用高速输入 / 输出 (GPIOHS) gpiohs_set_irq 描述 设置高速 GPIO 的中断回调函数 函数原型 void gpiohs_set_irq ( uint8_t pin, uint32_t priority, void ( func )()); 参数 参数名称 描述 输入输出 pin GPIO 管脚 输入 priority 中断优先级 输入 func 中断回调函数 输入 返回值 gpiohs_irq_register 描述 设置高速 GPIO 的中断回调函数 函数原型 void gpiohs_irq_register ( uint8_t pin, uint32_t priority, plic_irq_callback_t callback, void ctx) 参数 参数名称 描述 输入输出 pin GPIO 管脚 输入 priority 中断优先级 输入 plic_irq_callback_t 中断回调函数 输入

<453A5CCEC4B5B55C C41CBAAB2F5D4C6BDD3BFDACAB9D3C3CBB5C3F756312E305F E646F63>

<453A5CCEC4B5B55C C41CBAAB2F5D4C6BDD3BFDACAB9D3C3CBB5C3F756312E305F E646F63> 霜蝉云 接口使用说明 版本 :V1.00 上海霜蝉信息科技有限公司 Shanghai Scicala Information Technology Co.,Ltd http:www.scicala.com E-mail:support@scicala.com 1 目录目录... 2 一 产品概述...3 二 接口功能...3 三 调用规范...3 四 接口方法...4 1. 用户订阅 Subscribe

More information

i 关于本手册 本文档为用户提供基于 FreeRTOS SDK 开发时的编程指南. 对应 SDK 版本 Kendryte FreeRTOS SDK v0.4.0 (9c7b0e0d23e46e87a2bfd4dd86d1a1f0d3c899e9) 发布说明 日期版本发布说明 V

i 关于本手册 本文档为用户提供基于 FreeRTOS SDK 开发时的编程指南. 对应 SDK 版本 Kendryte FreeRTOS SDK v0.4.0 (9c7b0e0d23e46e87a2bfd4dd86d1a1f0d3c899e9) 发布说明 日期版本发布说明 V K FreeRTOS SDK 编程指南 KENDRYTE 勘智 嘉楠科技版权 2019 KENDRYTE.COM i 关于本手册 本文档为用户提供基于 FreeRTOS SDK 开发时的编程指南. 对应 SDK 版本 Kendryte FreeRTOS SDK v0.4.0 (9c7b0e0d23e46e87a2bfd4dd86d1a1f0d3c899e9) 发布说明 日期版本发布说明 2018-10-12

More information

說 明 會 內 容 全 民 健 保 暨 施 行 細 則 修 正 之 承 保 重 點 與 案 例 說 明 二 代 健 保 實 施 後 就 醫 權 益 更 有 保 障 補 充 保 險 費 知 識 自 我 檢 測 及 討 論 附 錄 全 民 健 康 保 險 保 險 費 負 擔 金 額 表 ( 四 )- 職

說 明 會 內 容 全 民 健 保 暨 施 行 細 則 修 正 之 承 保 重 點 與 案 例 說 明 二 代 健 保 實 施 後 就 醫 權 益 更 有 保 障 補 充 保 險 費 知 識 自 我 檢 測 及 討 論 附 錄 全 民 健 康 保 險 保 險 費 負 擔 金 額 表 ( 四 )- 職 第 二 三 類 投 保 單 位 二 代 健 保 實 務 說 明 會 行 政 院 衛 生 署 全 民 健 康 保 險 局 南 區 業 務 組 說 明 會 內 容 全 民 健 保 暨 施 行 細 則 修 正 之 承 保 重 點 與 案 例 說 明 二 代 健 保 實 施 後 就 醫 權 益 更 有 保 障 補 充 保 險 費 知 識 自 我 檢 測 及 討 論 附 錄 全 民 健 康 保 險 保 險 費

More information

i 关于本手册 本文档为用户提供 Kendryte 硬件技术规格简介 发布说明 日期 版本 发布说明 V0.1.0 初始版本 V0.1.1 修正 SPI 与 GPIO 中错误的描述 V0.1.2 修正第一章节出现的错别字

i 关于本手册 本文档为用户提供 Kendryte 硬件技术规格简介 发布说明 日期 版本 发布说明 V0.1.0 初始版本 V0.1.1 修正 SPI 与 GPIO 中错误的描述 V0.1.2 修正第一章节出现的错别字 K 技术规格书 KENDRYTE 勘智 嘉楠科技版权 2019 KENDRYTE.COM i 关于本手册 本文档为用户提供 Kendryte 硬件技术规格简介 发布说明 日期 版本 发布说明 2018-08-01 V0.1.0 初始版本 2018-09-13 V0.1.1 修正 SPI 与 GPIO 中错误的描述 2018-09-14 V0.1.2 修正第一章节出现的错别字 2018-09-17 V0.1.3

More information

证券代码(A股/H股):000063/ 证券简称:中兴通讯 公告编号:

证券代码(A股/H股):000063/ 证券简称:中兴通讯 公告编号: 2 21,310,164 21,779,131-2.15 10,156,038 10,125,095 0.31 10.58 10.55 0.28 10.57 10.55 0.19-2,271,243-2,336,083 2.78% 0.035 0.240-85.42% 0.33 2.45 2.12 0.35 2.43 2.08 3 2,089 2,292 7,425-457 -2,587 4.2 33,418

More information

Microsoft Word - edu-re~1.doc

Microsoft Word - edu-re~1.doc 前 言 學 習, 可 以 為 個 創 造 未 來 ; 教 育, 能 夠 為 社 會 開 拓 明 對 個 而 言, 教 育 可 以 幫 助 每 個 發 展 潛 能 建 構 知 識 及 提 升 個 素 質 ; 它 賦 予 每 個 掌 握 前 途 和 開 拓 未 來 的 能 力 對 社 會 而 言, 教 育 不 單 可 以 培 育 才, 而 且 具 有 ㆒ 個 更 深 層 的 意 義, 它 給 予 社 會

More information

Microsoft Word - 發布版---規範_全文_.doc

Microsoft Word - 發布版---規範_全文_.doc 建 築 物 無 障 礙 設 施 設 計 規 範 內 政 部 97 年 4 年 10 日 台 內 營 字 第 0970802190 號 令 訂 定, 自 97 年 7 月 1 日 生 效 內 政 部 97 年 12 年 19 日 台 內 營 字 第 0970809360 號 令 修 正 內 政 部 101 年 11 年 16 日 台 內 營 字 第 1010810415 號 令 修 正 目 錄 第 一

More information

概 述 随 着 中 国 高 等 教 育 数 量 扩 张 目 标 的 逐 步 实 现, 提 高 教 育 质 量 的 重 要 性 日 益 凸 显 发 布 高 校 毕 业 生 就 业 质 量 年 度 报 告, 是 高 等 学 校 建 立 健 全 就 业 状 况 反 馈 机 制 引 导 高 校 优 化 招

概 述 随 着 中 国 高 等 教 育 数 量 扩 张 目 标 的 逐 步 实 现, 提 高 教 育 质 量 的 重 要 性 日 益 凸 显 发 布 高 校 毕 业 生 就 业 质 量 年 度 报 告, 是 高 等 学 校 建 立 健 全 就 业 状 况 反 馈 机 制 引 导 高 校 优 化 招 I 概 述 随 着 中 国 高 等 教 育 数 量 扩 张 目 标 的 逐 步 实 现, 提 高 教 育 质 量 的 重 要 性 日 益 凸 显 发 布 高 校 毕 业 生 就 业 质 量 年 度 报 告, 是 高 等 学 校 建 立 健 全 就 业 状 况 反 馈 机 制 引 导 高 校 优 化 招 生 和 专 业 结 构 改 进 人 才 培 养 模 式 及 时 回 应 社 会 关 切 的 一 项

More information

鱼类丰产养殖技术(二).doc

鱼类丰产养殖技术(二).doc ...1...1...4...15...18...19...24...26...31...35...39...48...57...60...62...66...68...72 I ...73...88...91...92... 100... 104... 144... 146... 146... 147... 148... 148... 148... 149... 149... 150... 151...

More information

疾病诊治实务(一)

疾病诊治实务(一) ...1...4...5...8...13...14...15...18...18...19...22...25...26...27...29...30...32...35 I ...38...42...43...45...48...51...53...56...59...60...60...61...63...65...67...69...72...74...77...80...82...84 II

More information

名人养生.doc

名人养生.doc I...1...3...4...6... 11...14...18...22...26...29...31...38...45...49...56...57...59...61...67 ...72...73...75...77...80...83...85...91...92...93...95...96...97... 103... 107... 109... 110... 112... 118...

More information

<4D6963726F736F667420576F7264202D2040B9C5B871A661B0CFABC8AE61C2A7AB55ACE3A8735FA7F5ABD8BFB3B9C5B871A661B0CFABC8AE61C2A7AB55ACE3A8732E646F63>

<4D6963726F736F667420576F7264202D2040B9C5B871A661B0CFABC8AE61C2A7AB55ACE3A8735FA7F5ABD8BFB3B9C5B871A661B0CFABC8AE61C2A7AB55ACE3A8732E646F63> 嘉 義 地 區 客 家 禮 俗 研 究 第 一 章 前 言 嘉 義 地 區 的 客 家 族 群 約 略 可 分 為 福 佬 客 詔 安 客 與 北 部 客 等 三 種 類 別, 其 分 佈 區 域 以 海 線 地 區 平 原 地 形 沿 山 地 區 為 主 有 相 當 多 的 北 部 客 家 人, 是 二 次 大 戰 末 期 和 戰 後 初 期 才 移 民 嘉 義, 是 什 麼 因 素 令 許 多

More information

05301930

05301930 國 立 中 正 大 學 法 學 系 碩 士 論 文 河 川 砂 石 法 規 範 之 探 討 - 以 採 取 土 石 及 挖 掘 河 川 認 定 基 準 為 主 指 導 教 授 : 盧 映 潔 博 士 研 究 生 : 王 瑞 德 中 華 民 國 一 百 零 一 年 五 月 目 錄 第 一 章 緒 論... 1 第 一 節 研 究 動 機... 1 第 二 節 研 究 目 的... 3 第 三 節 研

More information

中老年保健必读(十).doc

中老年保健必读(十).doc ...1...2...3...4...5...6...8...9... 11 - -...13...15...17...18...20...22...23...25...26...28 I II...30...32...34...35...38...40...42...44...46...47...48...50...52...53 X...55...56...57...58...60...61...63...65

More information

23 29 15.6% 23 29 26.2% 3 25 2 15 1 5 1,542 12,336 14,53 16,165 18,934 22,698 25,125 25 2 15 1 5 5,557 7,48 8,877 11, 13,732 17,283 22,485 23 24 25 26

23 29 15.6% 23 29 26.2% 3 25 2 15 1 5 1,542 12,336 14,53 16,165 18,934 22,698 25,125 25 2 15 1 5 5,557 7,48 8,877 11, 13,732 17,283 22,485 23 24 25 26 4, 197823 2916.3%29 335, 23 29.5% 23 29 16.3% 14 35 33,535 14 135 13 125 1,292 1,3 1,38 1,314 1,321 1,328 1,335 3 25 2 15 1 5 1. 1.1 13,582 15,988 1.4 18,322 11.6 11.9 21,192 24,953 3,67 9. 8.7 12 1 8

More information

海淀区、房山区(四)

海淀区、房山区(四) ...1...1...2...7...8...9... 11... 15... 17... 17... 18... 19... 20... 21... 23... 25... 28... 31... 32 I ... 35... 36... 37... 39... 42... 43... 48... 53... 54... 58... 63... 64... 65... 66... 68... 71...

More information

穨ecr1_c.PDF

穨ecr1_c.PDF i ii iii iv 1 2 3 4 5 5555522 6664422 77722 6 7 8 9 10 11 22266 12833 1894 12 13 14 15 16 17 18 19 20 21 22 23 24 25 8.14 2.15 2.18 26 27 28 29 30 31 2.16 2.18 5.23 32 33 34 35 36 37 38 39 40 41 42 43

More information

穨2005_-c.PDF

穨2005_-c.PDF 2005 10 1 1 1 2 2 3 5 4 6 2 7 3 11 4 1 13 2 13 3 14 4 14 5 15 6 16 7 16 8 17 9 18 10 18 2005 10 1 1. 1.1 2 1.2 / / 1.3 69(2) 70(2) 1.4 1.5 1.6 2005 10 1 2. 2.1 2.2 485 20(8) (a) (i) (ii) (iii) (iv) 571

More information

北京理工大学.doc

北京理工大学.doc ( )...1...6...8...10...20...22...24...28...30...32...40 I ...53...55...61 ( )...62...71...74 ( )...77...81...84...86...88...89...91...92...96...99... 110...111... 112 II ... 113... 114... 115... 116...

More information

尲㐵.⸮⸮⸮⸮⸮

尲㐵.⸮⸮⸮⸮⸮ I...1...2...3...4...5...6...8...9...10... 11...12...13...14...15...16...17...18...19...20...21...22...23...24...26 II...27...28...28...29...30...31...32...34...35...36...37...38...39...39...40...41...43...43...44...45...46...47...48...48...49...50

More information

东城区(下)

东城区(下) ...1...1...2...3...9...9... 12... 12... 17... 17... 18... 19... 20... 29... 31... 37... 41... 70... 73 I ... 74... 78... 78... 79... 80... 85... 86... 88... 90... 90... 90... 92... 93... 95... 95... 96...

More information

果树高产栽培技术(一).doc

果树高产栽培技术(一).doc ( ) ...1...1...3...10... 11...12...15...17...18...19...20...22...23...24...26...27...28...30...31...32 I ...36...38...40...41...42...44...45...47...48...49...50...51...52...53...55...58...59...60...61...62...66...67

More information

物质结构_二_.doc

物质结构_二_.doc I...1...3...6...8 --... 11 --...12 --...13 --...15 --...16 --...18 --...19 --...20 --...22 --...24 --...25 --...26 --...28 --...30 --...32 --...34 --...35 --...37 --...38...40 II...41...44...46...47...48...49...51...52...55...58

More information

第一節 研究動機與目的

第一節 研究動機與目的 中 國 文 化 大 學 中 國 文 學 研 究 所 碩 士 論 文 華 嚴 一 真 法 界 思 想 研 究 指 導 教 授 : 王 俊 彥 研 究 生 : 許 瑞 菁 中 華 民 國 98 年 12 月 自 序 在 佛 教 經 典 中 最 初 接 觸 的 是 佛 說 無 量 壽 經, 此 經 乃 大 方 廣 佛 華 嚴 經 的 精 華 版 綱 要 版 為 了 瞭 解 經 義, 深 知 宇 宙 運

More information

水力发电(九)

水力发电(九) ...1...17...20...26...27...30...33...34...36...37...44...47...49...58...77...79...90...96...107 I ...114...115...132...134...137...138...139...140...142...142...144...146...146...146...148...148...149...149...150...151...151...152

More information

中国古代文学家(八).doc

中国古代文学家(八).doc ...1...5...26...27...43...44...48...50...52...54...55...57...60...61...62...63...65...67...68 I ...69...70...71...75...77...78...82...84...95...98...99... 101... 103... 107... 108... 109... 110...111...

More information

景观植物(一)

景观植物(一) ...1...5...6...8... 11...13...15...18...21...23...26...29...43...51 5...53...58...62...63...65 I ...67...70...72...74...76...77...78...80...81...84...85...87...88...90...92...94...97... 109... 113... 115...

More information

Microsoft Word - 目录.doc

Microsoft Word - 目录.doc 教 学 管 理 文 件 汇 编 目 录 教 育 法 规 和 指 导 性 文 件 1. 中 华 人 民 共 和 国 高 等 教 育 法 1 2. 中 华 人 民 共 和 国 教 师 法 8 3. 普 通 高 等 学 校 学 生 管 理 规 定 12 4. 高 等 学 校 学 生 行 为 准 则 18 5. 中 华 人 民 共 和 国 学 位 条 例 19 6. 高 等 学 校 教 学 管 理 要 点

More information

园林植物卷(三).doc

园林植物卷(三).doc I II III IV 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 84k 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65

More information

厨房小知识_一_

厨房小知识_一_ ... 1... 1... 2... 3... 3... 5... 6... 7... 7... 8... 10...11... 12... 13... 15... 17... 18... 19... 19... 20... 23... 24... 24 ... 26... 26... 29... 30... 31... 32... 33... 34... 37... 38... 40... 41...

More information

中南财经大学(七).doc

中南财经大学(七).doc ...1...16...20...22...31...32...34...37...38...40...44...46...54...58...59...60...61 I ...62...63...70...77...79...81...84...90...93...95...95...97... 100... 102... 104... 105... 106... 107... 109... 113

More information

1................................... 1................................... 2......................................... 3......................................... 4.............................. 5.........................................

More information

赵飞燕外传、四美艳史演义

赵飞燕外传、四美艳史演义 \ I... 1...1...8... 9... 9...9...11...13...16...19...22...25...28...33...36...39...42 II...46...48...51...55...58...62... 67...67...70...73...76...79...83...86...89...92...96...99... 102... 105... 108...

More information

厨房小知识(五)

厨房小知识(五) I...1...2...3...4...5...6 ()...7 ()...9...10...10... 11...12...13...14...15...15...16...18...19...20...20...21...21 II...24...27...28...29...29...31...32...33...34...35...36...38...38...39...40...40...41...42...42...43...44...44...47...48...50...50

More information

最新监察执法全书(十八).doc

最新监察执法全书(十八).doc .............. I ..................................................... II .......................................... III ... 2003......... IV ,

More information

园林植物卷(十二).doc

园林植物卷(十二).doc ... 1... 4... 8... 8... 9... 9...11... 13... 15... 20... 23... 30... 31... 36... 39... 40... 43 I ... 47... 52... 57... 60 1... 65 2... 71 (3)... 78... 81... 87... 89... 91... 94... 95... 97 ( )... 100...

More information

华东师范大学.doc

华东师范大学.doc ...1...3...4...5...6...7 ( )...9 ( )...10...16...19...21...22...23...27...27...31...31 I II...33...34 ( )...36 () ( )...44 () ( ) ( )...49 ( )...54...56...60 ( )...64...70...81...89 2004...95...97...99...

More information

國立中山大學學位論文典藏

國立中山大學學位論文典藏 I...1...1...4...4...6...6...13...24...29...44...44...45...46...47...48...50...50...56...60...64...68...73...73...85...92...99...105...113...121...127 ...127...131...135...142...145...148 II III IV 1 2

More information

乳业竞争_一_

乳业竞争_一_ ...1...7...10... 11...14...17...18...19...21...23...25...26...28 50...30...31 48...31 3000...34...35...37 I ...40...44...45...48...50...51...55...56...58...58...60 ()...62 ()...66...71...72...72...73...76...77

More information

最新执法工作手册(十).doc

最新执法工作手册(十).doc ......................................... I ......... 2003....................................... II III............................................................ IV..............................................................

More information

untitled

untitled ...1 1...1...3...5...6...8...8...15...16...19 21...21...24...25...26...29...30...33...36...38...41...41 ( )...41...42...48...48...57...57...63...67...67...67...67...71...74 I ...76...76...79...81...82...82...83...83...83...84...84...85...85...85

More information

最新执法工作手册(十六)

最新执法工作手册(十六) ............................................. I ................................... II ........................... 2001......... III IV......................................... ........................

More information

中国政法大学(六).doc

中国政法大学(六).doc ...1...6...8 2004... 11...15 2003...16...20...29...32...34...38...39...42...43...44...48 I ...53...58...61...63...71...75...77...79...83...91...94...95...98... 100... 102... 102... 105... 106... 107...

More information

胎儿健康成长.doc

胎儿健康成长.doc ...1...2...5...6...7...8...9... 11...13...15...16...17...19...22...22...23...24...25 I II...26...27...30...31...32...33...36...38...38...39...40...43...44...46...46...47...48...50...52...54...55...59 ...62

More information

1. 本文首段的主要作用是 A. 指出 異蛇 的藥用功效 說明 永之人爭奔走焉 的原因 B. 突出 異蛇 的毒性 為下文 幾死者數矣 作鋪墊 C. 交代以蛇賦稅的背景 引起下文蔣氏有關捕蛇的敘述 2. 本文首段從三方面突出蛇的 異 下列哪一項不屬其中之一 A. 顏色之異 B. 動作之異 C. 毒性之

1. 本文首段的主要作用是 A. 指出 異蛇 的藥用功效 說明 永之人爭奔走焉 的原因 B. 突出 異蛇 的毒性 為下文 幾死者數矣 作鋪墊 C. 交代以蛇賦稅的背景 引起下文蔣氏有關捕蛇的敘述 2. 本文首段從三方面突出蛇的 異 下列哪一項不屬其中之一 A. 顏色之異 B. 動作之異 C. 毒性之 1. 本文首段的主要作用是 A. 指出 異蛇 的藥用功效 說明 永之人爭奔走焉 的原因 B. 突出 異蛇 的毒性 為下文 幾死者數矣 作鋪墊 C. 交代以蛇賦稅的背景 引起下文蔣氏有關捕蛇的敘述 2. 本文首段從三方面突出蛇的 異 下列哪一項不屬其中之一 A. 顏色之異 B. 動作之異 C. 毒性之異 3. 太醫以王命聚之 中的 以 字與下列哪一項的 以 意思相同 A. 以齧人 B. 而吾以捕蛇獨存

More information

bnbqw.PDF

bnbqw.PDF 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 ( ( 1 2 16 1608 100004 1 ( 2003 2002 6 30 12 31 7 2,768,544 3,140,926 8 29,054,561 40,313,774 9 11,815,996 10,566,353 11 10,007,641 9,052,657 12 4,344,697

More information

nb.PDF

nb.PDF 3 4 5 7 8 9..10..15..16..19..52 -3,402,247-699,783-1,611,620 1,790,627 : - - -7,493 - -1,687 2,863 1,176 2,863 - -148,617 - - 12,131 51,325 - -12,131-2,165 14-2,157 8-3,393,968-794,198-1,620,094 1,781,367

More information

第三章

第三章 第 三 章 :2017 年 行 政 長 官 產 生 辦 法 - 可 考 慮 的 議 題 行 政 長 官 的 憲 制 及 法 律 地 位 3.01 基 本 法 第 四 十 三 條 規 定 : 香 港 特 別 行 政 區 行 政 長 官 是 香 港 特 別 行 政 區 的 首 長, 代 表 香 港 特 別 行 政 區 香 港 特 別 行 政 區 行 政 長 官 依 照 本 法 的 規 定 對 中 央 人

More information

untitled

untitled 1993 79 2010 9 80 180,000 (a) (b) 81 20031,230 2009 10,610 43 2003 2009 1,200 1,000 924 1,061 800 717 600 530 440 400 333 200 123 0 2003 2004 2005 2006 2007 2008 2009 500 2003 15,238 2009 31,4532003 2009

More information

南華大學數位論文

南華大學數位論文 南 華 大 學 哲 學 與 生 命 教 育 學 系 碩 士 論 文 呂 氏 春 秋 音 樂 思 想 研 究 研 究 生 : 何 貞 宜 指 導 教 授 : 陳 章 錫 博 士 中 華 民 國 一 百 零 一 年 六 月 六 日 誌 謝 論 文 得 以 完 成, 最 重 要 的, 是 要 感 謝 我 的 指 導 教 授 陳 章 錫 博 士, 老 師 總 是 不 辭 辛 勞 仔 細 閱 讀 我 的 拙

More information

Microsoft Word - 3.3.1 - 一年級散文教案.doc

Microsoft Word - 3.3.1 - 一年級散文教案.doc 光 明 英 來 學 校 ( 中 國 文 學 之 旅 --- 散 文 小 說 教 學 ) 一 年 級 : 成 語 ( 主 題 : 勤 學 ) 節 數 : 六 教 節 ( 每 課 題 一 教 節 ) 課 題 : 守 株 待 兔 半 途 而 廢 愚 公 移 山 鐵 杵 磨 針 孟 母 三 遷 教 學 目 的 : 1. 透 過 活 動, 學 生 能 說 出 成 語 背 後 的 含 意 2. 學 生 能 指

More information

第32回独立行政法人評価委員会日本貿易保険部会 資料1-1 平成22年度財務諸表等

第32回独立行政法人評価委員会日本貿易保険部会 資料1-1 平成22年度財務諸表等 1 12,403 2,892 264,553 19,517 238,008 10,132 989 36 9,869 2,218 250 122 ( 126 108 1,563 278 159 260 478 35,563 1,073 74 190,283 104,352 140,658 20,349 16,733 21,607 (21,607) 58,689 303,699 339,262 339,262

More information

Microsoft Word - 08 单元一儿童文学理论

Microsoft Word - 08 单元一儿童文学理论 单 元 ( 一 ) 儿 童 文 学 理 论 内 容 提 要 : 本 单 元 共 分 成 三 个 小 课 目, 即 儿 童 文 学 的 基 本 理 论 儿 童 文 学 创 作 和 儿 童 文 学 的 鉴 赏 与 阅 读 指 导 儿 童 文 学 的 基 本 理 论 内 容 包 括 儿 童 文 学 的 基 本 含 义 儿 童 文 学 读 者 儿 童 文 学 与 儿 童 年 龄 特 征 和 儿 童 文 学

More information

項 訴 求 在 考 慮 到 整 體 的 財 政 承 擔 以 及 資 源 分 配 的 公 平 性 下, 政 府 採 取 了 較 簡 單 直 接 的 一 次 性 減 稅 和 增 加 免 稅 額 方 式, 以 回 應 中 產 家 庭 的 不 同 訴 求 ( 三 ) 取 消 外 傭 徵 費 6. 行 政 長

項 訴 求 在 考 慮 到 整 體 的 財 政 承 擔 以 及 資 源 分 配 的 公 平 性 下, 政 府 採 取 了 較 簡 單 直 接 的 一 次 性 減 稅 和 增 加 免 稅 額 方 式, 以 回 應 中 產 家 庭 的 不 同 訴 求 ( 三 ) 取 消 外 傭 徵 費 6. 行 政 長 2013 年 1 月 23 日 的 立 法 會 會 議 葛 珮 帆 議 員 就 幫 助 中 產 動 議 的 議 案 ( 經 單 仲 偕 議 員 及 莫 乃 光 議 員 修 正 ) 進 度 報 告 在 2013 年 1 月 23 日 的 立 法 會 會 議 上, 由 葛 珮 帆 議 員 就 幫 助 中 產 動 議 的 議 案, 經 單 仲 偕 議 員 及 莫 乃 光 議 員 修 正 後 獲 得 通 過

More information

(f) (g) (h) (ii) (iii) (a) (b) (c) (d) 208

(f) (g) (h) (ii) (iii) (a) (b) (c) (d) 208 (a) (b) (c) (d) (e) 207 (f) (g) (h) (ii) (iii) (a) (b) (c) (d) 208 17.29 17.29 13.16A(1) 13.18 (a) (b) 13.16A (b) 12 (a) 209 13.19 (a) 13.16A 12 13.18(1) 13.18(4) 155 17.43(1) (4) (b) 13.19 17.43 17.29

More information

BT&BLE_Coexistence_Demo__CN.pages

BT&BLE_Coexistence_Demo__CN.pages ESP32 BT&BLE 双模 蓝 牙共存说明 版本 1.0 版权 2018 关于本 手册 本 文档为 ESP32 BT&BLE 双模蓝 牙共存说明 发布说明 日期版本发布说明 V1.0 首次发布 文档变更更通知 用户可通过乐鑫官 网订阅技术 文档变更更的电 子邮件通知 证书下载 用户可通过乐鑫官 网下载产品证书 目录 1. BT&BLE 共存结构图... 1 2. 流程说明... 2 2.1. 初始化流程...

More information

cgn

cgn 3654 ( 571 ) 88(4) 2014 3 31 10766 10778 2014 3 31 ( ) 2 21 ( ) 2014 3 31 10768 10778 6 9 1. ( ) 2. 3. 4. 5. 2014 6 3 ( ) 10768 10778 ( ) 2014 3 31 ( 622 ) 11 80 2014 3 31 2014 6 3 10 8 2014 3 31 ( ) 2014

More information

C++ 程序设计 告别 OJ1 - 参考答案 MASTER 2019 年 5 月 3 日 1

C++ 程序设计 告别 OJ1 - 参考答案 MASTER 2019 年 5 月 3 日 1 C++ 程序设计 告别 OJ1 - 参考答案 MASTER 2019 年 月 3 日 1 1 INPUTOUTPUT 1 InputOutput 题目描述 用 cin 输入你的姓名 ( 没有空格 ) 和年龄 ( 整数 ), 并用 cout 输出 输入输出符合以下范例 输入 master 999 输出 I am master, 999 years old. 注意 "," 后面有一个空格,"." 结束,

More information

ESP-Jumpstart

ESP-Jumpstart 2016-2019 2019 08 08 Contents 1 3 1.1 ESP32.............................. 3 1.2.................................................. 5 2 7 2.1............................................. 7 2.2 ESP-IDF............................................

More information

南華大學數位論文

南華大學數位論文 1 Key word I II III IV V VI 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61

More information

CC213

CC213 : (Ken-Yi Lee), E-mail: feis.tw@gmail.com 49 [P.51] C/C++ [P.52] [P.53] [P.55] (int) [P.57] (float/double) [P.58] printf scanf [P.59] [P.61] ( / ) [P.62] (char) [P.65] : +-*/% [P.67] : = [P.68] : ,

More information

Sipeed Maix-GO 觗怼书 V1.1.docx

Sipeed Maix-GO 觗怼书 V1.1.docx Sipeed Maix-GO 规格书 v1.1 特性 : Datesheet CPU : RISC-V 双核 64bit 内置 FPU 400Mhz 标准频率 ( 可超频 ), 内置神经网络处理器 图像识别 : QVGA@60FPS/VGA@30FPS 音频接口 : 支持 Sipeed R6+1 麦克风阵列板 ( 通过 FPC10 连接器连接 ) 和 2x3W 扬声器 电源管理 : 充电电流达到 2.5A;

More information

马太亨利完整圣经注释—雅歌

马太亨利完整圣经注释—雅歌 第 1 页 目 录 雅 歌 简 介... 2 雅 歌 第 一 章... 2 雅 歌 第 二 章... 10 雅 歌 第 三 章... 16 雅 歌 第 四 章... 20 雅 歌 第 五 章... 25 雅 歌 第 六 章... 32 雅 歌 第 七 章... 36 雅 歌 第 八 章... 39 第 2 页 雅 歌 简 介 我 们 坚 信 圣 经 都 是 神 所 默 示 的 ( 提 摩 太 后 书

More information

二零零六年一月二十三日會議

二零零六年一月二十三日會議 附 件 B 有 关 政 策 局 推 行 或 正 在 策 划 的 纾 缓 及 预 防 贫 穷 措 施 下 文 载 述 有 关 政 策 局 / 部 门 为 加 强 纾 缓 及 预 防 贫 穷 的 工 作, 以 及 为 配 合 委 员 会 工 作, 在 过 去 十 一 个 月 公 布 及 正 在 策 划 的 新 政 策 和 措 施 生 福 利 及 食 物 局 (i) 综 合 儿 童 发 展 服 务 2.

More information

(1) (2) (3) 1. (1) 2

(1) (2) (3) 1. (1) 2 0386 71.32% 14A 1 (1) (2) (3) 1. (1) 2 (a) (b) (i) (ii) (iii) 3 (iv) (a) (b) (c) (d) 6% 4 2013 3 26 [2013]624 10 5 2013 6 28 [2013]1246 2015 3 [2015]351 0.2 6 [2015]748 180C 7 * * 8 14A (2) 417,800,000

More information

(Microsoft Word - 1012-2\256\325\260\310\267|\304\263\254\366\277\375.doc)

(Microsoft Word - 1012-2\256\325\260\310\267|\304\263\254\366\277\375.doc) 國 立 屏 北 高 級 中 學 101 學 年 度 第 2 學 期 第 2 次 校 務 會 議 紀 錄 壹 會 議 名 稱 :101 學 年 度 第 2 學 期 第 2 次 校 務 會 議 貳 時 間 :102 年 6 月 28 日 ( 星 期 五 ) 下 午 13 時 10 分 參 地 點 : 本 校 圖 書 館 四 樓 視 聽 會 議 室 肆 出 列 席 人 員 : 詳 如 簽 到 簿 伍 主

More information

厨房小知识(四)

厨房小知识(四) I...1...2...3...4...4...5...6...6...7...9...10... 11...12...12...13...14...15...16...17...18...18...19...22...22 II...23...24...25...26...27...27...28...29...29...30...31...31?...32...32...33?...33...34...34...35...36...36...37...37...38...38...40

More information

妇女更年期保健.doc

妇女更年期保健.doc ...1...2...3...5...6...7 40...8... 11...13...14...16...17...19...20...21...26...29...30...32 I ...34...35...37...41...46...50...51...52...53...54...55...58...64...65 X...67...68...70...70...74...76...78...79

More information

小儿传染病防治(上)

小儿传染病防治(上) ...1...2...3...5...7...7...9... 11...13...14...15...16...32...34...34...36...37...39 I ...39...40...41...42...43...48...50...54...56...57...59...59...60...61...63...65...66...66...68...68...70...70 II

More information

<4D6963726F736F667420576F7264202D2031303430333234B875B9B5A448ADFBBADEB27AA740B77EA4E2A5555FA95EAED6A641ADD75F2E646F63>

<4D6963726F736F667420576F7264202D2031303430333234B875B9B5A448ADFBBADEB27AA740B77EA4E2A5555FA95EAED6A641ADD75F2E646F63> 聘 僱 人 員 管 理 作 業 參 考 手 冊 行 政 院 人 事 行 政 總 處 編 印 中 華 民 國 104 年 3 月 序 人 事 是 政 通 人 和 的 關 鍵 是 百 事 俱 興 的 基 礎, 也 是 追 求 卓 越 的 張 本 唯 有 人 事 健 全, 業 務 才 能 順 利 推 動, 政 府 施 政 自 然 績 效 斐 然 本 總 處 做 為 行 政 院 人 事 政 策 幕 僚 機

More information

女性青春期保健(下).doc

女性青春期保健(下).doc ...1...4...10... 11...13...14...15...17...18...19...20...21...22...23...24...26...27...30...31 I ...32...33...36...37...38...40...41...43...44...45...46...47...50...51...51...53...54...55...56...58...59

More information

避孕知识(下).doc

避孕知识(下).doc ...1...3...6...13...13...14...15...16...17...17...18...19...19...20...20...23...24...24...25 I ...25...26...26...27...28...28...29...30...30...31...32...34...35 11...36...37...38...40...42...43...44...44...46

More information

孕妇饮食调养(下).doc

孕妇饮食调养(下).doc ...1...2...5...9 7...9...14...15...16...18...22...23...24...25...27...29...31...32...34 I ...35...36...37...39...40...40...42...44...46...48...51...52...53...53...54...55...56...56...58...61...64 II ...65...66...67...68...69...70...71...72...73...74...75...76...77...80...83...85...87...88

More information

禽畜饲料配制技术(一).doc

禽畜饲料配制技术(一).doc ( ) ...1...1...4...5...6...7...8...9...10... 11...13...14...17...18...21...23...24...26 I ...28 70...30...33...35...36...37...39...40...41...49...50...52...53...54...56...58...59...60...67...68...70...71

More information

中老年保健必读(十一).doc

中老年保健必读(十一).doc ...1...2...4...6...8...9...10...12...14...15...17...18...20...22...23...25...27...29 I ...30...32...35...38...40...42...43...45...46...48...52...55...56...59...62...63...66...67...69...71...74 II ...76...78...79...81...84...86...87...88...89...90...91...93...96...99...

More information

i

i i ii iii iv v vi 1 2 3 4 5 (b) (a) (b) (c) = 100% (a) 6 7 (b) (a) (b) (c) = 100% (a) 2 456 329 13% 12 120 7.1 0.06% 8 9 10 11 12 13 14 15 16 17 18 19 20 (a) (b) (c) 21 22 23 24 25 26 27 28 29 30 31 =

More information

怎样使孩子更加聪明健康(七).doc

怎样使孩子更加聪明健康(七).doc ...1...2...2...4...5 7 8...6...7...9 1 3... 11...12...14...15...16...17...18...19...20...21...22 I II...23...24...26 1 3...27...29...31...31...33...33...35...35...37...39...41...43...44...45 3 4...47...48...49...51...52

More information

i

i i ii iii iv v vi 1 g j 2 3 4 ==== ==== ==== 5 ==== ======= 6 ==== ======= 7 ==== ==== ==== 8 [(d) = (a) (b)] [(e) = (c) (b)] 9 ===== ===== ===== ===== ===== ===== 10 11 12 13 14 15 16 17 ===== [ ] 18 19

More information

(i) (ii) (iii) (iv) 380,000 [ ] , , % % % 5.5% 6.5%

(i) (ii) (iii) (iv) 380,000 [ ] , , % % % 5.5% 6.5% [] [] [] [] [] [] [] 1961 40 2,000 1990 [] (i) (ii) 38 (i) (ii) (iii) (iv) 380,000 [ ] 201017,763 201422,457 20152020 7.1% 2010 2020 2010 2015 6.2% 20152020 2010 2015 20152020 7.1% 5.5% 6.5% 2010 2011

More information

女性美容保健(四).doc

女性美容保健(四).doc ...1...4...6...8...9...10... 11...12...13...15...18...20...21...22...26...33...39...43 I II...47...52...53...59...60...63...65...68...69...71...73 1.5 ml...78...79...85...88...90...94...95...97...98...

More information

學 習 內 容 元 素 一 直 透 過 中 小 學 校 課 程 相 關 課 題 培 養, 如 : 小 學 常 識 科 人 文 學 科 和 科 學 科 等 這 些 從 沒 有 因 為 德 育 及 國 民 教 育 科 課 程 指 引 在 2012 年 擱 置 而 有 任 何 改 變 4. 教 育 局 持

學 習 內 容 元 素 一 直 透 過 中 小 學 校 課 程 相 關 課 題 培 養, 如 : 小 學 常 識 科 人 文 學 科 和 科 學 科 等 這 些 從 沒 有 因 為 德 育 及 國 民 教 育 科 課 程 指 引 在 2012 年 擱 置 而 有 任 何 改 變 4. 教 育 局 持 立 法 會 CB(4)1287/14-15(01) 2015 年 7 月 15 日 會 議 討 論 文 件 立 法 會 教 育 事 務 委 員 會 在 學 校 推 行 德 育 及 公 民 教 育 前 言 本 文 件 旨 在 就 學 校 教 育 中 推 行 德 育 及 公 民 教 育 的 進 展 ( 包 括 基 本 法 教 育 及 推 廣 對 一 國 兩 制 的 認 識 ), 匯 報 德 育 及 公

More information

int *p int a 0x00C7 0x00C7 0x00C int I[2], *pi = &I[0]; pi++; char C[2], *pc = &C[0]; pc++; float F[2], *pf = &F[0]; pf++;

int *p int a 0x00C7 0x00C7 0x00C int I[2], *pi = &I[0]; pi++; char C[2], *pc = &C[0]; pc++; float F[2], *pf = &F[0]; pf++; Memory & Pointer trio@seu.edu.cn 2.1 2.1.1 1 int *p int a 0x00C7 0x00C7 0x00C7 2.1.2 2 int I[2], *pi = &I[0]; pi++; char C[2], *pc = &C[0]; pc++; float F[2], *pf = &F[0]; pf++; 2.1.3 1. 2. 3. 3 int A,

More information

untitled

untitled 45 43 71 48 50 177 45 19 43 19 CEO 178 50 16 8 8011 1159 1191 2358 509 8276 907 3708601() 179 1181 10698305 756 71 1246 1315 48 180 509 28 39 41 41 28 39 181 41 41 182 36 8315 3708 1499 5.28 15 C3 5.34

More information

新婚夫妇必读(九).doc

新婚夫妇必读(九).doc ...1...3...4...5...9...9...10...12...14 3...19...20...22...27...28...30...31...35...37 I 13...39...44...48...49...50...51...54...55...58...60...62...63...66...67...68...70...71 TOP10...73...77...79...80

More information

FEELING COMFORTABLE ABOUT SEX

FEELING COMFORTABLE ABOUT SEX 轻 松 性 谈 只 要 你 轻 松 自 然 的 面 对 自 己 的 性 生 活, 就 能 轻 松 自 然 的 与 人 谈 性 " 1. 自 幼 开 始 用 直 接 而 尊 重 的 态 度 来 解 释 男 孩 子 割 包 皮 和 女 孩 子 的 生 殖 器 官 是 什 么 回 事 让 儿 女 明 白 上 帝 所 创 造 的 身 体 是 可 爱 的. 当 幼 儿 开 始 对 自 己 的 身 体 产 生

More information

390 1975 23 664 25 117 1986 Km % % % I 3.61 23.1 387.8 15.4 35.8 A 2.21 14.1 300.1 11.9 33.44 B 1.40 9.0 87.7 3.5 2.36 II 6.11

More information

婴幼儿护理(四).doc

婴幼儿护理(四).doc I...1 &...6...10 5...15...18...21...25...27...29...33...37...38...39 9...40...48...53...57...57 3...58 II...60...61...62...67...70...71...71...72...75...79...80...81...85...86...87...88 20...89...93...94...96...98...99

More information

小儿疾病防治(四).doc

小儿疾病防治(四).doc ...1...3...6...10...12...13...14...15...17...20...21...22...23...23...24...25 B...28...31...32 I ...33...35...37...40...41...43 X...44...45...47...49...50...52...52...54...56...57...59...61...62...62...63...66

More information

企業策略期中報告2..doc

企業策略期中報告2..doc 1 DRAM...2 I. DRAM...2 II. DRAM...2 III. DRAM...3...15 I....15 II....17 III....19 IV....19...22 I....22 II....22 III....23 IV....23...24 I. DRAM II. DRAM 1. 2 III. DRAM 1. DRAM 3 2. DRAM 4 5 6 3. DRAM

More information

怎样使孩子更加聪明健康(五).doc

怎样使孩子更加聪明健康(五).doc ...1...8...13...19...22...27...35...37 0-1...43...47...50...54...58...62...64...66...71...76...78 I ...81...83...84...86...87...88...90...92...93...94...97...99... 102... 105... 109... 110...111 ABC...

More information

ii

ii 1 7 1 213 16 1 401258) H183 17M ........................................................................ ii.................................................................. 1...................................................................

More information

名人养生.doc

名人养生.doc ( 20 010010) 787 1092 1/32 498.50 4 980 2004 9 1 2004 9 1 1 1 000 ISBN 7-204-05940-9/R 019 1880.00 ( 20.00 ) I...1...3...4...6... 11...14...18...22...26...29...31...38...45...49...56...57...59...61...67

More information

常见病防治(二).doc

常见病防治(二).doc ( 20 010010) 787 1092 1/32 498.50 4 980 2004 9 1 2004 9 1 1 1 000 ISBN 7-204-05940-9/R 019 1880.00 ( 20.00 ) ...1...9...17...25...34...41...49...54...55...55...57...64...65...67...68...69...69...70...71

More information

Policy Agenda

Policy Agenda ( ) 2 3 4 5 6 7 8 16 9 1 0 6 8% 7 0% 260 1 1 1 2 1 3 1 4 3 6 0 2 0 0 6 1 5 1 5 1 9 1 6 1 7 75% 1 8 2 1 1 9 2 0 2 0 2 0 2 1 2 0 00 1 0 00 15 24 2 2 2 3 2 4 2 5 2 6 2 7 2 8 2 9 3 0 3 1 2 3 2 3 3 3 3 4 3

More information

未命名-2

未命名-2 2 3 4 5 18 6 7 8 1,430 28 15 24 9 1 0 1 1 1 2 85% 260 1 3 1 4 1 5 15 29 1 6 1 7 200 6 1 8 75% 21 1 9 2006 2 0 2 1 2020 2 2 360 2 3 360 2006 2 4 2 5 2 6 2 7 2 8 2 9 3 0 3 1 3 2 3 3 3 4 3 5 3 2 3 6 3 7 3

More information