学编程入门 学编程入门需要多久
大家好,今天小编关注到一个比较有意思的话题,就是关于学编程入门的问题,于是小编就整理了3个相关介绍学编程入门的解答,让我们一起看看...
扫一扫用手机浏览
大家好,今天小编关注到一个比较有意思的话题,就是关于stm32编程入门的问题,于是小编就整理了3个相关介绍stm32编程入门的解答,让我们一起看看吧。
stm32只是处理器,还得选用其他配件。下面针对入门人员DIY大四轴(***用无刷电机)的制作框架。 处理器一般为stm32f103,姿态传感器为mpu6050,遥控***用航模的4通道遥控,无刷电机驱动电调。stm32首先读取mpu6050测得的姿态数据,然后加入pid控制,使机体保持稳定。stm32控制电机是通过电调实现的。遥控的接收机与stm32的,网上有教程。希望对楼主有所帮助。
stm32乍一看比51麻烦得多,简简单单一个点灯,stm32还要配置寄存器,可是用久了你会发现,stm32固件库很完善,很多功能直接改改参数就能用,有不明白的就看手册,基本上都是直接搬库来用就行。
视频加载中...单片机其实都是相通的,会了一种单片机,对着数据手册查看一下寄存器的设置可以快速的入手其他型号的单片机。会51单片机,说明有单片机的基础,再去学习STM32单片机会很快。由于51单片机的端口都是准双向口并且寄存器相对较简单,而STM32作为32的单片机,片上***更多、寄存器也相对复杂。建议从以下几个方面入手。
1
学习单片机,其实就是学习单片机相关电路的设计、以及单片机程序的编写,而51单片机和STM32单片机的电路设计基本类似,主要取决于需求和功能,而与单片机本身关系不大,STM32单片机和51单片机开发板的硬件电路基本类似、重合性较大。单片机开发板集成了常用的外设电路,方便了初学者学习,所以入手一块开发板是学习单片机的当务之急。
2
从基本的片上***开始学习
STM32基本的单片机***包括:普通GPIO的配置、定时器的应用、中断的应用、AD***样的配置等。这些功能51单片机也有,既然会51单片机,那么学习起来很容易。在学习的过程中,要学习STM32单片机的寄存器是如何配置的,或者学习库函数的使用、调用方法。
3
学习相对高级的片上***
这里所讲的高级***是针对51单片机而言的,如UART、IIC、SPI、SDIO、FSMC、RTC、PWM、看门狗等。这一部分的学习,主要学习这些***的工作原理、基本硬件电路的设计、寄存器的配置方法或者是库函数的使用方法等。根据单片机开发板所提供的例程学习,并基于开发板提出自己的需求去实现。
4
多参与项目
学习单片机的目的是为了做产品,而学习和做产品是迥然不同的,要多参与项目、多动手,在项目中积累经验。
以上就是这个问题的回答,感谢留言、评论、转发。更多电子设计、硬件设计、单片机等内容请关注本头条号:玩转嵌入式。感谢大家。
不建议学stm32,官方的固件库和集成开发环境影响开发者的认知,不能完全了解它是如何运行如何编译等等。学习ARM裸板你会知道cpu的运行机制以及它程序的编译、运行过程,对学习操作系统有很大的助力。
谢谢邀请,我是大学读的电子信息工程,最开始也是学习的51单片机,用51单片机做过几个小实验,毕业后,工作需要,做过半年AVR,然后又因为项目需要,就转到stm32单片机了,当时学习STM32是自学摸索,所以在学习STM32,我有自己的看法。
STM32的固件库,除了启动文件.S
文件,其他的底层,其实是使用寄存器地址,映射到相关的位置,然后使用结构体定义,用指针替代,最后形成对应的寄存器,比如GPIOE->ODR,固件库再以此进行操作寄存器操作,封装成函数,并将相同外设的多个函数放到相同的.c的文件中.
总结固件库用法,主要是对结构体的变量进行赋值,将赋值好的结构进行初始化函数运算.调用各类合适的函数.并在此基础上,完成自己需要的代码功能处理,
对于自学者来说,尤其是从51单片机转过来的自学者来说,习惯了51单片机操作寄存器配置,学习stm32固件库是比较不习惯和困难的,尤其是对于C[_a***_]的指针和结构体理解不够透彻的同学,更有难度。
正点原子的min板和精英版是存在差异的。
Min板的主控是STM32F103RCT6,LQFP64封装的,256K的flash.
精英版的主控是STM32F103ZET6,LQFP144封装的,512K的flash,64K的SRAM
精英版 比MIN多了,六轴加速度MPU6050和OV7725摄像头模组。
MIN版,比精英版多了接近检测模块ATK-PAJ7620。
这两个芯片都属于STM32的大容量系列,芯片自身都带5路串口,3路ADC,8个定时器,2个看门狗,1个滴答定时器等外设。
相同的选配:可以选配TFT屏幕,网络接口,SD卡,GSM模组,LOAR无线串口模块,WIFI模块,蓝牙串口模组,步进电机,指纹模块,OLED模块。
如果是初学者,那么那些复杂的功能暂时都不会用到。
初学者主要学习系统时钟配置,GPIO配置与控制,常用的外设如串口、SPI,看门狗用法,定时器,ADC用法等。就是一个比较简单的项目所需要的功能,有了这些基础,再慢慢提升扩展。
STM32提供了免费的STM32CubeIDE集成开发环境,内嵌了可视化的STM32CubeMX初始化工具,上手非常容易。通过解读其初始化代码,也有助于快速理解相关功能寄存器的配置和使用方法。
可参考我的专题,有详细解说STM32的功能与用法。
到此,以上就是小编对于stm32编程入门的问题就介绍到这了,希望介绍关于stm32编程入门的3点解答对大家有用。