单片微型计算机
这里还要提一下TMS系列单片机,虽然不是主流。TI推出的8位CMOS单片机具有多种存储模式和外设接口模式,适用于复杂的实时控制场合。虽然不如STM32,也没有MSP430那么张扬,但TMS370C系列单片机通过集成先进的外围功能模块和各种芯片的内存配置,提供了很高的性价比。
时间系统控制。同时采用高性能硅栅CMOS EPROM和EEPROM技术实现。低功耗CMOS工艺、宽工作温度范围、噪声抑制、高性能和丰富的片上外设功能,使得TMS370C系列单片机在汽车电子、工业电机控制、计算机、通信和消费电子等领域都有一定的应用。
应用最广泛的器件:TMS370C256A
文章比较长,字数比较多,可以先打开头像关注我,再慢慢看。///有个感叹:我今年年初录了一套比较系统的单片机入门教程,所以想问我的同学可以去拿。这是免费的,我可以私信。点击我头像左下角的黑色字体,我也能得到。最近挺闲的。我会带学生参加省级以上比赛。///
STM32单片机
ST厂商推出的STM32系列单片机,业内朋友都知道,是一款性价比超高的系列单片机,应该没有之一,功能极其强大。它基于专为要求高性能、低成本、低功耗的嵌入式应用而设计的ARM Cortex-M内核,拥有一流的外设:1s的双12位ADC、4兆位每秒的UART、18兆位每秒的SPI等。
在功耗和集成度上也有不错的表现。当然,和MSP430的功耗相比,略逊一筹,但这并不影响工程师们对它的热情。因为结构简单,工具好用,功能强大,呵呵在业内小有名气…其强大的功能主要表现在:
特点:
1.核心:ARM32位Cortex-M3CPU,最高工作频率72MHz,1.25DMIPS/MHz,单周期乘法和硬件除法。
2.内存:芯片上集成了32-512KB闪存。6-64KB SRAM存储器
3.时钟、复位和电源管理:2.0-3.6V电源和I/O接口驱动电压。POR、PDR和可编程电压检测器(PVD)。4-16兆赫的晶体振荡器。嵌入式工厂校准的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也是一样的,只是它要求你配置更多的寄存器。现在你可以在在线教程中看到以下编写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不再麻烦(最起码不用重复劳动了)。
对单片机感兴趣的朋友可以找我,我录制了一些关于单片机的入门教程,有需要的童鞋找我拿就行,免费的,私信我“林老师”就可以拿~点击打开我的头像就能领取