iheatpasswordiheatpassword
首页
页面
记录
园林植物图鉴
Nextcloud
Home Assistant
首页
页面
记录
园林植物图鉴
Nextcloud
Home Assistant
  • 部署mosquitto
  • 如何查看mosquitto的配置
  • 如何查看mosquitto的用户,以及添加用户
  • 如何更改mosquitto密码配置文件所有者
  • 如何绘制风玫瑰图
  • 添加日历账户
  • cml调整分辨率
  • HA的网页后台端口
  • HomeKit 无法连接 Home Assistant
  • iOS导出语音备忘录
  • iOS导出照片
  • Keil如何安装芯片包
  • Keil如何新建stm32项目
  • ubuntu cs2闪退

新建项目

可以用STM32CubeMx通过图形、选项式生成HAL库的基本外设配置 也可以用标准外设库StdPeriph_Lib。标准库ST已经宣布停止更新了

一、新建项目文件夹
  1. 创建一个项目文件夹如myproject,并创建其子文件夹User,Libraries,Application。并在Libraries目录下再新建CMSIS子文件夹;
  2. 打开STM32F10x_StdPeriph_Lib_V3.6.0文件夹;
  3. 将\Project\STM32F10x_StdPeriph_Template中的main.c, stm32f10x-conf.h, stm32f10x_it.c, stm32f10x_it.h,复制到User文件夹。system_stm32f10x.c先不用复制;User文件夹粘贴完成后如下图所示: 粘贴完成后的User文件夹
  4. 回到STM32F10x_StdPeriph_Lib_V3.6.0目录下,进入Libraries文件夹。将整个STM32F10x_Stdperiph_Driver复制到Libraries文件夹,也可以根据需求裁剪;
  5. 回到\Libraries目录下,进入\CMSIS\CM3\CoreSupport文件夹。将core_cm3.c, core_cm3.h复制到myproject\Libraries\CMSIS;
  6. 回到\CM3目录下,进入DeviceSupport文件夹。一直进入第一个文件夹,直到进入arm文件夹。将对应容量的启动文件复制到myproject\Libraries\CMSIS;

容量

|后缀|英文全称|核心含义|Flash 容量划分| |:-😐:-😐:-😐:-😐 |ld|Low density|低密度型|8KB ~ 32KB| |cl|Compact|精简型 / 紧凑型|16KB ~ 32KB| |md|Medium density|中密度型|64KB ~ 128KB| |hd|High density|高密度型|128KB ~ 512KB| |xl|Extra large density|超大容量型|512KB ~ 2048KB(2MB)| value line 就是对应版本的成本优化版,一般是砍外设

  1. 回到\STMF10x目录下。将stm32f10x.h, system_stm32f10x.c, system_stm32f10x.h文件复制到myproject\Libraries\CMSIS;CMSIS文件夹粘贴完成后如下图所示: 粘贴完所有内核文件的CMSIS文件夹
  2. 建议保存一个模板文件夹,下次新建工程就可以直接复制。不过要注意startup文件要根据芯片容量更换。
二、新建项目文件
  1. 打开uVision;
  2. 点击project并选择New Project;keil11
  3. 选择步骤一中新建的项目文件夹;
  4. 输入项目名称并点击保存;这里应该还有一个Application文件夹

这里新建项目后项目文件夹应如下图所示:

项目文件夹

  1. 选择软件包并点击OK(软件包需要提前安装,可在菜单栏的这里选择芯片组);keil9
  2. 在随后弹出的窗口选择Cancel;keil8
  3. 点击菜单栏的文件夹管理图标;keil7
  4. 删除Source Group 1;keil6
  5. 依次新建User, Application, StdPeriph_Driver, CMSIS, StartUp文件组;keil12
  6. 在User中添加main.c, stm32f10x_it.c keil5keil4keil3
  7. 重复第十步,为StdPeriph添加需要的外设库,如GPIO,RCC等;这里忘记添加rcc了
  8. 重复第十步,为CMSIS添加core_cm3.c, system_stm32f10x.c;keil0
  9. 重复第十步,直到进入CMSIS文件夹后发现没有startup_stm32f10x_**.s文件。此时选择文件类型为All files,再添加对应启动文件;keil add startup filekeil add proj items
  10. 点击OK;
  11. 点击菜单栏的“魔法棒”图标弹出如下窗口;keil options
  12. 点击C/C++选项卡,在Define栏中输入STM32F10X_**, USE_STDPERIPH_DRIVER。**指代对应的芯片容量;keil include4
  13. 点击Include Paths,弹出如下窗口;keil include3keil include2
  14. 依次添加各个有头文件的文件夹,添加完后点击OK;keil includekeil include header
三、其余设置
  1. 在“魔法棒”窗口中,选择Output窗口,勾选Create HEX File。这个16进制文件可以用于串口上传程序;keil output setting
  2. 在Debug选项卡,可以点击右上角的选项框选择仿真调试和上传程序的方式;keil debug2
  3. 点击Setting弹出以下窗口;keil debug3keil debug
  4. 点击Flash Download,勾选Reset and Run,点击确定;keil debug setting
  5. 在“魔法棒”窗口点击OK后展开左侧Project栏,点击进入main.c,应该能得到如下结果;keil main
  6. 删掉22行以后的代码,只保留#include stm32f10x.h。重写main函数
   int main()
   {
	   while(1)
	   {
	   
	   }
	}   
  1. 点击菜单栏“单箭头压箱子”的Build图标,等待一小会后查看Build Output栏中的输出结果。0 Error(s), 0 Warning(s).说明新建的项目基本上没啥问题;keil build

keil output 如何配置时钟以及其他外设,详见STM32

Prev
Keil如何安装芯片包
Next
ubuntu cs2闪退