stm32之入门知识

一、stm32最小系统

  stm32最小系统组成如下:

1、电源模块,3.3V电源,需要用稳压器件,有时要用感容网络产生stm32所使用的模拟电源。

2、时钟模块,有源或者无源晶振,可以使用最高25MHz的有源晶振或者4-16MHz的无源晶振,常用的是外部8M无源晶振,负载电容可选22pf。

3、复位电路,RC复位或者独立IC复位,stm32的复位引脚内置有40k的电阻,可以外接0.1uf电容到地实现复位,并且可以增加复位按钮。当然复位电路大家

都习惯用个外部上拉,虽然这不是必须地,但如果能保证复位时间也完全没问题。

4、Boot选择,stm32有boot0和boot1两个引脚,用于配置系统启动方式,可以从片上闪存、系统存储器或者片内SRAM启动。从系统存储器启动可以使用固

化的bootloader实现程序从USART1加载。从片内SRAM启动,这个目前还没研究过,不过很感兴趣。

5、程序下载和调试接口,可以使用jtag接口实现下载调试功能,在空间受限的情况下,也可以使用USART1来加载程序。

二、stm32启动模式

1、BOOT1=x BOOT0=0 从用户闪存启动,这是正常的工作模式。
2、BOOT1=0 BOOT0=1 从系统存储器启动,这种模式启动的程序功能由厂家设置。ISP
3、BOOT1=1 BOOT0=1 从内置SRAM启动,这种模式可以用于调试。

三、开发工具

  keil c51                      针对51单片机系列。

  keil MDK-ARM          针对arm开发(其中V5版本和V4版本有很大的区别,V5版本需要另外安装芯片包)。

四、存储器、寄存器

  ARM内核中带有存储器,比如cortex-M4中带有4GB的存储空间。厂家或者用户可以用存储器对Flash、RAM、外设等进行地址分配,称作存储器映射。

给具有特定功能的内存单元取别名,这个别名就是寄存器,这个起别名的过程就是寄存器映射。

  寄存器的地址=存储器的基地址+偏移地址

  因为操作寄存器的地址很麻烦,所以对寄存器进行了C语言封装,方便开发。

五、编程开发

  一般用的较多的是C语言和汇编语言(其他语言就不说了),有些初学者认为,C语言十分方便,完全可以取代汇编,其实不然。他们各有各的优点:

  • C语言:       开发相对简单,适用于大型工程
  • 汇编语言:  适用于小型工程或者一些特殊场合(要求性能、存储量、军事)。

  所以一般来说,C语言嵌入式汇编的方式是一种比较好的编程方法。

时间: 2024-10-06 14:54:18

stm32之入门知识的相关文章

ESB (Enterprise Service Bus)入门知识

本文主要介绍ESB相关的一些技术概念与术语,还有一些入门的需要了解的基础知识,并初步了解介绍一些ESB产品.由于本人刚接触ESB,所以将自己的学习内容与过程,记录下来!愿在这里与大家分享一下,共同进步与提高! [转载使用,请注明出处:http://blog.csdn.net/mahoking] EAI 企业应用集成(Enterprise Application Integration):是完成在组织内.外的各种异构系统.应用和数据源之间共享.交换信息.协作的途径,方法学,标准和技术. 所连接的应

债券入门知识

可参考此链接: http://www.jisilu.cn/topic/%E4%BC%81%E4%B8%9A%E5%80%BA%E6%85%A2%E8%B0%88 国债: 凭证式国债: 国家采取不印刷实物券,而用填制国库券收款凭证的方式发行的国债.它是以国债收款凭单的形式来作为债权证明,不可上市流通转让,从购买之日起计息.在持有期内,持券人如遇特殊情况需要握取现金,可以到购买网点提前兑取.提前兑取时,除偿还本金外,利息按实际持有天数及相应的利率档次计算.凭证式国债在银行柜台凭身份证购买,与银行定期

基金入门知识

1. 基金是什么? 基金就是代大家理财的一个产品.比如股票型基金,就是把大家的钱收集起来,由买股经验丰富的基金经理帮大家买股票. 2. 基金产品靠什么挣钱? 基金依靠用户买入和赎回基金份额时的手续费,还有交纳的管理费等挣钱.如果某基金经理非常牛B,给投资人带来了丰厚的回报,那么买这支产品的人就越来越多,这样基金产品就越来越赚钱.相反,如果基金产品投资管理不善,给投资人带来了损失,那么买这支产品的人就是越来越少,可用于投资的钱就是越来越少,进一步削弱提高收益的可能性.基金产品并不直接从投资行为中挣

移动H5开发入门知识,CSS的单位汇总与用法

说到css的单位,大家应该首先想到的是px,也就是像素,我们在网页布局中一般都是用px,但是近年来自适应网页布局越来越多,em和百分比也经常用到了.然后随着手机的流行,web app和hybrid app的开发,都用到了css3技术,在css3中,新增了许多单位,rem.vw和vh.vmin和vmax.ch和ex等等,那现在对这些单位分别做一下详细的介绍吧. 1.em 做前端的应该对em不陌生,不是什么罕见的单位,是相对单位,参考物是父元素的font-size,具有继承的特点.如果字体大小是16

requirejs入门知识整理

使用模块化开发处理的三大问题: 1.命名冲突:2.繁琐的文件依赖 3.实现异步非阻塞的文件加载,避免网页失去响应 模块化的设计使得JavaScript代码在需要访问“全局变量”的时候,都可以通过依赖关系,把这些“全局变量”作为参数传递到模块的实现体里,在实现中就避免了访问或者声明全局的变量或者函数,有效的避免大量而且复杂的命名空间管理. requirejs以一个相对于baseUrl的地址来加载所有的代码.如果用了data-main属性,则该路径就是baseUrl,baseUrl亦可通过requi

Unity入门知识

参考书:<Unity3D 游戏开发> scene图中按F键:放大,居中当前选中的物体 坐标轴:红-x轴,绿-y轴,蓝-z轴 逐帧运行程序: OnGUI:可以用来画界面 高级控件 or 低级控件? Label控件也可以贴图 只有脚本的公有变量才可以在编辑器中直接赋值.Texture.String等 游戏界面可以由若干个窗口组成,而每个窗口又由若干个视图组成.创建窗口时需要设定他的显示区域,在窗口中可以添加任意组件,前提是组件的显示区域必须在窗口当中,否则无法显示.另外,窗口中的所有控件都采用相对

MySQL入门知识

简单介绍下吧,MySQL应用的场景大多数互联网公司第一次卖身是卖个了sun好像是10亿,第二次是连同sun自己,以74亿美元被卖给了Orecle~后面MySQL原作者站出来说,MySQL会存在闭源风险,整了个MariaDB~我也是醉了,也不考虑下我们的痛苦!下面简要介绍下MySQL的入门知识. 一.MySQL有三种定义语言 DDL:定义语言,比如:创建一张表,定义表的属性如索引.宽位等待 DML:操作语言,增删查改 DCL:控制语言,比如限定那个账户只能通过那个IP登入,又比如那个账户能访问那些

stm32基础入门

1.开发工具,初学者建议MDK,后期ivr 2.寄存器开发or库 版本开发:先寄存器开发,后期两者结合: 3.软件仿真or开发板,先软件仿真,后期两者结合: 建立工程: 1.包含三部分:start.user.lib.output.outlist文件夹:并设置: outlist目录:用来存放生成的中间文件: output目录:用来存放生成的目标文件: 2.设置头文件路径,库文件路径: 3.编译: stm32基础入门

前端制作入门知识

原文链接:http://caibaojian.com/frontend-base.html 前端制作入门知识 A-A+ 前端博客•2015-08-18•前端开发•CSS | 前端基础•2020View1 文章目录 一.名词解释 二.文本格式化 三.表单表格 四.文本格式化 五.CSS布局 六.html5视频音频 七.一些约定 八.命名空间 九.基本设置-public.css 十.框架设置 来自百度文库:web前端学习总结(精华版),里面讲了许多的知识,非常适合刚进入前端的童鞋,就算一些有点基础的