ym0sly 发表于 2022-11-26 19:25

GPIO的两大功能

通用输入输出端口GPIO具有两大功能,一种是作为一个可控的端口引脚,另外一种是通过端口映射功能连接到芯片外设。最为常用的功能是,可以作为一个可控的端口引脚,配置该引脚为输入或者输出。输出功能包括强推挽输出和开漏输出两项,当配置为强推挽输出时,用户可以对该引脚任何时刻的电平状态进行定义,高电平或者低电平,当配置为开漏输出时,此时需要外接上拉电阻才能输出高电平信号。
图为:标准 I/O 端口位的基本结构



ym0sly 发表于 2022-11-26 19:26

使用示例
1、输出示例:
配置为推挽输出(在定义电平高低前应先进行配置初始化成功,可以用示波器看初始是否是设置的高电平或低电平)
gpio_mode_set (GPIOF, GPIO_MODE_OUTPUT, GPIO_PUPD_NONE, GPIO_PIN 6);
gpio_output_options_set (GPIOF, GPIO_OTYPE_PP, GPIO_OSPEED_50MHz, GPIO_PIN_6);
GPIO_BC (GPIOF) = GPIO_PIN_6://输出初始化设置为0
//GPIO_BOP (GPIOF) = GPIO_PIN_6://输出初始化设置为1
可以对电平状态进行设置;
gpio_bit_reset(GPIOC, GPIO_PIN_6);
gpio_bit_set(GPIOC, GPIO_PIN_6);

ym0sly 发表于 2022-11-26 19:26

输入示例:
输入功能可以对任意时刻引脚电平状态进行查看,其中输入功能包括输入上拉、输入下拉、高阻态三种,输入上拉和输入下拉分别设定输入引脚处于高电平和低电平状态,而设置成高阻态模式时,输入引脚电平不稳定。 在输入模式下(复位后默认),输出驱动器关闭(高阻抗)。 端口引脚上的实际电压电平通过施密特触发器转换为逻辑 0 或 1,并可通过只读寄存器 Pn_IN 读取。 输入信号直接连接到外围单元的各种输入 (AltDataIn)。 从引脚到输入寄存器 Pn_IN 和AltDataIn 的输入线的功能与端口引脚是作为输入还是作为输出运行无关。 这意味着当端口处于输出模式时,引脚的电平可以由软件通过 Pn_IN 读取,或者外设可以使用引脚电平作为输入。

ym0sly 发表于 2022-11-26 19:28

示例:一般输入及模拟输入配置

gpio_mode_set (GPIOF, GPIO_MODE_INPUT, GPIO_PUPD_PULLUP, GPIO_PIN 6);
unsigned char MODE Status (void)
{
unsigned char status ;
ostatus = (unsigned char) ((GPIO_ISTAT (GPIOC) >>6)&0x00000001);1/GPIO PIN6
}//检测端口的状态

gpio_mode_set (GPIOF, GPIO_MOD_ANALOG, GPIO_PUPD_NONE, GPIO_PIN 6);//模拟输入

帛灿灿 发表于 2024-11-8 07:04


利用协议、加密算法或这些算法中的安全漏洞来进行攻击

Bblythe 发表于 2024-11-8 08:07


CPLD解密,DSP解密都习惯称为单片机解密

周半梅 发表于 2024-11-8 10:03


具存储功能的存储器芯片也能加密

Pulitzer 发表于 2024-11-8 11:06


紫外光复位保护电路是不行的

童雨竹 发表于 2024-11-8 13:02


大部分能够读取或者识别Flash上的数据就能够获得Firmware文件

Wordsworth 发表于 2024-11-8 14:05


微探针技术都属于侵入型攻击

Clyde011 发表于 2024-11-8 15:08


大部分单片机都带有加密锁定位或者加密字节

公羊子丹 发表于 2024-11-8 16:01


如果在编程时加密锁定位被使能/锁定,就无法用普通编程器直接读取单片机内的程序

万图 发表于 2024-11-8 17:04


编程器定位插字节

Uriah 发表于 2024-11-8 18:07


单片机一般都有内部程序区和数据区
页: [1]
查看完整版本: GPIO的两大功能