历史上的今天
今天是:2024年09月01日(星期日)
2018年09月01日 | STM32F103程序设计-9-USB转TTL串口(收发)
2018-09-01 来源:eefocus
在上一个例程USB转TTL串口(printf)的基础上进行修改。主要修改了以下几点内容:
1.由于不要使用printf了,所以把PUTCHAR_PROTOTYPE的定义部分去掉。
2.从官网例程中找到串口收发数据的代码,并融合到新定义的串口收、发数据的函数中。
例程中串口发数据的代码(已进行细微改动):
/* Send one byte from USARTy to USARTz */
USART_SendData(USART1, data);
/* Loop until USARTy DR register is empty */
while(USART_GetFlagStatus(USART1, USART_FLAG_TXE) == RESET)
{
}
例程中串口收数据的代码(已进行细微改动):
/* Loop until the USARTz Receive Data Register is not empty */
while(USART_GetFlagStatus(USART1, USART_FLAG_RXNE) == RESET)
{
}
/* Store the received byte in RxBuffer */
ReceiveData = (USART_ReceiveData(USART1) & 0x7F);
新定义的串口发数据的函数:
void USART1_Send(uint16_t data)
{
/* Send one byte from USARTy to USARTz */
USART_SendData(USART1, data);
/* Loop until USARTy DR register is empty */
while(USART_GetFlagStatus(USART1, USART_FLAG_TXE) == RESET)
{
}
}
新定义的串口收数据的函数:
uint8_t USART1_Receive(void)
{
uint8_t ReceiveData;
/* Loop until the USARTz Receive Data Register is not empty */
while(USART_GetFlagStatus(USART1, USART_FLAG_RXNE) == RESET)
{
}
/* Store the received byte in RxBuffer */
ReceiveData = (USART_ReceiveData(USART1) & 0x7F);
return ReceiveData;
}
3.在主函数中先写一条接收数据的函数,接着将收到数据通过串口发回电脑。
SerialBuf = USART1_Receive();
USART1_Send(SerialBuf);
Delay(90000);
可以看出:1.本程序使用的是查询的方式,MCU的利用率低,今后还将学习中断的方式进行数据的接收。2.本程序收发的是一个字节的数据,今后还将学习收发一连串的数据。
下一篇:STM32之串口的使用
史海拾趣
|
呵呵,ARM7、ARM9 还有PXA3XX 等等嵌入式ARM都存在高低温时容易爆发故障?尤其是主频越高的CPU,越容易爆发高低温故障? 这是为什么? 这是因为我们疏忽了对于整个系统中的很多关键信号的完整性的研究、分析与设计; 我们的硬件、软硬件协调设计 ...… 查看全部问答> |
|
我的设备中没有加声卡,只有一个蜂器鸣,写了个蜂鸣器的驱动,WINCE中的函数MessageBeep()如何去实现呢?MessageBeep()都调用了哪些函数和信息?请指点一下,谢谢!… 查看全部问答> |
|
cannot open file 'ceddk.lib'(急寻解决办法) 别人考我一个工程EVC的 在他那可以运行 在我电脑上运行报错如下: LINK : fatal error LNK1104: cannot open file \'ceddk.lib\' 是要将这个库加到工程中吗? 哪位有这个库的发我一个 万分感谢! mickeyhao66@163.com… 查看全部问答> |
|
WinCE中,在主对话框中有一子对话框,在子对话框中我用 CreateWindow(TEXT(\"DISPLAYCLASS\")……) 创建了一个IE控件,请问如何使当我鼠标指针只要一移到IE控件中就弹出一个消息框???… 查看全部问答> |
|
8mA的sink电流比较变态。。。。。。 STM8S没有Chip_ID比较变态。。。。。。 其他都是浮云。。。。。。 swim.jpg (11.35 KB) 下载次数:32 2009-12-31 15:54 … 查看全部问答> |




