1.总结串口的发送和接收功能使用到的函数
发送函数:HAL_StatusTypeDef HAL_UART_Transmit(UART_HandleTypeDef *huart, const uint8_t *pData, uint16_t Size, uint32_t Timeout)
参数1:指定要使用的串口
参数2:要发送的数据字节数(数据的长度),strlen可以计算字符串的长度,使用sizeof计算的是字符串所占内存的大小
参数3:超时时间,单位是ms
HAL_StatusTypeDef:是否发送数据成功
接收函数:HAL_StatusTypeDef HAL_UART_Receive_IT(UART_HandleTypeDef *huart, uint8_t *pData, uint16_t Size)
参数1:指定从哪个串口中接收数据
参数2:接收到数据后保存的地址
参数3:每一次接收多少个字节数据
HAL_StatusTypeDef:是否成功开启串口接收功能
2.总结DMA的作用,和DMA+空闲中断的使用方式
DMA:直接内存存取器(无需通过CPU也可读取和写入数据)
DMA+空闲中断:空闲中断:在发送一串字符串时,两个字符之间的间隔非常短,所以在两个字符之间不叫空闲,当总线上在一个字节的时间内没有再接收到数据时,就会启动空闲中断。
当发送完一次数据后,过一个发送字节的时间内没有收到数据,启动空闲中断,处理接收到的一包数据。
DMA接收函数
3.使用PWM+ADC光敏电阻完成光控灯的实验