当前位置:网站首页>当你需要使用STM32某些功能,而51实现不了时, 那32自然不需要学
当你需要使用STM32某些功能,而51实现不了时, 那32自然不需要学
2022-07-03 09:09:00 【枪哥玩转嵌入式】
TMS单片机
这里也提一下TMS系列单片机,虽不算主流。由TI推出的8位CMOS单片机,具有多种存储模式、多种外围接口模式,适用于复杂的实时控制场合。虽然没 STM32那么优秀,也没MSP430那么张扬,但是TMS370C系列单片机提供了通过整合先进的外围功能模块及各种芯片的内存配置,具有高性价比的实

时系统控制。同时采用高性能硅栅CMOS EPROM和EEPROM技术实现。低工作功耗CMOS技术,宽工作温度范围,噪声抑制,再加上高性能和丰富的片上外设功能,使TMS370C系列单片机 在汽车电子,工业电机控制,电脑,通信和消费类具有一定的应用
应用最多的器件:TMS370C256A
文章相对比较长,字数比较多,大家可以先打开头像关注我,之后慢慢看,///插播一条:我自己在今年年初录制了一套还比较系统的入门单片机教程,想要的同学找我拿就行了免費的,私信我就可以哦~点我头像左下角黑色字体加我也能领取哦。最近比较闲,带做毕设,带学生参加省级或以上比赛///
STM32单片机
由ST厂商推出的STM32系列单片机,行业的朋友都知道,这是一款性价比超高的系列单片机,应该没有之一,功能及其强大。其基于专为要求高性能、低成 本、低功耗的嵌入式应用专门设计的ARM Cortex-M内核,同时具有一流的外设:1μs的双12位ADC,4兆位/秒的UART,18兆位/秒的SPI等等
在功耗和集成度方面也有不俗的表 现,当然和MSP430的功耗比起来是稍微逊色的一些,但这并不影响工程师们对它的热捧程度,由于其简单的结构和易用的工具再配合其强大的功能在行业中赫 赫有名…其强大的功能主要表现在:

特性:
1.内核:ARM32位Cortex-M3CPU,最高工作频率72MHz,1.25DMIPS/MHz,单周期乘法和硬件除法
2.存储器:片上集成32-512KB的Flash存储器。6-64KB的SRAM存储器
3.时钟、复位和电源管理:2.0-3.6V的电源供电和I/O接口的驱动电压。POR、PDR和可编程的电压探测器(PVD)。4-16MHz的晶 振。内嵌出厂前调校的8MHz RC振荡电路。内部40 kHz的RC振荡电路。用于CPU时钟的PLL。带校准用于RTC的32kHz的晶振
4、调试模式:串行调试(SWD)和JTAG接口。最多高达112个的快速I/O端口、最多多达11个定时器、最多多达13个通信接口
使用最多的器件:STM32F103系列、STM32 L1系列、STM32W系列
精品推荐:工程师应该掌握的STM32单片机关键基础精华
为了学习单片机而去学习单片机的思路不对。
你问,如何系统地入门学习STM32?

本身就是一个错误的问题。
假如你会使用8051 , 会写C语言,那么STM32本身并不需要刻意的学习。
你要考虑的是, 我可以用STM32实现什么?
为什么使用STM32而不是8051?
是因为51的频率太低,无法满足计算需求?
是51的管脚太少,无法满足众多外设的IO?
是51的功耗太大,电池挺不住?
是51的功能太弱,而你要使用SPI、I2C、ADC、DMA?
是51的内存太小而你要存储的东西太多?
当你需要使用STM32某些功能,而51实现不了的时候, 那STM32自然不需要学习,你会直接去寻找STM32某方面的使用方法。比如要用spi协议的网卡、要使用串口通信、要使用rtos等等。。。
触过51,那肯定有过直接写寄存器的经验。
STM32也是一样的,只不过32要你配置的寄存器比较多。现在在网上教程上能看到以下编写STM32的方式
直接操纵寄存器(麻烦)
使用ST公司的标准库(有些麻烦,易读)
使用ST公司的HAL库(不麻烦,有些不易读)
写一堆代码应该用的是标准库,我个人认为先学标准库还是好的。可以看标准库的.c文件。你看到后其实不难发现其实标准库就是把原本要写的寄存器给封装了,变成了通俗易读的语句。
以开启一个GPIO举例(标准库)
从上图可以看出你需要做的有
GPIO结构体初始化
开启你要操作GPIO对应的总线时钟
写出你要操作的是GPIO哪个引脚
写出这个GPIO的模式(输出/复用输出/输入/复用输入 详细的请在stm32fxxx_gpio.h中查看)
写出输出模式(推挽/开漏)
写出GPIO速度(低速,中速,快速,高速)
写出GPIO拉电阻(上拉/下拉/不拉)
初始化GPIO
这么一套流程下来,你这个GPIO就算开启完了。其他的比如DMA,SPI,I2C,USART,TIM等等都可以用这些方法来解决。

在学习的时候搭配STM32的数据手册和中文(英文)参考手册,用这些来了解寄存器的某些位干什么用的,哪些总线上有哪些外设等等。数据手册和参考手册会把一些原理以及如何直接操纵寄存器的方法告诉你。(这些不用记,了解一下就行)。
等你基本上掌握标准库后,你会发现你每次做一些新玩意儿总要重复一些代码,比如刚才提及到的GPIO的操作。直接复制之前写过的还得改参数,万一写错了外设不工作。如果要移植很可能会遇到不兼容的状况。
这个时候就要用到HAL库了,ST公司开发了一个软件叫STM32CubeMx,这个软件让编写32不再麻烦(最起码不用重复劳动了)。
对单片机感兴趣的朋友可以找我,我录制了一些关于单片机的入门教程,有需要的童鞋找我拿就行,免费的,私信我“林老师”就可以拿~点击打开我的头像就能领取
边栏推荐
- Runtime.getRuntime().gc() 和 Runtime.getRuntime().runFinalization() 的区别
- Shell logic case
- Difference of EOF
- Leetcode daily question (2212. maximum points in an archery competition)
- Fundamentals of Electronic Technology (III)__ Fundamentals of circuit analysis__ Basic amplifier operating principle
- Vscode Arduino installation Library
- Leetcode daily question (1024. video sticking)
- How MySQL modifies null to not null
- Chromium Embedded Framework (CEF) 介绍
- STM32 external interrupt experiment
猜你喜欢
![[csdn] C1 analyse des questions de formation Partie III Bar _ JS Foundation](/img/b2/68d53ad09688f7fc922ac65e104f15.png)
[csdn] C1 analyse des questions de formation Partie III Bar _ JS Foundation

PolyWorks script development learning notes (I) - script development environment

Happy Dragon Boat Festival—— Zongzi written by canvas~~~~~

Arduino handles JSON data, arduinojson assistant

Leetcode daily question (931. minimum falling path sum)

Characteristics of PUCCH formats

Project cost management__ Cost management technology__ Article 6 prediction

Fundamentals of Electronic Technology (III)__ Fundamentals of circuit analysis__ Basic amplifier operating principle

Runtime.getRuntime().gc() 和 Runtime.getRuntime().runFinalization() 的区别

STM32 port multiplexing and remapping
随机推荐
Jetson nano custom boot icon kernel logo CBOOT logo
Epollet lessons
[successful graduation] [1] - visit [student management information system]
Vector processor 9_ Basic multilevel interconnection network
PIP references domestic sources
[combinatorics] Introduction to Combinatorics (context of combinatorics | skills of combinatorics | thought of combinatorics 1: one-to-one correspondence)
Electronic product design
[csdn] C1 analyse des questions de formation Partie III Bar _ JS Foundation
[graduation successful] [1] - tour [Student Management Information System]
How does the memory database give full play to the advantages of memory?
Project scope management__ Scope management plan and scope specification
顺利毕业[3]-博客系统 更新中。。。
Introduction to chromium embedded framework (CEF)
Fundamentals of Electronic Technology (III)_ Integrated operational amplifier and its application__ Basic arithmetic circuit
【順利畢業】[1]-遊覽 [學生管理信息系統]
Error output redirection
Common software open source protocols
QT qcombobox QSS style settings
Fundamentals of Electronic Technology (III)__ Chapter 1 resistance of parallel circuit
Call the contents of Excel cells opened at the same time - button line feed