推荐阅读最新更新时间:2024-03-16 15:39
STM32存储器理解
分类: 1 ROM (EPROM、EEPROM、NOR_Flash、NAND_Flash) 只读存储器,断电后数据保存,以前ROM是只能读取,不能擦写的,随着技术的发展,flash逐渐取代了rom,但功能上还沿用了rom的作用,所以把它归为rom类。 2 RAM (SRAM) 随机存储器,掉电数据丢失,但它的最大有点就是读写速度快,典型的RAM就是内存条。 加深理解: 在KEIL5中点击魔术棒,再点击TARGET,在下面的选型中有如下选项: options for target ROM 外部只读存储器 用户设置 RAM 外部随机存储器 用户设置 IROM
[单片机]
意法STM32系列获ARM RealView微控制器开发工具包支持
ARM公司日前宣布RealView微控制器开发工具包将支持意法半导体基于ARM Cortex-M3处理器的全新STM32F1xx系列器件。 STM32F101(接入行)和STM32F103(性能行)将是意法半导体首个基于ARM Cortex-M3处理器的器件系列,兼具卓越的高性能和低功耗。该系列器件拥有高达72MHz的CPU时钟速度、128Kbyte片上闪存ROM及20Kbyte片上RAM,还包括A/D、CAN、USB、SPI、I2C等众多外设及多达80个GPIO。 RealView微控制器开发工具包3.1可为新器件提供支持。这一最新版本保留了Keil Vision 3集成开发环境(IDE)易于使用的特性,并增加了针对STM3
[焦点新闻]
STM32单片机的ADC多通道采样
一 单通道采样 参考资料: 《STM32库开发实战指南》 原理性质的东西还是少讲,因为上面那本书里面讲解的很详细了,直接来看硬件电路图 这里使用的是3362电位器(10K),即用STM32来测量PB0和GND两端的电压,这样的电路设计比较简单也容易理解,但是存在一定的弊端,下面给出《STM32库开发实战指南》上面配套的硬件电路图 如果设计电路图的话,可以参考这种思路。 我的收获 1 引脚初始化的时候需要注意 每一个ADC通道都对应一个GPIO引脚,看图中的ADC123_IN10,表示这个引脚(PC0)可以配置为ADC1的通道10,或者是ADC2的通道10,或者是ADC3的通道10,这个地方非常重要,涉及到后面ADC初
[单片机]
stm32固件库在stm3210e-eval开发板上的移植
首先建立工程,我习惯性在工程文件夹下建立以下几个文件夹,分别放不同的文件,以区别不同文件的不同作用,方便寻找和移植。如下: 在PROJECT文件夹下建立工程项目,启动keil,开始建立工程。 注意建立在PROJECT文件夹下。 随便起个名字,我起的名字是MDK,建立后,会提示你选择器件型号 我的器件如上图,所以选择。确定后会询问你是否加入启动文件。我们用stm32的固件库,所以不用mdk的,选择否。 下面配置工程的选项option,右键点Target会看到Options。 以下是各个选项卡的配置内容。
[单片机]
STM32学习笔记一时钟和定时器
由于近期在准备海洋航行器比赛,正好趁此机会学习一下ARM,看到周围很多同学都在使用32,所以我也买了一块STM32F103ZET6,准备好好地学习一下。 STM32的时钟系统相当的复杂,包含了5个时钟源,分别是HSI HSE LSI LSE PLL,HSI是高速内部时钟、RC振荡器,频率为8M,HSE是高速外部时钟,即晶振,我的核心板上晶振为8M。LSI为低速内部时钟、RC振荡器,频率40k,LSE为低速外部时钟,接32.768kHz晶振,作为RTC时钟源。PLL为锁相环倍频输出,最大不超过72M。 我在学习定时器时先看的是TIM3,它挂载在APB1分频器上,APB1上面挂载的是低速外设,APB2上挂载高速外设。 在
[单片机]
stm32入门开发板选野火还是正点原子
两个可以说都是行业标杆。 不能说哪个比哪个更好,各有特色,适合自己就是最好的,同行之间都是相互参考去做的。 我从以下几个维度来对比下: 1.教程 2.代码 3.开发板价格 4.进阶 一、教程 两家教程都是完全开源的,大家对野火的教程好评比较多,开始几章由浅到深讲解地很好。 有些c基础不是很好的人也能跟上,能理解STM32的外设使用底层也是从寄存器配置进行代码二次封装来的。 后面一些章节似乎换了老师,讲解地更加偏向实际项目,站在初学者的角度,或许听起来有点费劲,但死磕也能学到不少东西。 正点原子的话正好相反,刚开始的几个章节可能对新手不是很友好,反而后半段更适合初学者。 对于初学者来说,其实不需要讲的多深入,最重要是能让
[单片机]
STM32开发笔记54:STM32F4+DP83848以太网通信指南系列(八)
本章为系列指南的第八章,讲述如何使用STM32F407芯片配合DP83848进行以太网数据的收包流程,将监听到的网络包数据通过UART传给PC,同时辅以WireShark监听对比验证。 关于UART,也就是串口通信的使用,这里不做赘述,我们这里预设两个函数分别为UART6Init()和UART6Send(),实现的功能是串口6的初始化和发送。 以太网中断 在《STM32F4+DP83848以太网通信指南第五章:MAC+DMA配置》中,我们已经添加了以太网中断,其思路就是想让每次以太网上有收到包都能触发中断,我们可以在中断中将DMA中的数据包取出来进行分析,然后复位,让芯片下一次继续响应中断。 配置中断的代码非常简单,跟其他任何中
[单片机]
如何有效地使用串口通讯接收数据
引言 在使用stm32或者其他单片机的时候,会经常使用到串口通讯,那么如何有效地接收数据呢?假如这段数据是不定长的有如何高效接收呢? 同学A:数据来了就会进入串口中断,在中断中读取数据就行了! 中断就是打断程序正常运行,怎么能保证高效呢?经常把主程序打断,主程序还要不要运行了? 同学B:串口可以配置成用DMA的方式接收数据,等接收完毕就可以去读取了! 这个同学是对的,我们可以使用DMA去接收数据,不过DMA需要定长才能产生接收中断,如何接收不定长的数据呢? DMA简介 题外话:其实,上面的问题是很有必要思考一下的,不断思考,才能进步。 什么是DMA DMA :全称Direct Memory Access,即直接存储器访问
[单片机]