从C语言认识单片机(3)-STM32环境搭建以及第一个程序单片机程序-点灯1

文章介绍了单片机的基本概念,包括其与PC的区别,主要特点和广泛应用领域。重点讲解了STM32微控制器,它是基于ARMCortex-M的32位微控制器,由STMicroelectronics公司设计。此外,文章还提到了其他微控制器如GD32、ATmega、NRF52和SAMD21的比较和选择。
摘要由CSDN通过智能技术生成

从C语言认识单片机(3)-STM32环境搭建以及第一个程序单片机程序-点灯1

什么是单片机

要知道什么事单片机,就需要知道计算机的经典结构。计算机运行需要两个关键的东西是程序以及数据,程序是计算机怎么运行的规则,数据是这些规则需要处理的内容,所以从硬件角度上来说,我们存储程序以及存储数据都需要一定的存储空间(存储器),早起程序都是硬件化的,也就是说,编程是通过改变硬件电路逻辑来实现的,而现阶段程序都是软件化的,所以需要一个存储器,那么程序运行还需要运算器以及控制器支持,同时如果需要显示或者输入数据,那么还需要输入输出设备做支持,所以现在计算机必须由存储器、运算器、控制器、输入输出设备组成。

现代家用PC台式机或者笔记本存储器、运算器、控制器、输入输出设备都是分开的,我们说电脑有多少内存、多少硬盘这都属于存储器,键盘、鼠标、手柄、显示器都属于输入输出设备,CPU属于运算器以及控制器。在PC上,这些设备都是分开的,然后统一安装在主板以及通过外部接线连在一起的。单片机(Single-Chip Microcomputer)是一种集成电路芯片,采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU、随机存储器RAM、只读存储器ROM、多种I/O口和中断系统、定时器/计数器等功能(可能还包括显示驱动电路、脉宽调制电路、模拟多路转换器、A/D转换器等电路)集成到一块硅片上构成的一个小而完善的微型计算机系统。那单片机和PC最大的区别是什么,单片机与PC最大的区别就是在一个硅片或者说一个芯片上集成了计算机所必须的设备构成。

单片机有什么特点以及应用

以下是单片机的一些主要特点:

  1. 集成度高:单片机将微处理器(包括运算器控制器等等)、存储器、输入/输出接口以及其他外设功能集成在一起,大大提高了系统的集成度。
  2. 体积小,重量轻:由于单片机将所有功能都集成在一个芯片上,因此其体积小,重量轻。
  3. 功耗低:单片机的功耗通常比传统的微处理器系统要低。
  4. 成本低:由于单片机将所有功能都集成在一个芯片上,因此其生产成本较低。
  5. 可编程性强:用户可以根据需要编写程序,控制单片机的工作。

单片机的应用领域非常广泛,包括但不限于以下几个方面:

  1. 家用电器:如电视、冰箱、洗衣机等。
  2. 工业控制:如数控机床、机器人等。
  3. 汽车电子:如发动机控制系统、防抱死刹车系统等。
  4. 通信设备:如电话交换机、移动通信设备等。
  5. 医疗设备:如心电图机、超声波扫描仪等。

总的来说,单片机由于其高度的集成度、小巧的体积、低廉的成本和强大的可编程性,使其在各种领域都有广泛的应用。无论是在家用电器,还是在工业控制,甚至在汽车电子和医疗设备中,都可以看到单片机的身影。因此,学习和理解单片机对于电子工程师来说是非常重要的。

ARM是什么

要讲清除ARM那么首先需要知道两种计算机体系结构。冯诺依曼结构和哈佛结构。

冯诺依曼结构和哈佛结构是两种不同的计算机体系结构,它们在存储器结构、总线以及执行效率等方面有所不同。

冯诺依曼结构是一种将程序指令存储器和数据存储器合并在一起的存储器结构。在这种结构中,CPU通过一组总线分时获取指令和数据。这种结构的优点是指令丰富,功能较强,但取指令和取数据不能同时进行,指令运行速度受到限制。例如,Intel公司的8086系列(后续发展为x86)、Motorola公司的M68HC系列、Atmel公司的AT89系列等微处理器都采用了冯诺依曼结构。

哈佛结构则是一种将程序指令存储和数据存储分开的存储器结构。在这种结构中,CPU可以通过两组独立的总线来对接指令和数据,允许CPU同时取指和取操作数²。由于一般指令线宽于数据线,哈佛结构微处理器的指令执行效率更高,速度也更快。例如,DSP和ARM等微处理器就采用了哈佛结构。

总的来说,冯诺依曼结构和哈佛结构的主要区别在于程序空间与数据空间是否为一体。冯诺依曼结构中,数据空间和地址空间是合并的;而在哈佛结构中,数据空间和地址空间是独立的。

那么ARM到底是什么,ARM是一个公司,他主要设计基于哈佛结构的处理器,比如著名的cotexM系列,当然ARM也设计一些冯诺依曼结构的高性能处理器,那么在我们的学习中,主要学习的都是cotexM系列处理器,所以都是基于哈佛结构的。ARM公司是一个很独特的存在,它只卖图纸授权,其他公司可以根据它的图纸以及授权进行处理器的设计以及生产。到目前为止,ARM公司已经占据了大部分嵌入式的市场,ARM也就成了一系列架构的代名词了。总结一下:

  • ARM是一个公司卖图纸和授权
  • ARM也是一种处理器的架构

STM32是什么

STM32是一种基于ARM Cortex-M处理器的32位微控制器。它由STMicroelectronics公司设计,旨在为MCU用户提供新的开发自由度。STM32微控制器集高性能、实时功能、数字信号处理、低功耗/低电压操作、连接性等特性于一身,同时还保持了集成度高和易于开发的特点。

STMicroelectronics从ARM公司买了一个授权,这个授权是cotexM系列处理器的授权,然后STMicroelectronics公司再加入自己的一些外部设备,就形成了STM32单片机。再总结一下:

  • STMicroelectronics是一个公司买ARM的授权和图纸,生产处理器,处理器系列的名字叫STM32。

除了STM32还有什么

STM32可以从ARM公司买图纸生产处理器,别的公司也可以,除了STM32,还有一些其他的微控制器可以作为替代产品,例如:

  1. GD32:GD32是一款由中国的GigaDevices公司开发的32位微控制器。GD32与STM32在许多方面都相似,包括引脚兼容、性能相似等。然而,GD32并不完全等同于STM32,因此在选择是否使用GD32替代STM32时,需要根据具体的项目需求和规格来决定。

  2. ATmega:ATmega是一款由Atmel公司(现在已经被Microchip公司收购)开发的8位微控制器。虽然ATmega的性能可能不如STM32,但它在某些应用中可能会是一个合适的替代产品。

  3. NRF52:NRF52是一款由Nordic Semiconductor公司开发的低功耗蓝牙微控制器。NRF52在某些方面可能比STM32更直接、更易于使用³。

  4. SAMD21:SAMD21是一款由Microchip公司开发的低功耗ARM Cortex-M0+微控制器。

在目前国内的开发环境中,STM32以及GD32是主流的大方向,GD公司的中文名称叫做兆易创新。

用什么硬件

其实我现在手头上有一块野火的F407开发版,所以本文暂时用这块开发板。后期会考虑用GD32芯片。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值