STM32F030和STM32F103的IO结构上的区别

发布者:Xiaochen520最新更新时间:2018-12-29 来源: eefocus关键字:STM32F030  STM32F103  IO结构 手机看文章 扫描二维码
随时随地手机看文章

STM32F103GPIO 功能描述


每个GPI/O端口有两个32位配置寄存器(GPIOx_CRL,GPIOx_CRH),两个32位数据寄存器(GPIOx_IDR和GPIOx_ODR),一个32位置位/复位寄存器(GPIOx_BSRR),一个16位复位寄存器(GPIOx_BRR)和一个32位锁定寄存器(GPIOx_LCKR)。


根据数据手册中列出的每个I/O端口的特定硬件特征,GPIO端口的每个位可以由软件分别配置成多种模式。

─  输入浮空

─  输入上拉

─  输入下拉

─  模拟输入

─  开漏输出

─  推挽式输出

─  推挽式复用功能

─  开漏复用功能


每个I/O端口位可以自由编程,然而必须按照32位字访问I/O端口寄存器(不允许半字或字节访问)。GPIOx_BSRR和GPIOx_BRR寄存器允许对任何GPIO寄存器进行读/更改的独立访问;这样,在读和更改访问之间产生IRQ时不会发生危险。


下图给出了一个I/O端口位的基本结构。


图13  I/O端口位的基本结构

STM32F030 GPIO functional description

Subject to the specific hardware characteristics of each I/O port listed in the datasheet, each

port bit of the general-purpose I/O (GPIO) ports can be individually configured by software in

several modes:

• Input floating

• Input pull-up

• Input-pull-down

• Analog

• Output open-drain with pull-up or pull-down capability

• Output push-pull with pull-up or pull-down capability

• Alternate function push-pull with pull-up or pull-down capability

• Alternate function open-drain with pull-up or pull-down capability

Each I/O port bit is freely programmable, however the I/O port registers have to be

accessed as 32-bit words, half-words or bytes. The purpose of the GPIOx_BSRR and

GPIOx_BRR registers is to allow atomic read/modify accesses to any of the GPIOx_ODR

Figure 13. Basic structure of a standard I/O port bit



二者区别:


以上中文部分为103系列,英文部分为030系列。两个系列从基本结构图上可以看到最大的差异就是上拉下拉电阻的位置有区别。


103系列的上下拉只在输入通道有效,030系列的在输入和输出都有效,因此030系列在浮空输出时也可以使用上下拉电阻,在103系列单片机中浮空输出是不能使用上下拉的,必须使用外部电阻辅助。


这两个IO的结构区别对实际使用有哪些影响呢?最大的区别就是IO作为双向IO使用时,设置为浮空输出,103系列必须外面配置上拉电阻,而030系列则可以直接配置为上拉开漏输出,把IO口作为双向IO使用,特别是在模拟IIC时序中使用最方便!

关键字:STM32F030  STM32F103  IO结构 引用地址:STM32F030和STM32F103的IO结构上的区别

上一篇:STM32 读保护功能和清除读保护功能设置【转】
下一篇:STM32F0:SD卡升级

推荐阅读最新更新时间:2024-03-16 16:21

基于STM32F103C8T6+L298N通过PWM控制直流电机
01 前言 原来做的差速小车是基于Arduino控制的,感觉有些简单,也有些基础,Arduino方便简单的同时,可操作性感觉也少了很多,所以想将控制器换成STM32,然后将树莓派作为上位机,STM32作为下位机,通过树莓派和STM32进行通讯,实现对差速移动小车的控制,本人也是寒假期间初学STM32,也是奔着应用去的,所以对于STM32编程原理方面可能不太精通,这里偏重于记录应用层面的知识。 02 PWM调速原理 直流电机驱动是最简单的,给电机通上电就能转,根据电机的公式: 可知:当提高电压时,反电势升高,进而转速升高,电压与转速大致有如图所示的关系。 编辑 所以我们只要控制给电机通电的电压即可控制电机的转速,但是在实际
[单片机]
基于<font color='red'>STM32F103</font>C8T6+L298N通过PWM控制直流电机
基于stm32f103zet6的DS1302学习
由于硬件出了问题,也就是外部低速晶振没用,震不起来,然后查看了网上的帖子,STM32的RTC果然口碑不怎么样,所以果断换DS1302,在移植的过程中还算顺利,记录下来吧,也算对自己的总结吧! 1、所谓的DS1302 这里面也指明了简单的SPI协议 然后就直接上代码了,注释很详细的!基本实现单行注释 1、主函数main #include stm32f10x.h #include SysTick.h #include Delay.h #include Usart.h #include stdio.h #include DS1302.h /*******由于没有做外设测试的程序是:按键P
[单片机]
基于<font color='red'>stm32f103</font>zet6的DS1302学习
毕业设计| STM32F103全彩FFT音乐频谱+LED年历闹钟显示
工作原理 上面演示的音乐频谱工作原理: Image 通过电脑,手机等外部设备3.5mm耳机孔,输出音频信号,然后经过继电器模块的音源选择后,继电器模块的输出分为两路:一路给有源音响播放音乐;一路经过音频信号调理电路,输入到STM32单片机的引脚进行采样和AD转换后,由程序进行FFT变换,并将FFT变换结果的幅值谱显示在LED全彩显示屏上。 语音播放模块用于播放闹钟语音报时及闹铃音乐。默认情况下继电器模块选择外界设备的音源,当闹钟时间到时,继电器动作切换为语音模块音源。 硬件构成 1)STM32F103核心板 2)全彩LED显示屏单元板 P4 64*32 (16扫,75接口)满足此条件的LED屏都行,大家可以上某宝
[单片机]
毕业设计| <font color='red'>STM32F103</font>全彩FFT音乐频谱+LED年历闹钟显示
STM32F030 ADC1的DMA采样问题
搞了1天一直ADC没有出来,发现采处理的值一直是固定值.. 去21IC求助贴. STM32F030 ADC1采样问题请教 等了好久都没有人回复,但有人提醒我说需要等待DMA的数据完成. 后面对比了别人的代码, /* ADC DMA request in circular mode */ ADC_DMARequestModeConfig(ADC1, ADC_DMAMode_Circular); 别人有这句代码,于是我加上这个话,则能够正常采样到数据了, 所以,必须得添加,否则无法获取到采样值. 接着又发现DMA传输到指定的数组数据顺序错乱了..... 类似别人的求助贴: STM32F030 多通道ADC DMA读取问题
[单片机]
STM32F103ZET6 — TIM6/TIM7
介绍 STM32F103ZET6 定时器资源非常丰富,根据 datasheet 描述,涵盖如下几种类型: 高级定时器 TIM1 / TIM8 通用定时器 TIM2 / TIM3 / TIM4 / TIM5 基本定时器 TIM6/ TIM7 本次描述的重点是基本定时器 TIM6/ TIM7 基本定时器TIM6和TIM7各包含一个16位自动装载计数器,由各自的可编程预分频器驱动。它们可以作为通用定时器提供时间基准,特别地可以为数模转换器(DAC)提供时钟。实际上,它们在芯片内部直接连接到DAC并通过触发输出直接驱动DAC。这2个定时器是互相独立的,不共享任何资源。 时钟 可以看到来自 APB1 的低频时钟经过频率x2
[单片机]
<font color='red'>STM32F103</font>ZET6 — TIM6/TIM7
Nokia_5110显示屏STM32F103x开发
一、显示屏模块选型 1.1 Nokia 5110 LCD(蓝屏) 液晶屏模块 1.2 简介: 1.3 显示屏 显示分成 5 行 二、程序开发 这里有两个,关于 显示 数据的 数组,我把放在两个不同的 头文件 中,一个为了方便显示英文,一个为了方便显示中文。英文操作简单一点。 2.1 main函数 程序链接: https://download.csdn.net/download/qq_37788383/11887775 #include stm32f10x.h #include delay.h #include sys.h #include usart.h #include nokia_5110.h
[单片机]
Nokia_5110显示屏<font color='red'>STM32F103</font>x开发
STM32F103ZET6 —— GPIO
STM32 的 GPIO 可以由软件配置成为几种不同的模式,每个I/O端口位可以自由编程,然而I/0端口寄存器必须按32位字被访问: A. 芯片侧: 1. 输入: 2. 输出: B. 硬件侧: 对应的单板,有两个GPIO连接到LED上: 使用的是 GPIO 的 Port G 的 Pin13 和 Pin14 脚 C. 代码侧: 配置上述两个 GPIO 工作需要的步骤如下: 1. 使能对应的 GPIO_G 的时钟 2. 配置 GPIO_G13/GPIO_G14 为通用推挽输出,配置口线翻转速度50M 3. 配置完成后,设置端口的输出为1/0即可控制 GPIO 的输出。 1. 时钟设置:
[单片机]
<font color='red'>STM32F103</font>ZET6 —— GPIO
基于STM32F103的数字式电镀电源并联均流系统设计
STM32系列处理器是由意法半导体ST公司生产、基于ARM公司Cortex-M3内核的MCU,专门为微控制系统、汽车控制系统、工业控制系统和无线网络等嵌入式应用领域而设计,具有高性能、低功耗、高集成度、丰富且性能出众的片上外设、编程复杂度低等优点。数字式电镀电源并联均流系统以数字通信和控制的方式实现多个电源模块的并联工作,提供更大的输出功率,具有组合灵活、可靠性高、人机接口友善、工作模式多样等优点。本文采用STM32F103VET6处理器作为主控芯片,实现了一种以CAN总线为通信媒介、具有稳压/稳流/安培时/工艺曲线/远程控制5种工作模式、液晶图形显示的数字式电镀电源并联均流系统(以下简称“并联均流系统”),给出了系统主要软硬件
[单片机]
基于<font color='red'>STM32F103</font>的数字式电镀电源并联均流系统设计
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved