一文领会学习arm32位单片机的开发思路

2019-05-13 08:54:57 来源:电子发烧友网
标签:

开篇之前,我想问大家一个问题,为什么要学习32位单片机

 

如果您上来问,如何系统地入门学习32位单片机?这本身或许是一个问题。

 

为了学arm32位单片机学习?

 

 

为什么这么说呢?假如你之前接触过51单片机,学过C语言,那么arm32单片机并不需要刻意去学习。到那个时候,你会考虑的问题是,我可以用arm32能实现什么。在51单片机无法满足项目设计的时候,或者是因为51单片机频率太低,管脚太少、无法满足外设IO,功耗太大,又或者是功能太少,而你恰好想使用SPI、I2C、ADC、DMA。

 

当你需要使用STM32某些功能,而51实现不了的时候, 那STM32自然不需要学习,你会直接去寻找STM32某方面的使用方法。比如要用spi协议的网卡、要使用串口通信、要使用rtos等等。


学习arm32位单片机必经之路

 

 

现在,我们假定大家已经对单片机有一定的了解,如果没有的话,建议先把51单片机的基础学好。嗯,目前单片机市场上使用的基本是C语言,必须要掌握好。其次,就是要掌握好单片机案例的各种芯片使用,不管多么复杂的系统,单片机基本结构也分为“内核+外设”。控制外设的途径就是特殊功能寄存器。单片机外设不多,主要可分为三大块:中断系统、定时/计数器和串行接口。并把控制这些外设的特殊功能寄存器弄明白。

 

学习arm32跟学习51都是一样的,平时可以多查阅相关技术书籍、文档手册,以获取最基本的知识。ST官方在这方面做得很好了,推荐学习它的《STM32F103xxx参考手册》《STM32固件库使用手册》两个32位学习文档。

 

前者重点学习前几章内容,存储器和总线架构、电源控制、备份寄存器、复位和时钟控制,通用和复用功能I/O,中断和时间等等一定要花时间阅读,后面讲解具体的功能模块设计,在后续设计用到的时候,可以再自行查阅。后者则主要学习固件函数库的使用方法,主要为了简化编程,我们只需学会调用即可。比如文档和库规范中的命名规则,编码规则,固件架构和使用步骤,模块函数等。建议对GPIO库函数、中断部分库函数、复位和时钟设置的库函数要比较熟悉,因为平时经常会用到。

 

相信学习了解51单片机,掌握arm32单片机相关基础知识后,你就可以尝试自己开始动手做项目了。


给自己设定一个arm32学习计划

很多时候所谓“入门”,通常指你基本理解,并能掌握一些常用32单片机外设使用,而像真正了解掌握一款处理器,你最好还是要按照实际能力,根据自己情况规划一套学习方法。

 

有的人学习两周,就可以进行简单独立的arm32开发,有些人则需要1个月、2月甚至更长的时间,因人而异。建议你每天利用业余时间学习,不管时间是否充裕,给自己做一个arm32学习计划。

 

这里我列出一些不算建议的经验,以过往自己的学习心得,供大家参考下。

 

 

步骤一,学习安装arm32单片机开发套件,及相关开发工具KEIL。

 

步骤二,挑选部分32单片机例程,比如定时器,下载到开发板上,观察两个LED灯的闪烁情况。这部分的操作,参考课程配套的视频进行。实际上,以上两个步骤,是为了熟悉要使用的工具软件而已。属于找感觉的阶段。

 

步骤三,查阅单片机开发的学习文档,文档可以到ST官方,或者学习单片机开发板,都会有提供相应的资料。

 

步骤四,开始查看例程的编写,看看例程是如何写的,自己可否修改下例程,达到自己想要的效果呢?

 

步骤五,在裸机上测试、跑程序,或者移植到单片机平台上运行。比如:RT-Thread实时系统,是否需要试一下?恭喜你,至此,你已经可以自如进行独立的开发了。

 

最后一步,给自己一个目标(项目),把它实现出来!

 

提供的一个学习arm32开发的思路,仅供大家参考哦!上述列出的关键步骤,也是希望能帮助大家快速入门32位单片机。

 
关注与非网微信 ( ee-focus )
限量版产业观察、行业动态、技术大餐每日推荐
享受快时代的精品慢阅读
 

 

继续阅读
干货 | 单片机常用电路设计模块

1、双路232通信电路3线连接方式,对应的是母头,工作电压5V,可以使用MAX202或MAX232.

一款基于单片机的智能温度预警系统
一款基于单片机的智能温度预警系统

本文提出了一种基于单片机的智能温度预警系统的设计方案。方案以AT89S51单片机为核心,利用LM386音频模块、DS18B20传感器、液晶显示器和键盘等器件设计了一款智能温度预警系统,系统能显示每路探测器的温度,并能根据用户预先设定的报警值进行报警。

基于单片机的一阶旋转倒立摆控制系统
基于单片机的一阶旋转倒立摆控制系统

通过对一阶旋转倒立摆系统原理的分析,选用单片机作为控制器,直流电机作为执行器,电位器式角度传感器作为反馈环节,采用PID控制算法设计实现了一阶旋转倒立摆控制系统。实验结果表明该系统在稳定的基础上具有较强的鲁棒性,验证了PID控制算法在一阶旋转倒立摆系统中应用的可行性和有效性。

一种基于 USB接口的比色计仪器
一种基于 USB接口的比色计仪器

目前市场上的光电比色计一般都是通过 RS232串口与计算机通信,随着计算机技术的发展,这种接口实现已经无法满足 PC与外部设备之间不断提高的速度以及稳定性、易用性等要求,给用户使用带来了诸多不便。

基于51单片机的低成本智能防火防盗报警系统
基于51单片机的低成本智能防火防盗报警系统

现如今在学校的寝室里,学生贵重物品被盗、由于学生过失而引起着火等事故时有发生,这些都是一直以来困扰着学生、学工以及学校保卫处的“大问题”。

更多资讯
Arm全球发布Pelion,解惑物联网高度“碎片化”困局

物联网市场的高度碎片化一直是横在设备厂商面前的一大难题,发展多年来都没有出现一个像Windows和Android能“一统江湖”的平台。预计到2035年,从受限设备到全功能终端节点或网关等物联网设备数量将达到1万亿台,如此庞大的设备数量,设备管理难度越来越大,安全问题更加凸显。

如何快速在AWorks OS操作系统中开发并稳定应用GPS模块
如何快速在AWorks OS操作系统中开发并稳定应用GPS模块

物联智能时代,GPS定位应用愈发广泛,如何快速应用GPS定位模块,稳定有效的获取定位信息,缩短项目周期是至关重要的。本文就如何快速在AWorks OS操作系统中开发并稳定应用GPS模块进行详细介绍。

嵌入式C语言的指针使用总结

C语言作为嵌入式开发的基础语言已经越来越让工程师们知道它的厉害:可以直接操控寄存器,方便CPU的功能设置;可以直接操作物理地址,并进行位的操作进而达到硬件的操作等等。

2019 Arm人工智能开发者全球峰会圆满举办

2019 第二届Arm人工智能开发者全球峰会今天在上海圆满举办。今年的峰会以“共塑AI精彩未来” (Together, making AI different) 为主题,由上海市徐汇区政府指导,Arm中国及Arm人工智能生态联盟 (AIEC) 联合主办,并得到了多家全球及中国人工智能产业领导企业的大力支持。

红狮控制Graphite® 系列人机界面 (HMI)再添新锐

全球工业自动化与网络领域通信、监测和控制专家美国红狮控制公司,今日宣布其Graphite® 系列人机界面(HMI)再添新成员——12.1英寸 Graphite 户外人机界面(HMI),可满足最严苛阳光条件下的读取应用要求。