由 eefrog | 9 月 14, 2017 | HAL库示例教程
描述: I2C轮询方式对寄存器读写数据 HAL_I2C_Mem_Write(*hi2c, DevAddress, MemAddress, MemAddSize,*pData, Size, Timeout); *hi2c: I2C设备号指针,这里用的是I2C1: &hi2c1 DevAddress: 设备地址 MemAddress: 寄存器地址 MemAddSize: 寄存器长度 *pData: 数据指针 Size: 数据长度 Timeout: 超时时间 HAL_I2C_Mem_Read(*hi2c, DevAddress,...
由 eefrog | 9 月 10, 2017 | HAL库示例教程
描述: ADC轮询方式检测+CDC(VCP)传输查看,当按下按键后,ADC转换并发送一次。 HAL_ADC_Start(ADC_HandleTypeDef* hadc); //开启ADC转换 * hadc:&hadc HAL_ADC_PollForConversion(ADC_HandleTypeDef* hadc, uint32_t Timeout); //等待转换完成 * hadc:&hadc Timeout:超时时间 HAL_ADC_GetValue(ADC_HandleTypeDef* hadc);...
由 eefrog | 9 月 10, 2017 | HAL库示例教程
描述: USB接口CDC传输做VCP虚拟串口设备 CDC_Transmit_FS(uint8_t* Buf, uint16_t Len) Buf: 传输的数据指针 Len: 传输数据的长度 CDC_Receive_FS (uint8_t* Buf, uint32_t *Len) Buf: 接收的数据指针,不需处理 Len: 接收数据的长度,需要处理 示例 打开usbd_cdc_if.c文件,修改传输数据长度为64,添加接收数据长度变量DataLen。 /* USER CODE BEGIN PRIVATE_DEFINES */ /*...
由 eefrog | 9 月 9, 2017 | HAL库示例教程
描述: 串口轮询接收/发送数据函数 HAL_UART_Transmit(*huart, *pData, Size, Timeout); //串口发送 *huart: UART号指针,程序中用到了&huart1和&huart2 *pData: 数据指针,程序中用到了MyRxData1和MyTxData2 Size:数据长度 Timeout:超时时间 HAL_UART_Receive(*huart, *pData, Size, Timeout); //串口接收 *huart:...
由 eefrog | 9 月 6, 2017 | HAL库示例教程
描述: 中断回调函数,当发生GPIO外部中断时会回调执行这个函数,需要在主程序文件中添加此函数。 示例: 根据使用的外设,关闭未使用外设的初始化 /* Initialize all configured peripherals */ MX_GPIO_Init(); //开启GPIO初始化函数 // MX_I2C1_Init(); // MX_USART1_UART_Init(); // MX_USART2_UART_Init(); // MX_USB_DEVICE_Init(); // MX_ADC_Init(); //...
由 eefrog | 9 月 6, 2017 | HAL库示例教程
描述: GPIO输入检测函数 HAL_GPIO_ReadPin(GPIOx, GPIO_Pin); GPIOx: GPIO端口,GPIOA~GPIOH GPIO_Pin: 该端口对应的Pin脚数 示例: 根据使用的外设,关闭未使用外设的初始化 /* Initialize all configured peripherals */ MX_GPIO_Init(); //开启GPIO初始化函数 // MX_I2C1_Init(); // MX_USART1_UART_Init(); // MX_USART2_UART_Init();...