|
本帖最后由 xiaojie0513 于 2018-5-6 22:19 编辑 7 W' h! v5 P9 O! c0 o * U8 ]' h e2 ? L5 w0 q 本章介绍STM8L051F3的GPIO相关知识。内容分为以下几部分:
每个I/O端口都分配有一个输出数据寄存器、输入数据寄存器、数据方向寄存器、两个配置寄存器,一个I/O端口工作在输入或输出状态取决于数据方向寄存器。STM8L051F3的GPIO主要性能如下:
注:在3.6V和5V兼容的I/O口,连接到VDD的保护二极管是不起作用的 在真正开漏的I/O口,P-Buffer、弱上拉和连接到VDD的保护二极管是不起作用的/ A7 h4 n' Z" @2 D ![]() 2、点亮LED2.1 GPIO的输出配置本小节介绍将GPIO配置为输出模式实现点亮LED1。使用的例程:STM8L051F3_01_LED。实现的步骤如下:, m8 M p# r/ ?; `: \6 [% i 1)初始化LED1(PB1)为推挽输出模式(初始电平高) 2.2 例程介绍LED1&LED2的初始化在led.c文件中定义:. v. m$ v* t7 B6 W! t% Q" { void LED_Init(void)) f2 u7 o6 ^ Y) M, L$ G& rLED1&LED2的端口在led.h文件中定义:1 V/ U$ ^6 N& d 在主函数中,LED_Init()函数对GPIO进行初始化,然后在循环中每300ms改变一次LED1的状态:& ^% m5 Z- X" t& ]' m$ g void main(void)Delay_ms()函数在main.c文件中定义并实现:- K9 [8 P, ? l4 b: A static void delay_ms(unsigned int ms)//延迟函数,MS级别6 m7 V7 J3 V: F( q8 P( m使用ST-LINK把程序下载到开发板中,然后可以看到LED1闪烁。注:例程中系统时钟使用的是默认HSI/8 = 2MHz。9 S: n; B3 n2 Y+ d 3 |( Y/ q" b1 g. w 欢迎关注“创客飞梦空间” 首发在公众号 往期精彩回顾9 o5 ~6 T' G$ A' a+ D STM8L051F3_0c_新建工程 https://www.stmcu.org.cn/module/forum/forum.php?mod=viewthread&tid=615744&fromuid=3250941 (出处: 意法半导体STM32/STM8技术社区) 5 |# d6 R/ \3 u1 T( [4 T" F9 ^3 Z0 x! U6 G $ m2 ]# C; i# s% y1 B* B* ]* H |
| 好是 是 |
| 我是小白 |
STM8自学笔记(推荐STM8很好的入门电子书)
无刷直流电机控制应用+基于STM8S系列单片机---电子书
MCSDK FOC应用详解
【精华资料】STM8Sxx固件库FOR IAR
STM32F10xxx 正交编码器接口应用笔记 及源代码
基于STM8的DALI (数字可寻址调光协议)
分享STM8 风驰光盘的资料,是完整的(包括原理图+例程+PDF注释)
基于STM32定时器ETR信号的应用示例
《无刷直流电机控制应用 基于STM8S系列单片机》
STM8S库函数中文参考 小软件
微信公众号
手机版