当前位置: 首页 > news >正文

微企免费网站建设南昌网站推广排名

微企免费网站建设,南昌网站推广排名,中国人做跨电商有什么网站,wordpress图片sslSTM32软件安装新建工程 1.软件安装#xff1a;1.1Keil5 MDK安装1.2安装器件支持包离线安装支持包在线安装支持包 1.3软件注册#xff1a;1.4安装驱动STLINK驱动JLink驱动在此文件夹下USB转串口 2.新建工程2.1STM32开发方式#xff1a;1.寄存器2.标准库3.HAL库 固件库压… STM32软件安装新建工程 1.软件安装1.1Keil5 MDK安装1.2安装器件支持包离线安装支持包在线安装支持包 1.3软件注册1.4安装驱动STLINK驱动JLink驱动在此文件夹下USB转串口 2.新建工程2.1STM32开发方式1.寄存器2.标准库3.HAL库 固件库压缩包说明新建工程步骤总体建立工程文件夹工程文件夹里建立Start、Library、User等文件夹建立Start文件夹建立User文件夹编译器需注意的问题基于寄存器开发的演示修改字体编码等建立Library文件夹 添加文件到Keil中 定义USE_STDPERIPH_DRIVERFlash Download里勾选Reset and Run 库函数编程1.使能时钟2.配置端口模式3.配置GPIO的输出电平 工程架构主动执行的部分被动执行的部分 1.软件安装 安装Keil5 MDK 安装器件支持包 软件注册 安装STLINK驱动 安装USB转串口驱动 1.1Keil5 MDK安装 如果之前安装了KeilC51可以直接选择C51的安装目录这样两个软件可以共存了 没有的话新建文件夹Keil5就可以了名称不要带有特殊字符和中文国外软件可能对中文会存在一些问题 选好文件路径后Pack会自动变化直接Next即可 安装完成后会弹出是否需要安装ULINK的驱动ULINK是Keil公司开发的调试器点击 是 即可 1.2安装器件支持包 安装器件支持包是Keil5才需要安装的Keil4和之前的老版本不需要安装是因为现在ARM的芯片型号非常多升级换代的速度也快Keil软件不能出一款芯片就升级一下软件而且同时支持所有型号的芯片占用内存非常大所以芯片的器件支持包就被独立出来了开发哪种芯片就安装对应的支持包就好了如果没有安装支持包在新建工程时不会出现相应的器件型号 现在这个软件是C51和MDK共存的情况如果想切换为C51只需在下拉列表中选择Legacy Device传统设备即可 离线安装支持包 可以用浏览器到网站上下载下载好支持包之后再离线安装 根据要开发的器件型号选择相应的支持包直接双击目标路径会自动选择安装时的目录 直接点击Next即可重新打开Keil5会发现安装了新的支持包了 在线安装支持包 开发其他芯片找型号很方便防止找不到器件支持包 点击绿色按钮弹出的就是Pack Install界面 这里可以用来安装支持包并且所有可以用Keil软件来开发的芯片都可以找到就是网速较慢 下面提示的就是正在获取的东西右边有进度条显示进度。由于我的没联网显示的是Cannot read 如果点进来没有自动获取可以点更新按钮获取最新列表 可以看到就有很多器件公司 点击安装对应器件系列的DFP文件安装就会自动下载DFP文件并且自动安装上 1.3软件注册 Keil必须用管理员身份运行。其余自行了解 注册成功后就可以不用管理员身份运行了 1.4安装驱动 STLINK驱动 D:\Keil_v5\ARM\STLink\USBDriver 在Keil安装目录下面有 amd64就是64位的x86是32位的根据电脑选择合适驱动 JLink驱动在此文件夹下 USB转串口 是ch340的驱动 CH341ESR.EXE。要注意有一些USB转串口不是用的340芯片哦 2.新建工程 2.1STM32开发方式 1.寄存器 和51一样程序直接控制配置寄存器。最底层效率最高但是由于STM32结构复杂寄存器太多不推荐这种开发方式 2.标准库 库函数ST官方提供的封装好的函数调用这些函数直接配置寄存器由于ST对寄存器封装地比较好这种方式既能满足对寄存器的配置对开发人员也比较友好有利于提高开发效率需要库函数压缩包即固件库的文件标准库函数压缩包 3.HAL库 适合快速上手STM32同时移植效果更好但是隐藏了底层逻辑如果对STM32不熟悉就只能停留在很浅的水平。 推荐51用寄存器开发STM32推荐标准库开发后面提高效率开发再学HAL库开发配合RTOS开发 固件库压缩包说明 STM32F10x_StdPeriph_Lib_V3.5.0 STM32标准固件库里面的文件说明 1._htmresc文件夹 两张图片没啥用 2.Libraries文件夹 存放的库函数文件要用到 3.Project文件夹 官方提供的工程示例和模板以后使用库函数的时候可以进行参考 4.Utilities文件夹 官方评估板的相关例程官方用STM32做的一个小电路板用来测评STM32的 5.Release_Notes.html发布文档 版本说明 6.stm32f10x_stdperiph_lib_um.chm使用手册 教如何使用这个库函数有时间可以看 新建工程步骤 总体 1.建立工程文件夹Keil中新建工程选择型号 2.工程文件夹里建立Start、Library、User等文件夹复制固件库里面的文件到工程文件夹(为添加工程文件准备的建文件夹是因为文件比较多需要分类管理文件夹的名称和数量没有限制按照自己的理解来建就可以需要用的文件一定要复制到工程文件夹里不要添加工程文件夹外面的文件不然外面的文件挪位置工程里就找不到文件。保持工程的独立性) 3.工程里对应建立Start、Library、User等同名称的分组然后将文件夹内的文件添加到工程分组里在Keil里方便管理文件因为Keil没法直接添加文件夹所以还得重复在Keil里建立分组然后添加文件.h文件不参加编译也添加进来的原因因为.h文件需要经常打开看加进来比较方便 4.工程选项C/CInclude Paths内声明所有包含头文件的文件夹因为Start、Library等文件夹是自己建的Keil软件并不知道要用自己文件夹里的.h文件就必须声明一下这个路径 5.工程选项C/CDefine内定义USE_STDPERIPH_DRIVER使用库函数的条件编译其他工程在这个位置还声明了 一个STM32F103X_MD的字符串Keil5在新建工程后就自动声明好了这个不需要再额外声明了 6.工程选项Debug下拉列表选择对应调试器SettingsFlash Download里勾选Reset and Run 建立工程文件夹 Keil中新建工程文件夹名称方便改但是工程名称不方便改选择器件型号 Manage Run-Time Enviroment 新建工程小助手可帮助快速新建工程暂时不用 此时工程已建好 工程文件夹里建立Start、Library、User等文件夹 建立Start文件夹 1.Stm32的启动文件 STM32F10x_StdPeriph_Lib_V3.5.0\Libraries\CMSIS\CM3\DeviceSupport\ST\STM32F10x\startup\arm 全选复制粘贴到Start文件夹下 2.STM32的外设寄存器描述文件、时钟配置文件和函数 STM32F10x_StdPeriph_Lib_V3.5.0\Libraries\CMSIS\CM3\DeviceSupport\ST\STM32F10x文件夹下 stm32f10x.h是STM32的外设寄存器描述文件和51单片机的头文件REGX52.H一样。描述STM32有哪些寄存器和它对应的地址的 system_stmf10x.c和.h文件时用来配置时钟的STM32主频72MHz就是system文件里的函数配置的 stm32f10x.h、stm32f10x.h、stm32f10x.三个文件粘贴到Start文件夹下 STM32由内核和内核外围的设备组成而且内核的寄存器描述和外围设备的描述文件不是在一起的所以还需添加内核寄存器的描述文件 3.内核寄存器的描述文件 STM32F10x_StdPeriph_Lib_V3.5.0\Libraries\CMSIS\CM3\CoreSupport core_cm3.h和core_cm3.c两个文件 这两个文件就是内核的寄存器描述还带了一些内核的配置函数所以有一个.c文件 全粘贴到Start文件夹下 建立User文件夹编译器需注意的问题 target下添加组改名User新建main.c文件注意要放到User文件夹下 右键插入头文件 写好代码注意最后一行要空行要不然会报警告 编译并建立工程官方最新发的KeilMDK没有自带v5编译器官方也不提供ARM Compiler5了需要自己下载一个 注意选择这个v5版本 此时还没有添加STM32的库函数所以此时还是基于寄存器开发的工程 基于寄存器开发的演示修改字体编码等 查找好对应的寄存器编写代码控制寄存器 第一个寄存器打开GPIOC的时钟、 第二个寄存器配置PC13口的模式 第三个寄存器给PC13口输出数据 可以看出来这种方式需要不断地查手册来了解每个寄存器的每一位都是干啥的 扳手处可以选择修改编码格式UTF-8可以防止中文乱码、字体大小ASM和C/C修改大小、tab缩进一般选4 建立Library文件夹 添加文件到Keil中 STM32F10x_StdPeriph_Lib_V3.5.0\Libraries\STM32F10x_StdPeriph_Driver\src文件夹 STM32的标准外设库驱动 但是misc.c是内核的库函数其他是内核外的外设库的库函数 全选复制粘贴到Library文件夹下 STM32F10x_StdPeriph_Lib_V3.5.0\Libraries\STM32F10x_StdPeriph_Driver\inc 标准外设驱动库的头文件 全选复制粘贴到Library文件夹下 但是固件库的文件此时还不能直接使用还需要 STM32F10x_StdPeriph_Lib_V3.5.0\Project\STM32F10x_StdPeriph_Template文件夹 stm32f10x_conf.h、stm32f10x_it.c和stm32f10x_it.h三个文件 Stm32f10x_conf.h configuration配置库函数头文件的包含关系的还有用来参数检查的函数定义这是所有库函数都需要的 Stm32f10x_it.c 和it.h 用来存放中断函数的 这三个文件复制粘贴到User目录下 工程里对应建立Start、Library、User等同名称的分组然后将文件夹内的文件添加到工程分组里 选中该组再单击即可完成改名 添加存在的文件到组里来文件类型选择All files 启动文件有很多分类但是我们只能添加其中一个对应器件的FLASH内存容量大小来选择启动文件 Value Line 超值系列简写 Low Density Medium Density High Density EXtra Large Connectivity Line 剩下的C文件和头文件就都添加进来 工程选项C/CInclude Paths内声明所有包含头文件的文件夹 这些文件都是STM32最基本的文件不需要我们修改添加就可。文件图标带了小钥匙意味着只读的文件 唯一需要更改的就是User组里的文件 工程选项里面要添加上这个文件夹的头文件路径否则Keil软件找不到.h文件 新建路径把Start、User、Library的文件夹路径添加进来 可以点击此处调整文件顺序 定义USE_STDPERIPH_DRIVER 工程选项C/CDefine内定义USE_STDPERIPH_DRIVER 打开stm32f10x.h头文件滑到最后面此处为条件编译如果定义了USE_STDPERIPH_DRIVER使用标准外设驱动这个字符串才会包含“stm32f10x_conf.h”需复制这个字符串粘贴到此处 Flash Download里勾选Reset and Run 工程选项Debug下拉列表选择对应调试器SettingsFlash Download里勾选Reset and Run 默认是ULINK要选择对应的烧录器STLINK Debugger再点击右边的settings按钮 在FLASH download中勾选 Reset and Run。这样下载程序之后会立马复位并执行不然下载之后还要按复位按键才能执行 库函数编程 1.使能时钟 库函数有这样一个函数RCC_APB2PeriphcClockCmd选择外设选择状态 //APB2外设时钟控制 可以右键调到函数定义有函数简介和参数说明 内部其实还是配置RCC_APB2ENR这个寄存器但是经过函数包装可以不用去查手册来确认哪一位是干什么的。虽然代码长但是语义更加明确也不需要再查找计算寄存器的值了。只需要调用库函数按照提示把参数填好就行 2.配置端口模式 注释里的东西没办法右键跳转就可以查找ctrlf搜索定义的位置 此处转GPIO.Pin的定义时出现了一个框说明它的定义有多个。 选择member这一项双击即可但是这里面的原理需要细究弄清楚才行 3.配置GPIO的输出电平 工程架构 主动执行的部分 startup_xx.s启动文件 程序执行最基本的文件 汇编语言写的启动文件定义了中断向量表中断服务函数等 中断服务函数有一个复位中断这就是整个程序的入口。上电复位或者按键复位后程序就进入复位中断函数执行 复位中断函数主要做两个事 1.调用SystemInit函数 2.调用main函数 对应启动文件 复位的中断函数调用SystemInit,再调用main然后程序结束但是main会设置有死循环 SystemInit函数是定义在这个system开头的.c里的 函数的作用设置微控制器的启动初始化嵌入式闪存接口、锁相环、更新系统内核的时钟变量 note写的这个函数仅在复位后需要调用 下面的是配置的东西。这些都不需要我们更改 只需要知道在main函数之前单片机就执行了一堆东西了把闪存接口、时钟等一系列杂散的东西都配置好了 另外启动文件还定义了STM32所有的其他中断 中断函数的定义就在stm32f10x_it里面打开Keil可以看到 ST建议把中断写到这个位置但写在别的地方也可以可以哪里用就哪里写 可以自己定义一些用户文件来封装一些模块供主函数和中断调用。有利于程序结构的模块化 被动执行的部分 相当于STM32的资源在主函数或者中断函数可以调用这些资源 stm32f10x.h和core.cm3.c/.h就是外设和内核外设的寄存器描述 这里面都是寄存器和寄存器每一位的名字还有地址信息等如果直接调用这些寄存器来使用STM32就是寄存器的开发方式这么多麻烦啊 所以ST公司提供了misc.c/.h stm32f10x_xxx.c/.h 库函数 和 stm32f10x_conf.h 库函数配置 这每个外设都提供了一大堆的函数这些函数封装了寄存器的操作给我们提供更加人性化的函数调用方式只要学会了这些操作套路那配置外设就很简单 conf.h文件就是配置头文件的包含关系conf文件include了所有的库函数头文件。同时在stm32f10x.h最后又包含了 stm32f10x_conf.h (conf文件)所以使用这些库函数时只需要包含stm32f10x.h这一个头文件就相当于包含了所有的库函数文件这样就可以任意的调用库函数了
http://www.tj-hxxt.cn/news/227072.html

相关文章:

  • 公司网站建设汇报厦门网站搜索引擎优化
  • 手机网站页面设计尺寸扬州网站建设哪家好
  • 免费自创网站学python可以做什么
  • wordpress一定要本地建站吗游戏app软件开发公司
  • 哈尔滨seo网站管理个人艺术作品网站建设策划书
  • 课桌公司网站建设个人网站做博客还是做论坛
  • dedecms做网站视频牙膏的网站建设
  • 做网站优化给业务员提成成都网站建设制作公司
  • 网站建设 网站制作广州优秀网站设计
  • 长沙市做网站公司有创意的logo设计图片
  • 网站开发存在的风险seo培训优化课程
  • nodejs做企业网站哪个网站可以做分期
  • 专门做优惠劵的网站谷德设计网入口
  • 手机网站开发升上去如何在木上做网站
  • 做原创短视频网站网站下载怎么做
  • 建立装修网站设计厦门商务网站建设
  • 实时开奖走势网站建设保密和档案网站建设方案
  • 微站网站建设网站企业网银登录
  • 重庆网站建设套餐徐州专业网站建设
  • 响应式 购物网站模板下载商业网站的域名代码
  • 商城网站微信支付接口申请流程建德网页制作公司
  • 2017网站设计如何报价企业网站排版规则
  • 郑州做网站公司有哪些模板网站优
  • 实训网站建设的心得总结查询企业联系方式的软件
  • 网站用哪个数据库网站开发环境搭建
  • 国外建站数据wordpress修改登陆地址后缀
  • 如何搭建php网站凌风wordpress视频
  • wordpress建站教程费用网页代理访问
  • 网站如何做优化排名吃什么补肾气效果好
  • 网站上的链接怎么做的怎么查一个网站是什么程序做的