体外诊断原理与设计-第5讲-F103基准工程创建_第1页
体外诊断原理与设计-第5讲-F103基准工程创建_第2页
体外诊断原理与设计-第5讲-F103基准工程创建_第3页
体外诊断原理与设计-第5讲-F103基准工程创建_第4页
体外诊断原理与设计-第5讲-F103基准工程创建_第5页
已阅读5页,还剩16页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

体外诊断仪器原理与设计PrincipleandDesignofInVitroDiagnosticInstrument第5讲F103基准工程创建

1理论基础TheoreticalBasis“5.12四款体外诊断实验平台液面检测与移液实验平台(IVD1)直线加样与液路清洗实验平台(IVD2)全自动移液移杯实验平台(IVD3)液路凝块检测实验平台(IVD4)3体外诊断实验平台控制板STM32芯片介绍STM32芯片微控制器,也称单片机(单片微型计算机),是一种集成电路的芯片。典型微控制器由CPU(运算器、控制器)、RAM、ROM和IO端口(输入输出)组成。

5Keil编辑和编译以及STM32下载过程6STM32参考资料7《STM32参考手册》《STM32芯片手册》《STM32固件库使用手册》《Cortex-M3与Cortex-M4权威指南》《STM32F1开发标准教程》集成开发环境:MDK-ARM(ARM公司)串口助手:sscom(聂小猛-丁丁)硬件平台:四款体外诊断实验平台B型USB线:通信、调试调试器:ST-Link调试器DbgIVD调试组件8可调用绝大部分工程中编写的函数资源占用极少支持函数返回值显示支持调试参数多使用方便,通过串口就能调试TaskProc模块——任务结构体和任务列表9//任务结构体typedefstruct{u16run;

//任务运行标记:0-任务已执行,1-任务未执行u16timer;

//运行间隔计数器u16itvTime;//计数器重载值void(*taskHook)(void);//待运行的任务函数}StructTaskCtr;//任务定义

//任务列表staticStructTaskCtrs_arrTaskComps[]={{0,100,100,DbgIVDScan},//DbgIVD扫描任务{0,10,10,ScanKey},//按键扫描任务{0,250,250,IVDxProc},//IVD任务{0,500,500,LEDTask},//LED闪烁任务};TaskProc模块——任务标记流程10staticvoidTaskRemarks(StructTaskCtr*taskComps){u16i=0;

for(i=0;i<(sizeof(s_arrTaskComps)/sizeof(StructTaskCtr));i++)//逐个任务时间处理

{if(taskComps->timer)//时间不为0{taskComps->timer--;//减去一个节拍

if(taskComps->timer==0)//时间减完了

{taskComps->timer=taskComps->itvTime;//恢复计时器值,从新下一次

taskComps->run=1;//任务可以运行

}}

if(i<(sizeof(s_arrTaskComps)/sizeof(StructTaskCtr))-1){taskComps++;//指针递增,处理下一个任务

}

}}TaskProc模块——任务执行流程11staticvoidTaskCallBack(StructTaskCtr*taskComps){u16i=0;for(i=0;i<(sizeof(s_arrTaskComps)/sizeof(StructTaskCtr));i++)//逐个任务时间处理

{if(taskComps->run)//时间不为0{taskComps->taskHook();//运行任务

taskComps->run=0;//标志清0}if(i<(sizeof(s_arrTaskComps)/sizeof(StructTaskCtr))-1){taskComps++;//指针递增,执行下一个任务

}}}设计思路DesignIdeas“5.212STM32工程模块分组及说明13STM32工程模块名称和说明14模块名称说明App应用层应用层包括Main、硬件应用和软件应用文件Alg算法层算法层包括项目算法相关文件,如心电算法文件等HW硬件驱动层硬件驱动层包括STM32片上外设驱动文件,如UART1、Timer等OS操作系统层操作系统层包括第三方操作系统,如μC/OSIII、FreeRTOS等TPSW第三方软件层第三方软件层包括第三方软件,如STemWin、FatFs等FW固件库层固件库层包括STM32相关的固件库,stm32f10x_gpio.c和stm32f10x_gpio.h文件ARMARM内核层ARM内核层包括启动文件、NVIC、SysTick等与ARM内核相关的文件应用层模块构成15设计流程DesignProcess“这次实验以一个基准工程的创建为主线,分为16个步骤,通过学习理论基础和设计思路,按照设计流程标准化设置Keil软件,并创建和编译工程,最后将编译生成的.axf文件下载到体外诊断控制板,验证以下基本功能:两个LED(LD0和LD1)每500ms交替闪烁;通过串口助手发送help指令将打印调试信息,并能通过串口助手使用IVD调试组件。5.316设计流程17步骤1:Keil软件标准化设置步骤2:新建存放工程的文件夹步骤3:复制和新建文件夹步骤4:新建一个工程步骤5:选择对应的STM32型号步骤6:关闭ManageRun-TimeEnvironment步骤7:删除原有分组并新建分组步骤8:向分组添加文件步骤9:勾选UseMicroLIB步骤10:勾选CreateHEXFile步骤11:添加宏定义和头文件路径步骤12:程序编译步骤13:通过ST-Link下载程序步骤14:安装CH340驱动步骤15:通过串口助手查看和调试步骤16:查看体外诊断控制板的工作状态拓展设计ExtendedDesign“5.418拓展设计19

实验完成后,严格按照程序设计的步骤,进行软件标准化设置、创建STM32工程、编译并生成.axf文件、将程序下载到体外诊断控制板,查看运行结果,并通过串口助手软件发送指令给体外诊断控制板,查看指令执行情况。然后,查找相关资料,使用“02.相关软件\STM32ST-LINKUtility”文件夹中的STM32ST-LINKUtility.exe,通过ST-Link下载.hex文件到STM32的内部Flash。思考题Questions“5.520思考题211. 为什么要对Keil进行软件标准化设置?2. 体外诊断控制板上的STM32芯片的型号是什么?该芯片的内部Flash和内部SRAM的大小分别是多大?3. 简单描述一下DbgIVD调试组件的特点和使用流程。4. TaskProc模块是怎样实现多个任务协调执行的?怎样控制每个任务执行的时间间隔?5. F103基准工程主要由哪些部分组成?其应用层又可以分为哪些模块?6. 在创建STM32

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论