历史上的今天

今天是:2024年11月13日(星期三)

2019年11月13日 | STM8L051F3_01_GPIO应用

发布者:Xingfu8888 来源: eefocus关键字:STM8L051F3  GPIO  数据传输 手机看文章 扫描二维码
随时随地手机看文章

本章介绍STM8L051F3的GPIO相关知识。内容分为以下几部分:


GPIO简介

点亮LED

1、GPIO简介


GPIO:通用输入/输出口,用于芯片与外部进行数据传输;STM8L051F3的一个I/O端口最多可以有8个Pins(引脚),每个引脚可以独立地配置为数字输入或数字输出。此外,一些I/O端口可能有一些复用功能如模拟输入、外部中断、片上外设的输入输出等,一个引脚不能同时使用多种复用功能。


每个I/O端口都分配有一个输出数据寄存器、输入数据寄存器、数据方向寄存器、两个配置寄存器,一个I/O端口工作在输入或输出状态取决于数据方向寄存器。STM8L051F3的GPIO主要性能如下:


端口的位(引脚)能独立配置

可选择的输入模式:浮空输入或上拉模式

可选择的输出模式:推挽输出或伪开漏输出

独立的数据输出和输出寄存器

外部中断能独立地使能或禁能

可控的输出速率能减少EMC噪声

可用于片上外设复用功能的I/O

在数据输出锁存上可实现数据读出--修改--写入

I/O状态在1.6V~VDDIOmax下是稳定的

GPIO的输入输出模式主要分为以下几种:


浮空输入(初始状态由外部决定)

上拉输入(初始状态为VDD)

开漏输出(输出高由外部控制,输出低为VSS)

推挽输出(输出高为VDD,输出低为VSS)

为了降低功耗,没有使用的I/O口的引脚应配置为以下功能之一:


通过外部上拉或下拉,作为浮空输入

配置为内部上拉/下拉输入

配置为推挽输出,输出低

STM8L51F3的GPIO板块框图如下:


注:在3.6V和5V兼容的I/O口,连接到VDD的保护二极管是不起作用的


在真正开漏的I/O口,P-Buffer、弱上拉和连接到VDD的保护二极管是不起作用的


2、点亮LED


2.1 GPIO的输出配置


本小节介绍将GPIO配置为输出模式实现点亮LED1。使用的例程:STM8L051F3_01_LED。实现的步骤如下:

1)初始化LED1(PB1)为推挽输出模式(初始电平高)


2.2 例程介绍


 1LED1&LED2的初始化在led.c文件中定义:

 2void LED_Init(void)

 3{

 4  /* 配置LED1 IO口为输出模式 ,初始状态为高*/

 5  GPIO_Init(LED1_GPIO_PORT, LED1_GPIO_PINS, GPIO_Mode_Out_PP_High_Fast);

 6  /* 配置LED2 IO口为输出模式 ,初始状态为高*/

 7  GPIO_Init(LED2_GPIO_PORT, LED2_GPIO_PINS, GPIO_Mode_Out_PP_High_Fast);

 8}

 9LED1&LED2的端口在led.h文件中定义:

10#define LED1_GPIO_PORT  (GPIOB)

11#define LED1_GPIO_PINS  (GPIO_Pin_1)

12#define LED2_GPIO_PORT  (GPIOB)

13#define LED2_GPIO_PINS  (GPIO_Pin_2)

 


在主函数中,LED_Init()函数对GPIO进行初始化,然后在循环中每300ms改变一次LED1的状态:


1void main(void)

2{

3  LED_Init();   //初始化LED

4while(1)

5{

6    delay_ms(300);

7    GPIO_ToggleBits(LED1_GPIO_PORT, LED1_GPIO_PINS); //切换LED1状态

8}

9}

Delay_ms()函数在main.c文件中定义并实现:



1static void delay_ms(unsigned int ms)//延迟函数,MS级别

2{

3  unsigned int x,y;

4for(x = ms;x>0;x--)

5{

6for(y = 405;y>0;y--);

7}

8}


使用ST-LINK把程序下载到开发板中,然后可以看到LED1闪烁。注:例程中系统时钟使用的是默认HSI/8 = 2MHz。

关键字:STM8L051F3  GPIO  数据传输 引用地址:STM8L051F3_01_GPIO应用

上一篇:STM8S的HALT模式与AWU唤醒
下一篇:PCF8563 时钟芯片驱动程序 (STM8S/STM8L)

推荐阅读

集微网消息,英飞凌(Infineon)刚刚宣布,其已收购一家名为 Siltectra 的初创企业,将一项创新技术(Cold Spilt)也收入了囊中。“冷切割”是一种高效的晶体材料加工工艺,能够将材料损失降到最低。英飞凌将把这项技术用于 SiC 晶圆的切割上,从而让单片晶圆可出产的芯片数量翻番。据悉,本次收购征得了大股东 MIG Fonds 风投的同意,报价为 1.2...
结构图如下所示: 参数要求如下:  部分代码展示: 
在刚刚结束的一年一度双11大战中,手机品类下小米品牌尤其旗下的Redmi品牌凭借傲人的战绩一时间可谓风头大盛,无论是最新发布定位旗舰的Redmi K30至尊纪念版,还是上市已久定位入门的Redmi 9A都备受用户欢迎,这也充分正面了Redmi品牌独立的巨大成功。而在接下来的Redmi新机中,取得了巨大成功的Redmi K30系列的继任者——全新的Redmi K40自...
近日,中国电信天翼物联发布了自主研发的分布式物联网操作系统(CTWing IoT OS)最新成果,通过提供泛在连接、终端感知、云边端协同等六大核心能力和行业数智化创新成果构筑5G时代新推力。据了解,该操作系统目前已服务近3亿物联网用户,管理超8000万物联网智能终端,并推动中国电信成为全球首个5G NB-IoT用户破亿的运营商;除此之外,该操作系统已与鸿...

史海拾趣

问答坊 | AI 解惑

求助:几千个LED灯如何用单片机控制?

各位高手,我想问一下,几千个LED灯如何用单片机来控制每一盏啊,现在城市里面用的迷彩灯那么多是怎么控制的?谢谢,希望各个高手提点方法;…

查看全部问答∨

IC的生产工序流程以及其结构的发展历史简述

一般来说我们对IC 的 概念只停留在它是芯片或集成电路,或者是外观五花八门的小小的东 西上面。对它究竟是什么?它是怎么来?它为什么外表各种各样?我 们的了解可能不是很多,下面通过对IC 的生产工序流程和其结构发 展历史方面的简述,希望让 ...…

查看全部问答∨

WinCE掌控浏览器大网页问题

在EVC中新建了一个基于MFC的对话框程序,在其中添加了WebBrowser控件, 在同样的硬件环境(400MHz,64MB SDRAM)下,使用WindowCE自带的IE6,打开如搜狐这样的较大网页没有问题, 但是在我自己的程序中就会因为网页过大而死机。 还请帮忙~!…

查看全部问答∨

STR912的DMA机制存在Bug?

    经过反复试验发现,好像STR912的DMA机制存在Bug;1. 下面的程序段居然可以通过, LED3亮  SSP0->DR=0;           //1 向SSP0端口 ...…

查看全部问答∨

2812总跑飞

我现在程序很容易跑飞,跑飞后就进入到那些没用的中断中,比如interrupt void ILLEGAL_ISR(void)或interrupt void  PDPINTB_ISR(void)   // EV-B。引起跑飞的原因很奇怪,比如变量定义,当定义为unsigned int 型可以正 ...…

查看全部问答∨

今天第一次去面试,三一重工股份有限公司,说说体会

今天全国五百强企业三一重工股份有限公司成都分公司来我们学校招三十名大三实习生,我去参加了他们的面试。 我们学校报名的大概有一百人吧! 我说说面试的流程吧    先是什么总经理和人事部的介绍了他们公司,大家在一起看了个视 ...…

查看全部问答∨

关于DSP中的cmd文件

对于同一款DSP,它的cmd文件都是一样的吗?如果不一样又该怎么样调整语句?…

查看全部问答∨

Xilinx Spartan-6 LX9 试用心得

Xilinx Spartan-6 LX9   试用心得   炎炎夏日,忙里偷乐! 一不小心,申请成功了! 机会来的不容易,惜之! 分享一下初见的感觉!     精美包装   打开看一下   两条USB延长转接线 几页简要 ...…

查看全部问答∨

万能控制板

请打开这个链接查看:https://bbs.eeworld.com.cn/viewthread.php?tid=338957&extra=page%3D1&frombbs=1 [ 本帖最后由 用心思考 于 2012-7-7 09:18 编辑 ]…

查看全部问答∨

台湾PCB工程师的一副Altium deigner常用快捷键索引图

这个图片适合使用Altium deigner软件画图的初级学者,贴到办公桌傍边,,呵呵,高手就免了吧,,,还是贴出来大家共享吧! [ 本帖最后由 qwqwqw2088 于 2012-10-17 11:20 编辑 ]…

查看全部问答∨
小广播
设计资源 培训 开发板 精华推荐

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

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

随便看看

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

电子工程世界版权所有 京ICP证060456号 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved