课程来自百问网:https://www.100ask.net
stm32f103c8 开发板开发步骤 上手思路 芯片原厂下载资料:《数据手册(product specifications)》、《参考手册(reference manuals)》,如 st 官网 下载公板或者其它开发板配套资料:原理图,一般卖家会根据硬件送配套的原理图。 根据《原理图》分析硬件,如最小系统 根据示例程序和《参考手册》编写程序 最小系统 用最少得电路组成单片机可以工作的系统,一般包括
单片机芯片 电源电路 时钟电路 复位电路 启动选择电路 调适下载 单片机开发方式 使用汇编操作寄存器:执行效率高,兼容性差,编程效率低 使用 c 语言操作寄存器:执行效率适中,兼容性差,编程效率适中 使用库开发(以 st 为例) 标准库(不维护):执行效率低,兼容性一般,编程效率高 hal 库:执行效率低,兼容性好,编程效率高 搭建开发环境 安装开发工具:keil 软件特点:编写代码自由度比较高,但是需要手动引入程序中使用到的库文件,需要自己有良好的代码架构能力。
安装完成后,需要下载对应板子 rom
devices 页面 search 窗口搜索:stm32f103c8 选中 stm32f103c8 选项 下载 rom ,此步骤会跳到官网(翻墙后才能访问?),然后下载 .pack 文件 安装 .pack 文件后即代表 rom 安装完成 安装开发工具:stm32cubeprg 软件特点:有大量模板方法,写代码需要遵循代码格式写,st 公司提供软件,有很多可视化的操作。
将此工具生成的代码使用 keil 打开
安装烧录工具:100ask_stm32f103_tools 百问网开发的 ide 工具,用于向 stm32f103_mini 开发板烧录固件
编写 led 灯控制程序 需求:闪烁 led 灯
应用版本:6.4.0
创建工程 file -> new project part number 中输入芯片名称 stm32f103c8 选中芯片后,点 start project 配置工程 找原理图中芯片控制 led 的引脚,根据图可以看到引脚名称是 pa1
pa1 名称中: p 为 peripheral,代表外围设备 a 为外围设备代号,比如 pa, pb, pc... 1 为引脚值,代表第 1 个引脚,可以根据 pa1 定位到特定引脚,定位引脚后就可以向此引脚输入/输出值了 在工程中,找到 pa1 引脚,设置属性为 gpio_output (代表输出点流) 进入 project manager 页,输入 project name,如 code1_createproject,选择存放路径 设置 toolchain / ide 为 mdk-arm (因为 keil 为 mdk-arm 项目) ide 左侧选择 code generetor 标签,generated files 选中 generate peripheral initialization as a pair of '.c/.h' files per peripheral 复选框,此功能可以将 c 文件和 h 文件分开 ide 右上侧点击 generate code 生成后可以点击弹窗的 open project 打开项目,也可以点击 open folder 打开目录,然后在 mdk-arm 目录中打开 .uvprojx 文件(使用 keil ide 打开) 编程 点击左上角 build 按钮(用于查找函数文档) keil ide 中找到 main.c 文件 只能在 /* user code begin n */ 与 /* user code end n */ 之前写代码,不然会被 stm32cubeprg 覆盖 找到 /* user code begin 3 */,添加如下代码hal_gpio_writepin(gpioa, gpio_pin_1, gpio_pin_reset); // 向 pa1 引脚写入 reset 值hal_delay(1000); // 延迟 1000 毫秒hal_gpio_writepin(gpioa, gpio_pin_1, gpio_pin_set); // 向 pa1 引脚写入 set 值hal_delay(2000); 选中 hal_gpio_writepin 函数,点击 f12 键,进入源码,查看函数各参数含义 烧录 点击 build 编译程序 打开 ide: 100ask_stm32f103_tools,点击 “选择文件”,打开文件选择器 选择 path/to/code1_createproject/mdk-arm/code1_createproject/code1_createproject.hex 文件 点击开始下载,下载完成后,led 灯会亮 1 秒然后灭 2 秒一直循环
华为星河AI网络解决方案荣获AI训练场景最佳实践沙利文“全球技术领导奖”
太阳能浮漂水质监测站的基础支架组成
变流器和变频器的区别
一氧化碳控制系统不要主机有影响吗
变频串联谐振试验装置的耐压试验有哪些注意事项?
七天物联网智能家居实战学习笔记(二)
NVIDIA GTX 1060拆解评测:供电接口亮了!
硬件怎样为打造智慧社区出力
中国联通今年将对局端10G PON进行规模部署2020年将进一步扩大范围
致远测评工作室:投影仪好用吗?国产投影仪品牌排行榜
工业一体全国产方案,米尔T113核心板
机器人静电喷涂不均匀的原因
F123S工业万用示波表的产品概述和功能特点
安森美在ASPENCORE全球电子成就奖和亚洲金选奖中获得多项荣誉
集成处理器行业发展现状及主方向分析
基于TMS320C6416芯片实现ASP视频编码器的设计及应用
WiMAX 2 802.16m标准明年上市
一文盘点最新最全面的iphone X “黑科技”:A11处理器、无线充电、face id……
造成三相电动机单相运行的原因是什么
电源电路的PCB设计原理图