提示:文章包括省事部分和学会部分

文章目录

  • 前言
  • 一、想自己写在哪里学?
  • 二、省事直接下载作者写好的
    • 1.部分代码
    • 2.工程模板包
  • 总结

前言

笔者学习了STM32F103ZET6和STM32F104ZGT6两款单片机,平时做项目一般都用这两款芯片。但是笔者当时但是还不会自己做这两块芯片的PCB电路板,所以只能购买现有的系统板,这些系统板一般尺寸都很大,很多场景不适合。在一个项目中,负责人提出必须使用F103C8T6开发板。起初笔者采用“破解”的方式,直接往源目录里添加128K的驱动文件,也能让程序在单片机里跑起来。但是心里总觉得不是很稳,就决定模仿正点原子的工程模板写一版出来。

一、想自己写在哪里学?

话部多说,先上链接: 正点原子的M3教学视频
这个教学视频所教授的芯片并非STM32F103C8T6,但是由于两款芯片同属于M3内核,所以只需要你自己跟着视频去学,然后做少量尝试,就可以写出来模板。当然看书籍也很重要,视频下方有链接,下载里面的《STM32F1开发指南》,看里面新建工程模板那一小结然后做少量尝试也可以写出自己的模板。注意:想要了解原理,要看STM32的固件库介绍和MDK5的介绍,下方书籍目录中有。笔者建议视频和书籍都看看,里面语言诙谐生动,完全不像冷冰冰的技术手册和论文。
上两个图看看视频目录和书籍目录:

二、省事直接下载作者写好的

1.部分代码

下面展示 主函数

 int main(void){     u16 t;  u16 len;    u16 times=0;delay_init();             NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2); uart_init(115200);   while(1){if(USART_RX_STA&0x8000){                      len=USART_RX_STA&0x3fff;printf("\r\n 发送的数据为  \r\n\r\n");for(t=0;t<len;t++){USART_SendData(USART1, USART_RX_BUF[t]);while(USART_GetFlagStatus(USART1,USART_FLAG_TC)!=SET);}printf("\r\n\r\n");USART_RX_STA=0;}else{times++;if(times%5000==0){printf("\r\nSTM32F103C8T6¿ª·¢°å\r\n");}if(times%200==0)printf("请输入数据\n");  delay_ms(10);   }}  }

测试程序为串口一的收和发,懒得往里面添加灯闪烁了。作者亲测可用,并且现在还在用。

2.工程模板包

链接:https://pan.baidu.com/s/1GT7kQ30N4DRhDxY7tWrtjw?pwd=smnh
链接: 点击就可百度网盘链接
提取码:smnh


总结

后续会写怎么学习和制作STM32 PCB板的,大家多多关注。
笔者已经尽可能的理清逻辑,但是难免会有些地方不容易理解,所以欢迎大家多多留言提问和指教呀。技术问题,有问必回!!!

STM32F103C8T6工程模板 ——固件库版、正点原子代码风格、包含SYSTEM文件夹相关推荐

  1. stm32f103c8t6新建固件库模板(可自取)

    目录 准备资料 步骤 百度网盘链接 准备资料 V3.5 固件库包: STM32F10x_StdPeriph_Lib_V3.5.0 这是 ST 官网下载的固件库完整版, MDK5开发环境 不想自己新建项 ...

  2. 批处理 如果提示错误暂停_dos批处理脚本代码,一键删除目录文件夹例子,dos命令bat教程...

    大家好,我是老盖,首先感谢观看本文,本篇文章做的有视频,视频讲述的比较详细,也可以看我发布的视频. 前几篇文章我们学了一些基础的dos命令,今天我们结合前几篇文章的DOS命令做一个批处理的脚本,大家可 ...

  3. PHP 八羊闪电本地相册图片查看器V1 PHP极简代码直接查看本地文件夹图片 源码下载!

    该源码,直接读取本地IMGAGES文件夹的图片,直接显示在相册,点击放大查看,非常方便,非常适合二次开发,但是不适合小白.没有做UI和设计,比较简陋,所以仅仅售价10元钱,想要的就拿去,不想要的就别拍 ...

  4. PC仿真的emwin移植到STM32F103RCT6详尽步骤(正点原子库,正点原子mini开发板,亲测可用,学习心得,大佬勿喷)

    所需要的硬件设备:正点原子mini开发板 (STM32F103RCT6,需要正点自带的240*320TFTLCD屏) 所需要的软件: 1.MDK5 2.Code::Blocks(PC上的IDE) 3. ...

  5. srm32f4按键蜂鸣器_stm32 用中断实现按键点灯和蜂鸣器鸣叫(固件库版)

    引言 这是这篇博文的升级版本 https://blog.csdn.net/qq_44885018/article/details/103050388 上面轮询的方法,今天主要讲中断的方法.为了方便不要 ...

  6. MPU6050使用/正点原子代码移植/MPU6050注意事项/关于几个频率的解释/STM32F103

    关于MPU6050 MPU6050简单介绍 对于各位接触到MPU6050的同学们来说,应该不缺MPU6050的参考资料, 其中有一篇<MPU-6000 / MPU-6050 产品说明书>- ...

  7. java 文件递归删除文件夹_Java十行代码实现递归删除文件夹中所有文件

    递归删除文件夹中所有文件 要递归首先需要有方法.递归,即方法自己调用自己.一般在程序中很少使用,但在这个实现中,我们无法知道文件夹的深度,更无法根据深度来实现循环的嵌套. 递归两个重要条件: 终止边界 ...

  8. 饥荒联机版服务器mod模组在哪个文件夹,饥荒联机版MOD使用图文教程_饥荒联机版MOD怎么用_牛游戏网...

    饥荒联机版相信大家都玩得不亦乐乎,在饥荒中使用MOD也是一大乐趣,不少萌新可能还不知道饥荒联机版怎么使用MOD,饥荒联机版MOD要怎么安装使用呢,下面小编就为大家带来了饥荒联机版MOD使用图文教程,给 ...

  9. java实现文件对比_【代码】Java比较文件夹文件

    有一款文件比较软件Winmerge的文件夹比较功能比较少,只能比较当前目录下的文件数和文件差别. 但由于需要,查看两个类似的目录中,其中一个少了那些文件.所以就自己写了个脚本,来遍历. 代码如下,由于 ...

最新文章

  1. OCR引擎Tesseract以及pytesseract详解及实例
  2. mac生成linux下可执行的.go二进制文件
  3. PyTorch基础(15)-- torch.flatten()方法
  4. Python pyenv
  5. 数据挖掘算法_技术分享|大数据挖掘算法之KNNk近邻算法
  6. [coursera] [design] Hangman
  7. GCC: libgcc的用途以及交叉编译
  8. 院士大咖齐聚苏州,共话AI未来,30个优秀个人和企业、产品受到表彰
  9. linkhashmap原理_LinkedHashMap 用法
  10. MySQL备份还原知识要点
  11. oracle判断为周一_oracle sql技巧:取上周一到上周日(本周一到本周日\下周一到下周日)的时间...
  12. 【ResNet】ResNet到底在解决一个什么问题呢?
  13. JAVA遇见HTML——JSP篇 阶段项目总结 model1模型实现商品浏览记录
  14. 微信小程序云开发教程-微信小程序的JS高级-页面间数据传递
  15. 多媒体封装格式的比较
  16. MCGS图库 触摸屏组态图库 触摸屏图库 昆仑通态触摸屏专用CGS
  17. python manage.py makemigrations执行完无反应的解决办法
  18. 数字图像相关(Digital Image Correlation, DIC)中的非线性优化方法IC-GN的数值解计算
  19. Xilinx 的FFT IP核使用方法(配置为FFT 、IFFT两种模式)
  20. 射影几何----圆锥曲线切线中割,切弦平行的证明

热门文章

  1. 【案例】加文医学研究所计划部署 OpenStack 用于生产环境
  2. 行为识别(三):创建C3D网络模型用于行为识别
  3. MySQL中按年、季度、月、周、天等查询SQL
  4. successful note
  5. 如何戒掉玩手机(对何同学视频的总结)
  6. kotlin list总结
  7. R语言中的quantile()函数
  8. matlab的quantile函数,Quantile 函数详解
  9. 人生千姿百味,人人都只能活一回。有坐享其成的福气,就不会体验挑战人生的荣耀,每个人各有各的活法,各有不同的悲喜哀乐。
  10. 最新 Google支付 Google Play 结算库 4.0 版:从创建定价、商品到测试、支付成功等步骤