草庐IT

HAL_GPIO_ReadPin

全部标签

STM32F1使用HAL库驱动DS18B20

目录DS18B20概述工程配置 命令手册单总线协议 初始化时序 写时序读时序读取温度驱动附录DS18B20概述 DS18B20是一款单总线(onewire)芯片,因此其DQ引脚与单片机相连的IO口既要是输入也要是输出,cubeMX的初始化引脚设置只能选择其一,这里我们使用手动配置引脚。工程配置先用cubeMX生成一个工程模板,初始化时钟等等。 命令手册 这里有两个重要的指令,0x44表示触发芯片进行温度转化,0xbe表示请求读取温度转化后的值。还有一个常用指令为0xCC,意义是跳过读取芯片ROM而节约时间。单总线协议由于是单总线协议,要想写指令,收数据都要遵循其标准,下面查看其时序 初始化时序

蓝桥杯STM32 G431 hal库开发速成——I2C总线

I2C应用一、M24C02芯片一、概念M24C02是一种EEPROM(ElectricallyErasableProgrammableRead-OnlyMemory)芯片,它通过I2C(Inter-IntegratedCircuit)总线接口与其他设备进行通信。I2C是一种广泛使用的串行通信协议,特别适用于低速通信,在多个设备间传输数据时只需要两条线:数据线(SDA)和时钟线(SCL)。1.M24C02的特点:存储容量:M24C02提供256字节(2Kb)的存储空间。非易失性:作为EEPROM,M24C02即使在断电的情况下也能保持存储的数据。电子擦除和编程:允许通过电子方式进行数据的擦除和重

STM32-GPIO

一、GPIO基本资料     GPIO为通用输入输出口,可配置8种输入输出模式,引脚电平为0~3.3V(部分可容忍5V)。     输出模式下可控制端口输出高低电平,以驱动LED,控制蜂鸣器,模拟通信协议输出时序(I2C,SPI)等。     输入模式下可读取端口的高低电平或电压,以读取按键输入,外接模块电平信号输入,ADC电压采集,模拟通信协议接收数据等。二、GPIO结构 图一    图二图三    如图一,STM32中,所有GPIO挂载在APB2总线上。按GPIOA,GPIOB,GPIOC…命名,每GPIO外设16引脚(0~15/PX0~PX15)。    如图二,寄存器是特殊的储存器,内

【STM32 CubeMX】HAL库的本质读写寄存器

文章目录前言一、HAL库的本质1.1HAL库的本质是操作寄存器1.2自己实现HAL_GPIO_WritePin寄存器通过寄存器的操作点灯代码概况Portbitset/resetregister寄存器总结前言在嵌入式系统开发中,HAL(HardwareAbstractionLayer)库是一个重要的概念,它提供了一个抽象层,使开发者可以更容易地编写可移植的代码,而不必担心底层硬件的细节。STM32CubeMX是一款由STMicroelectronics提供的工具,用于生成STM32微控制器的初始化代码,其中包括了HAL库的使用。HAL库的本质与HAL库源码分析HAL库的本质是一个由供应商提供的软

stm32——hal库学习笔记(ADC)

这里写目录标题一、ADC简介(了解)1.1,什么是ADC?1.2,常见的ADC类型1.3,并联比较型工作示意图1.4,逐次逼近型工作示意图1.5,ADC的特性参数1.6,STM32各系列ADC的主要特性二、ADC工作原理(掌握)2.1,ADC框图简介(F1)2.2,参考电压/模拟部分电压(战舰为例)2.3,输入通道(F1为例)2.4,转换序列(F1为例)2.5,触发源(F1)2.6,转换时间(F1)2.7,数据寄存器(F1)2.8,中断2.9,单次转换模式和连续转换模式2.10,扫描模式三、单通道ADC采集实验(熟悉)3.1,实验简要(了解)3.2,ADC寄存器介绍(了解)3.3,单通道ADC

dts pinctrl初始gpio0方法

1、在pinctrl-rockchip.c文件中添加头文件#include如下 2、 在如下函数添加红色代码staticintrockchip_pinctrl_probe(structplatform_device*pdev){   structrockchip_pinctrl*info;   structdevice*dev=&pdev->dev;   structrockchip_pin_ctrl*ctrl;   structdevice_node*np=pdev->dev.of_node,*node;   structresource*res;   void__iomem*base;  

基于HAL库的STM32-ADC学习(附带代码)

1.前言STM32ADC是一种模拟/数字转换器,可以将模拟信号转换为数字信号。STM32ADC有多个通道,可以选择不同的输入源、转换模式、触发方式和采样时间。STM32ADC的转换结果可以通过中断、DMA或者寄存器读取。在本文中,我将介绍如何使用STM32CubeMX和HAL库配置和使用STM32ADC,以及如何编写一个简单的ADC转换的代码实例。我将使用STM32F103C8T6开发板作为硬件平台,使用PC0作为ADC1的通道10输入,使用ADC1的通道16作为内部温度传感器输入。我将使用KeiluVision5作为编译器和调试器。2.STM32CubeMX配置1.首先,我们需要使用STM3

基于HAL库的STM32简单串口通信

目录一、实验要求二、实验介绍2.1RS232电平与TTL电平的区别2.2USB/TTL转232"模块原理三、连续发送“helloWindows!”3.1创建工程3.2添加代码3.3烧录结果四、使用字符控制发送“helloWindows!”五、仿真逻辑分析仪功能观察串口输出波形一、实验要求(1)了解串口协议和RS-232标准,以及RS232电平与TTL电平的区别;了解"USB/TTL转232"模块(以CH340芯片模块为例)的工作原理。(2)STM32系统给上位机(win10)连续发送“hellowindows!”。win10采用“串口助手”工具接收。(3)在完成以上任务基础,继续扩展功能:当上

STM32CubeMX-HAL库-UART串口接收中断回调函数代码分析

        CubeMx中HAL库函数的调用不同于库函数调用,在学习CubeMx串口通信时,不理解HAL库中的回调函数是怎么被调用的,于是查看每个的定义,参考其他人写的博客,总算弄明白了HAL库中断调用与库函数不同之处。写下这篇博客一是加深自己的理解,二是希望对不理解HAL库中回调函数调用机制的朋友有所帮助。        工程代码参考:【STM32】-CubeMX-HAL库-UART-串口通信-STM32F103C8T6-收发测试        在库函数中,UART串口发生中断时,我们直接将业务代码写在voidUSART1_IRQHandler(void)中,如下图:voidUSART1

NVIDIA Jetson Nano GPIO口和通信协议简单介绍及点亮第一个程序LED灯闪烁

在前面的文章中,我已经想大家介绍了NVIDIAJetsonNano这个板子。今天我将给大家介绍NVIDIAJetsonNano最重要的一个接口–GPIO。JetsonNano和树莓派一样作为嵌入式设备提供了GPIO接口,这个接口支持UART,PWM,I2S,I2C等方式通信。在本期文章,我将和大家一起探索。目录GPIO口介绍UART,PWM,I2S,I2C如何安装GPIO库用代码控制LED灯闪烁GPIOGPIO(GeneralPurposeInputOutput)通用输入输出。有时候我们会简称为“IO口”。通用,就是说它是万金油,干什么都行,既能当输入口使用,又能当输出口使用。那我们怎么用?写