1
完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
串口是单片机中常常使用的通信接口,通常我们发送的数据是8bit的数据,但是有些时候,需要发送16bit的数据,比如高精度ADC的采样数据,这时候需要高低八位分开传,不能简单的使用官方的原函数,否则会造成高八位的缺失。
8Bit数据传输函数 代码1中展示的是STM32官方的8bit数据传输函数, /** * @brief Transmits single data through the USARTx peripheral. * @param USARTx: Select the USART or the UART peripheral. * This parameter can be one of the following values: * USART1, USART2, USART3, UART4 or UART5. * @param Data: the data to transmit. * @retval None */ void USART_SendData(USART_TypeDef* USARTx, uint16_t Data) { /* Check the parameters */ assert_param(IS_USART_ALL_PERIPH(USARTx)); assert_param(IS_USART_DATA(Data)); /* Transmit Data */ USARTx->DR = (Data & (uint16_t)0x01FF); } 代码1:8Bit数据传输函数[1] 16Bit数据传输函数 /***************** 发送16Bit数据**********************/ //满洲里***电子科技 www.guofengdianzi.com //微信:GuoFengDianZi void Usart_SendHalfWord( USART_TypeDef * pUSARTx, uint16_t ch) { uint8_t High, Low; High = (ch&0XFF00)>>8; Low = ch&0XFF; USART_SendData(pUSARTx,High); while (USART_GetFlagStatus(pUSARTx, USART_FLAG_TXE) == RESET); USART_SendData(pUSARTx,Low); while (USART_GetFlagStatus(pUSARTx, USART_FLAG_TXE) == RESET); } 代码2:16Bit数据传输函数 |
|
|
|
只有小组成员才能发言,加入小组>>
调试STM32H750的FMC总线读写PSRAM遇到的问题求解?
1780 浏览 1 评论
X-NUCLEO-IHM08M1板文档中输出电流为15Arms,15Arms是怎么得出来的呢?
1621 浏览 1 评论
1081 浏览 2 评论
STM32F030F4 HSI时钟温度测试过不去是怎么回事?
728 浏览 2 评论
ST25R3916能否对ISO15693的标签芯片进行分区域写密码?
1679 浏览 2 评论
1938浏览 9评论
STM32仿真器是选择ST-LINK还是选择J-LINK?各有什么优势啊?
731浏览 4评论
STM32F0_TIM2输出pwm2后OLED变暗或者系统重启是怎么回事?
570浏览 3评论
596浏览 3评论
stm32cubemx生成mdk-arm v4项目文件无法打开是什么原因导致的?
556浏览 3评论
小黑屋| 手机版| Archiver| 德赢Vwin官网 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-24 03:42 , Processed in 0.750944 second(s), Total 78, Slave 62 queries .
Powered by 德赢Vwin官网 网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
德赢Vwin官网 观察
版权所有 © 湖南华秋数字科技有限公司
德赢Vwin官网 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号