




已阅读5页,还剩24页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
精品文档 1欢迎下载 实验一 实验一 STM32STM32 的开发环境与简单工程的开发环境与简单工程 一 实验目的一 实验目的 1 熟悉 STM32 开发板的开发环境 2 熟悉 MDK 创建和配置 STM32 工程项目的基本流程 3 熟悉 STM32 官方库的应用 4 规范编程格式 二 实验内容二 实验内容 本次实验配置 MDK 集成开发环境 新建一个简单的工程文件 添加 STM32 官方库并配 置工程 编译运行这个工程文件 下载已经编译好的文件到开发板中运行 学会在程序中 设置断点 观察系统内存和变量 为调试应用程序打下基础 三 预备知识三 预备知识 基本单片机硬件知识 单片机软件编程语言 程序创建和调试的基本方法 四 实验设备及工具四 实验设备及工具 硬件 STM32 开发平台 软件 STM32 官方库 PC 机操作系统 Windows 98 Windows 2000 或 Windows XP KEIL MDK 集成开发环境 串口转 usb 驱动 五 实验步骤五 实验步骤 1 在准备存放工程文件的目录下创建一新文件夹 命名为 Proj GPIO 在 Proj GPIO 文件夹里面分别再创建四个文件夹 CMSIS USER LIB OBJ 如图 1 其中 CMSIS Cortex Microcontroller Software Interface Standard 用于存放 精品文档 2欢迎下载 Cortex M 处理器系列的与供应商无关的软件抽象层和启动相关的代码文件 USER 用于存放我们自己编写的代码文件 含自己移植的底层驱动 还有 MDK 工程 LIB 存放所有的官方底层驱动库文件 OBJ 用于工程输出的过程文件和最终的二进制文件 图 1 2 将官方库 STM32F10 x StdPeriph Lib V3 5 0 rar 解压 1 把 STM32F10 x StdPeriph Lib V3 5 0 Libraries CMSIS CM3 CoreSupport 下的所 有文件和 STM32F10 x StdPeriph Lib V3 5 0 Libraries CMSIS CM3 DeviceSupport ST STM32F10 x 下的所有文件都到第一步所创建的 CMSIS 文件夹中 2 把 STM32F10 x StdPeriph Lib V3 5 0 Libraries STM32F10 x StdPeriph Driver 目 录下的文件 目录 inc 和 scr 复制到第一步创建的 LIB 文件夹中 3 把 STM32F10 x StdPeriph Lib V3 5 0 Project STM32F10 x StdPeriph Template 目 录下的 stm32f10 x conf h stm32f10 x it c stm32f10 x it h 三个文件复制到 USER 文件夹中 3 打开 MDK 软件 新建一个工程 Proj GPIO 保存到 Proj GPIO USER 中 CPU 选择 STM32F103ZE 如图 2 精品文档 3欢迎下载 图 2 4 新建一个空文档 main c 保存到 USER 中 然后根据绝对路径将文件对应添加到工程 中 如右图 5 配置工程属性 右键点击工程文件中的 Target 1 选择 Options for Target Target 1 打开工程选项对话框 做如下修改 1 Output 选项勾选 Create HEX File 然后点击 Select Folder for Objects 按钮定 位输出文件保存目录到工程的 OBJ 文件 2 Listing 选项 同样点击 Select Folder for Listings 定位输出文件保存目录到 工程的 OBJ 文件 3 C C 选项 Define 中填入 STM32F10X HD USE STDPERIPH DRIVER 系 统的两个基本宏定义 配置 Include Paths 属性 加入工程中包含头文件的目录 如 右图 精品文档 4欢迎下载 4 后面 Debug 和 Utilities 两个选项如果使用 J link 或者其他调试器则需要做对应 的修改 否则不用 6 根据实验任务硬件原理图编写代码实现四个按键控制 led 灯亮灭 1 其中用户按键和 LED 原理图如下 图 5 2 根据原理图初始化各 IO 引脚 编写控制函数 然后主函数中调用 函数名称 函数名称 io init 函数功能 初始化函数功能 初始化 PA0 PE2 PE3 PE4 为输入口为输入口 PE5 PB5 为输出口为输出口 参数参数 无无 void io init GPIO InitTypeDef gpin init struct 使能每个使能每个 IO 口的时钟口的时钟 RCC APB2PeriphClockCmd RCC APB2Periph GPIOA ENABLE RCC APB2PeriphClockCmd RCC APB2Periph GPIOB ENABLE RCC APB2PeriphClockCmd RCC APB2Periph GPIOE ENABLE gpin init struct GPIO Pin GPIO Pin 0 PA0 引脚引脚 gpin init struct GPIO Speed GPIO Speed 2MHz IO 速度为速度为 2MHz gpin init struct GPIO Mode GPIO Mode IPD 下拉模式下拉模式 GPIO Init GPIOA A 口按键口按键 gpin init struct GPIO Pin GPIO Pin 5 gpin init struct GPIO Speed GPIO Speed 2MHz gpin init struct GPIO Mode GPIO Mode Out PP GPIO Init GPIOB B 口口 led1 GPIO Init GPIOE E 口口 led2 gpin init struct GPIO Pin GPIO Pin 2 GPIO Pin 3 GPIO Pin 4 gpin init struct GPIO Speed GPIO Speed 2MHz gpin init struct GPIO Mode GPIO Mode IPU 上拉模式上拉模式 GPIO Init GPIOE E 口按键口按键 精品文档 5欢迎下载 函数名称函数名称 key led 函数功能函数功能 根据按键情况控制根据按键情况控制 led 灯的亮灭灯的亮灭 s1 s2 控制控制 led1 s3 s4 控制控制 led2 参数参数 无无 其他 其中其他 其中 LED1 ON LED1 OFF LED2 ON LED2 OFF 为全局宏定义为全局宏定义 void key led if GPIO ReadInputDataBit GPIOE GPIO Pin 4 0 LED1 ON if GPIO ReadInputDataBit GPIOE GPIO Pin 3 0 LED1 OFF if GPIO ReadInputDataBit GPIOE GPIO Pin 2 0 LED2 ON if GPIO ReadInputDataBit GPIOA GPIO Pin 0 1 LED2 OFF 精品文档 6欢迎下载 3 代码编写完成后编译链接 通过下载软件将 hex 文件下载到实验板中运行验证 include stm32f10 x h define LED2 ONGPIO ResetBits GPIOB GPIO Pin 5 define LED2 OFFGPIO SetBits GPIOB GPIO Pin 5 define LED1 ONGPIO ResetBits GPIOE GPIO Pin 5 define LED1 OFFGPIO SetBits GPIOE GPIO Pin 5 void io init void key led int main io init while 1 key led 精品文档 7欢迎下载 精品文档 8欢迎下载 实验二 实验二 ucosucos 操作系统的移植操作系统的移植 一 实验目的一 实验目的 1 掌握 ucos 到 STM32 的移植方法 2 熟悉通过 C 语音处理底层寄存器的技巧 3 了解 STM32 在 ucos 任务切换时的处理 4 规范编程格式 二 实验内容二 实验内容 本次实验通过用 C 语言编写 6 个操作系统相关函数和用汇编语言编写 4 个与处理器相 关的函数 将实时操作系统 C OS 移植到芯片 STM32F103ZE 中 并创建两个用户任务点 亮 led 学会操作系统的移植方法 深入掌握嵌入式操作系统 C OS 在初始化任务和任 务调度的实现方法 直观了解实时操作系统的体系结构和设计思想 三 预备知识三 预备知识 基本单片机硬件知识 单片机软件编程语言 程序创建和调试的基本方法 ucos 操作 系统的任务调度原理 STM32 的寄存器架构 四 实验设备及工具四 实验设备及工具 硬件 STM32 开发平台 软件 STM32 官方库 PC 机操作系统 Windows 98 Windows 2000 或 Windows XP KEIL MDK 集成开发环境 串口转 usb 驱动 五 实验步骤五 实验步骤 1 按实验一的步骤新建一个工程 Proj2 ucos 2 将移植好的 ucos 源代码整个拷贝到我们的新建的工程目录中 然后按对应的文件 路径添加到 keil 工程里 os dbg c 和 os dbg r c 只添加一个 如图 6 和图 7 精品文档 9欢迎下载 图 6 图 7 3 配置工程相关属性 与实验一库应用配置一样 记得将 ucos 的头文件路径添加到 工程的 include path 上面去 找到 stm2f10 x it c 的 PendSV Handler 函数注释掉 main 文件中将 includes h 包含进来 主函数为空 编译通过 4 在 main c 中建立 sys init 函数编写操作系统运行需要的硬件相关初始化 见代 码 然后修改 stm32f10 x it c 中的系统心跳中断函数并加入头文件 includes h 见代码 函数名称 函数名称 sys init 函数功能 嵌套向量中断优先级分组 时钟心跳定时初始化函数功能 嵌套向量中断优先级分组 时钟心跳定时初始化 1 200 s 参数参数 无无 void sys init NVIC PriorityGroupConfig NVIC PriorityGroup 2 SysTick Config SystemCoreClock 200 brief This function handles SysTick Handler param None retval None void SysTick Handler void OSIntEnter OSTimeTick OSIntExit 精品文档 10欢迎下载 5 编写用户任务函数和相关的初始化 函数名称函数名称 led init 函数功能函数功能 初始化初始化 LED 参参 数数 其其 他 他 void led init GPIO InitTypeDef gpin init struct RCC APB2PeriphClockCmd RCC APB2Periph GPIOB RCC APB2Periph GPIOE ENABLE gpin init struct GPIO Pin GPIO Pin 5 gpin init struct GPIO Speed GPIO Speed 2MHz gpin init struct GPIO Mode GPIO Mode Out PP GPIO Init GPIOB B 口口 led1 GPIO Init GPIOE E 口口 led2 精品文档 11欢迎下载 函数名称函数名称 my task 函数功能函数功能 用户任务用户任务 参参 数数 其其 他 他 void my task sys init led init OSStatInit while 1 LED1 ON LED2 OFF OSTimeDly 50 LED1 OFF LED2 ON OSTimeDly 100 精品文档 12欢迎下载 6 最后在主函数中创建任务并启动操作系统 编译并调试运行 实验三 实验三 ucosucos 操作系统的任务通信操作系统的任务通信 一 实验目的一 实验目的 1 掌握 ucos 任务间通信的各种方法 include stm32f10 x h include includes h define LED2 ONGPIO ResetBits GPIOB GPIO Pin 5 define LED2 OFFGPIO SetBits GPIOB GPIO Pin 5 define LED1 ONGPIO ResetBits GPIOE GPIO Pin 5 define LED1 OFFGPIO SetBits GPIOE GPIO Pin 5 OS STK task stk 128 void my task void void led init void void sys init void int main OSInit OSTaskCreate my task void 0 OS STK OSStart while 1 精品文档 13欢迎下载 2 了解嵌入式操作系统任务间可能出现的资源冲突 3 掌握 ucos 中信号量和邮箱的应用 4 规范编程格式 二 实验内容二 实验内容 本次实验通过用 C 语言编写基于 ucos 操作系统下的多个用户任务 并且实现任务间的 正确通信 通过信号量处理公共资源的等待和使用 通过邮箱实现任务间的多个数据变量 的传递 建立正确的操作系统编程理念 深入掌握 C OS 中信号量与邮箱的创建和使用 了解各任务间通信方法的大概原理及优缺点 三 预备知识三 预备知识 基本单片机硬件知识 单片机软件编程语言 程序创建和调试的基本方法 ucos 操作 系统的任务调度原理 四 实验设备及工具四 实验设备及工具 硬件 STM32 开发平台 软件 STM32 官方库 PC 机操作系统 Windows 98 Windows 2000 或 Windows XP KEIL MDK 集成开发环境 串口转 usb 驱动 五 实验步骤五 实验步骤 1 建立基于操作系统 C OS 的工程 Proj3 ucos1 并配置好工程各项属性 2 创建用户任务文件 task c 和 task h 两个文件 详细代码如下 task c 文件代码文件代码 include task h INT32U NUM COUNT1 INT32U NUM COUNT2 void test sem void void my task while 1 test sem void test sem INT8U sem err INT32U tmp tmp NUM COUNT1 OSTimeDlyHMSM 0 0 0 50 用延时代替任务的其他任务用延时代替任务的其他任务 tmp NUM COUNT1 tmp OSSemPend NUM COUNT 500 tmp NUM COUNT2 OSTimeDlyHMSM 0 0 0 50 用延时代替任务的其他任务用延时代替任务的其他任务 tmp NUM COUNT2 tmp OSSemPost NUM COUNT 精品文档 14欢迎下载 代码中 在 task1 c 中定义两个全局变量 NUM COUNT1 和 NUM COUNT2 两个变量在 my task 函数里用于记录该任务循环的总次数 区别在与 NUM COUNT1 直接操作 而 NUM COUNT2 则 通过信号量的方法进行操作 task h 文件代码文件代码 ifndef MY TASK H define MY TASK H include includes h extern OS EVENT NUM COUNT extern void my task void endif 精品文档 15欢迎下载 3 在 main 函数中初始化操作系统后创建一个信号量 NUM COUNT 然后用 OSTaskCreate 创 建两个任务 优先级分别是 8 和 9 两个任务的入口地址都是 task1 c 文件中的 my task 函数 4 编译通过后调试 在 debug 界面中 将 NUM COUNT1 NUM COUNT2 两个全局变量加入到 变量观察窗口 watch1 中 然后在 task c 的 my task 函数里面设置断点 运行并观察两个 变量的变化 理解信号量的使用 5 关于操作系统邮箱的应用由例子工程 Proj3 ucos2 实现 请自行理解代码 NUM COUNT OSSemCreate 1 创建一个信号量创建一个信号量 OSTaskCreate my task void 0 OS STK OSTaskCreate my task void 0 OS STK 精品文档 16欢迎下载 实验四 实验四 ucosucos 操作系统的文件系统实现操作系统的文件系统实现 一 实验目的一 实验目的 1 了解文件系统 FATFS 的基本实现原理 2 掌握 FATFS 的移植步骤 3 掌握基于 ucos 中 FATFS 的应用 4 掌握 STM32 对 SD 卡的读写操作 5 规范编程格式 二 实验内容二 实验内容 本实验实现将 FAT 文件系统移植到 ucos 中 并基于 ucos 的文件系统编写用户任务进 行测试 通过对文件系统的移植实验深入掌握对嵌入式相关驱动移植的基本步骤 建立正 确的嵌入式操作系统驱动移植理念 并且熟悉掌握 ucos 操作系统下的文件系统的基本应用 了解其优缺点 三 预备知识三 预备知识 基本单片机硬件知识 单片机软件编程语言 程序创建和调试的基本方法 ucos 操作 系统的任务调度原理 STM32 单片机中的 SD 卡驱动 文件系统的操作函数 FAT 文件系统 的基础知识 四 实验设备及工具四 实验设备及工具 硬件 STM32 开发平台 软件 PC 机操作系统 Windows 98 Windows 2000 或 Windows XP KEIL MDK 集成开发环 境 串口转 usb 驱动 STM32 官方库 FATFS 的官方库 STM32 的 uart 驱动和 SD 卡驱动源 码 五 实验步骤五 实验步骤 1 拷贝实验三的所有代码到新的目录地下 删除 USER 和 OBJ 文件夹里工程相关的文件 重新建立实验四的工程并命名为 Proj4 FATFS 配置好工程各项属性 精品文档 17欢迎下载 2 在 USER 文件夹里面创建文件夹 myapp 将串口驱动 uart 和 SD 卡驱动 sdio sdcard 的源代码拷贝到该文件夹 里面 并添加到工程中 USER 3 拷贝 FAT 文件系统源码到 myapp 文件夹 在 keil 的工 程中增加一个文件夹 FATFS 并添加 diskio c ff c cc936 c 三个文件到里面 如右图 4 尝试编译字符表文件 cc936 c 可能发现出错 error directive This file is not needed in current configuration 这是因为在 ff h 中 CODE PAGE 这个宏的 定义值不是 936 和长文件名宏定义 USE LFN 的值不是 1 导致的 修改成对应的值后该文件 的编译即可通过 如果用其他字符表文件同理 5 移植 FAT 文件系统需要做的事情 1 FATFS 是一个通用的文件系统模块 用于在小型嵌入式系统中实现 FAT 文件系统 FatFs 的编写遵循 ANSI C 因此不依赖于硬件平台 它可以嵌入到便宜的微控制器中 如 8051 PIC AVR SH Z80 H8 ARM 等等 不需要做任何修改 FATFS 源代码的获取 可 以到官网下载 http elm chan org fsw ff 00index e html 解压文件会得到两个文件 夹 一个是 doc 文件夹 保存 FATFS 的一些使用文档和说明 另一个是 src 文件夹 保存 代码源文件 FAT 文件系统源码和 sd 卡读写的底层驱动 2 移植 FAT 文件系统只需根据硬件中可能接入的物理存储模块对文件系统的底层 IO 驱动 diskio c 进行修改 具体需要修改的函数有 DSTATUSDSTATUS disk initializedisk initialize BYTE BYTE 存储介质的初始化 DSTATUSDSTATUS disk statusdisk status BYTE BYTE 读取存储介质的状态 DRESULTDRESULT disk readdisk read BYTE BYTE BYTE BYTE DWORD DWORD BYTE BYTE 读取数据 DRESULTDRESULT disk writedisk write BYTE BYTE constconst BYTE BYTE DWORD DWORD BYTE BYTE 写入数据 DRESULTDRESULT disk ioctldisk ioctl BYTE BYTE BYTE BYTE void void 读取存储介质文件系统相关信息 DWORDDWORD get fattimeget fattime void void 返回文件系统的时间 3 diskio c 文件中添加头文件 sdio sdcard h ff h 增加 SD 卡的驱动号 0 如下 Correspondence between physical drive number and physical drive define SD CARD0 define ATA1 define MMC2 define USB3 精品文档 18欢迎下载 4 diskio c 五个函数具体代码 DSTATUS disk initialize BYTE drv Physical drive nmuber 0 switch drv case SD CARD SD 卡卡 if SD Init SD OK return RES OK else return RES NOTRDY return RES NOTRDY DSTATUS disk status BYTE drv Physical drive nmuber 0 switch drv case SD CARD SD 卡卡 if SD GetStatus SD TRANSFER ERROR return STA NOINIT else return STA PROTECT default return STA NODISK 精品文档 19欢迎下载 DRESULT disk read BYTE drv Physical drive nmuber 0 BYTE buff Data buffer to store read data DWORD sector Sector address LBA BYTE count Number of sectors to read 1 255 switch drv case SD CARD for count 0 count if SD ReadBlock buff sector 0 count if SD WriteBlock uint8 t buff sector 22 if SD ReadBlock RxBuffer 0 512 SD OK for i 0 i 512 i printf X RxBuffer i 精品文档 22欢迎下载 7 如果上一步能初始化并检测出 SD 卡的大小 读出前 512 个字节的数据 则说明 SD 卡和驱动函数都正常 下一步设计一个 FAT 测试函数 实现检测 TEST txt 文件是否存在 存在则读取文件中的前 100 个字节内容并串口输出 然后打开 TEST2 txt 文件 不存在则 创建 写入读取到的内容 没有内容则写入 is no file TEST txt 打开 TEST2 txt 读取文件中的前 100 个字节内容并串口输出 具体代码如下 void test FAT FATFS fs FIL f 1 f 2 INT32U read count 21 FRESULT error error f mount 0 挂载挂载 SD 卡卡 error f open if error FR OK error f read printf n rread the file TEST txt n r printf read 100 bytes then return d bytes n r read count printf the data is n r printf char RxBuffer error f close error f open printf n rwrite test2 txt d words n r read count error f write if error FR OK printf write OK d words are writed n r read count else printf write error n r error f close error f open if error FR OK error f read printf n rread the file TEST2 txt n r printf read 100 bytes then return d bytes n r read count printf the data is n r printf char RxBuffer error f close 精品文档 23欢迎下载 8 至此 我们已经将 FATFS 移植成功了 下面我们设计一个基于 ucos 的文件系统应 用实验 实现在用户中检测是否有 SD 卡插入 如果有则任务没循环一次在 SD 卡中的文件 mytask txt 的末尾写入一句 这是本任务的第 xx 次循环 然后在主函数中创建两个以上 的该任务的线程 这里需要注意实验三的资源冲突问题 9 具体代码 详见实例工程 扩展知识 1 在本工程中的 SD 底层驱动中 因为用 32 位存储 SD 卡的容量大小 所 以最大只能识别到 4GB 如果采用大于 4G 的卡进行测试则读出的容量是错误的 扩展知识 2 对于 FAT32 的 MBR 区不一定是在 0 扇区中 精品文档 24欢迎下载 扩展知识 3 配置 ff h 可能是 ffconf h 文件中 USE STRFUNC 宏定义为 1 可以 使用 f putc f puts f printf f gets f eof f error 等函数 精品文档 25欢迎下载 实验五 基于实验五 基于 ucosucos 操作系统的网络模块操作系统的网络模块 一 实验目的一 实验目的 1 了解 W5500 网络模块的基本实现原理 2 掌握 ucos 下网络底层库的移植步骤 3 掌握基于 ucos 的网络编程 TCP UDP 思路 4 了解嵌入式软件设计的分层思路 二 实验内容二 实验内容 本实验通过 STM32 的 SPI 协议读写 W5500 网络模块 移植网络协议驱动到 ucos 嵌入式 操作系统 并通过编写 ucos 操作系统的应用任务实现实验板和上位机的网络通信 了解基 于网络通信的嵌入式软件设计的思路 三 预备知识三 预备知识 本实验要求学生具备基本的 C 语言读写能力 基本单片机软硬件知识 了解 SPI 协议 了解基础的网络协议应用 ucos 操作系统的用户任务设计能力 四 实验设备及工具四 实验设备及工具 硬件 STM32 开发平台 PC 机 软件 keilMDK 编程环境 串口转 usb 驱动 STM32 官方库 移植好的 ucos 源码 基于 STM32 的 SPI 驱动库 基于 STM32 的 uart 驱动库 W5500 网络模块驱动库 五 实验步骤五 实验步骤 1 了解网络编程中 socket UDP 的基本实现原理 2 了解 W5500 网络模块的基本功能和官方驱动库提 供的代码架构 W5500 是一款全硬件 TCP IP 嵌入式以太网 硬 件 层 用 户 任 务 层 应 用 驱 动 层硬 件 驱 动 层 W5500 c W5500 h STM32的SPI接口 W5500网络模块 socket c socket h 用户任务程序 wizchip c wizchip h 精品文档 26欢迎下载 开始 硬件资源的初始化 复位W5500模块并检测 网线物理连接是否有效 设置IP等多项网络参数 监测SOCKET连接 并做出对应处理 监测UDP连接并做 出对应处理 控制器 为嵌入式系统提供了更加简易的互联网连接方案 W5500 集成了 TCP IP 协议 栈 10 100M 以太网数据链路层 MAC 及物理层 PHY 使得用户使用单芯片就能够 在他们的应用中拓展网络连接 原厂公司位于韩国 中文官网 W5500 的驱动可在官网中找到下载 下载解压后的目录 Ethernet 为 W5500 的官方驱动 库 其中 W5500 c 和 W5500 h 提供 W5500 的硬件接口函数 实现对 W5500 寄存器的读写驱 动 socket c 和 socket h 提供网络协议 socket 的 API 实现和用户接口函数 wizchip conf c 和 wizchip h 提供对芯片应用驱动和配置接
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 项目经理季度工作总结模板
- 九年级语文期末考试试卷合集
- 现代医院管理与服务质量提升方案
- 房地产项目市场调研与风险评估
- 电商平台客服工作标准流程详解
- 数控机床操作规程及安全培训
- 建设工程资料归档清单与管理流程
- 材料管理与质量控制制度
- 旅游旺季与淡季的观光航空服务成本差异分析-洞察及研究
- 情感分析在智能翻译中的应用-洞察及研究
- 围手术期高血压专家管理共识
- 呼吸内科临床诊疗指南及操作规范
- 外科患者疼痛护理与管理
- 2024年共青团入团考试测试题库及答案
- 韩信点兵与中国剩余定理
- 2024年度网站域名合作契约
- 中国心力衰竭诊断和治疗指南2024解读(完整版)
- 第1章 直线与方程章末题型归纳总结(解析版)
- 眼球破裂伤护理查房
- Unit 1 (知识清单)-2024-2025学年三年级英语上学期期中复习讲练测(译林版三起·2024秋)
- 2024年秋季新人教版八年级上册物理全册教案(2024年新教材)
评论
0/150
提交评论