打印

stm32 串口 为什么没人问这个?太简单?

[复制链接]
1759|18
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
深夜星空|  楼主 | 2013-10-10 21:02 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
写串口程序时,看到网上好多地方有这段代码:
void USART1_IRQHandler(void)                                                                         //串口1中断
{
  char RX_dat;                                                                                                     //定义字符变量
  if (USART_GetITStatus(USART1, USART_IT_RXNE) != RESET)                      //判断发生接收中断
  {
   USART_ClearITPendingBit(USART1,    USART_IT_RXNE);                             //清除中断标志
   GPIO_WriteBit(GPIOB, GPIO_Pin_10, (BitAction)0x01);                                  //开始传输
   RX_dat=USART_ReceiveData(USART1)                                                        //接收数据,整理除去前两位
   USART_SendData(USART1, RX_dat);                                                            //发送数据
   while(USART_GetFlagStatus(USART1, USART_FLAG_TXE) == RESET){}    //等待发送结束
}

红色部分是重点,这句话是向串口的接收引脚写 set 吧,注释是开始传输。这句代码怎么就是开始传输了?我查了好多,资料上也没具体写。而且好多人用,没人问。各位大神原谅我好奇心强,陷在这就像弄明白了,T T 。求各位帮忙
沙发
sun1238898| | 2013-10-10 21:53 | 只看该作者
有时的注释不一定就是正确的。

使用特权

评论回复
板凳
s51983| | 2013-10-11 07:40 | 只看该作者
PB10是USART3的TX,程序里用的USART1,这个脚的作用貌似只是发送数据里亮/灭一个灯

使用特权

评论回复
地板
airwill| | 2013-10-11 07:52 | 只看该作者
楼主很仔细。鼓励一下。
是不是跟 cts 这样的协议有关,否则就不合理了。
我倒是从来没有见过这样的代码。

使用特权

评论回复
5
feilusia| | 2013-10-11 09:21 | 只看该作者
这个很可能是点亮LED,直观告诉你传输开始了。

使用特权

评论回复
6
香水城| | 2013-10-11 11:43 | 只看该作者
这里以GPIO方式操作某个PB10,再加上右边的如此注释,第一反应这是用户调试用的toggle信号:lol

使用特权

评论回复
7
杨爱林林| | 2013-10-11 12:00 | 只看该作者
香主居然笑了

使用特权

评论回复
8
深夜星空|  楼主 | 2013-11-7 11:26 | 只看该作者
实在不好意思,帮别人做个项目,才来回复,问题搞清楚了,应该就是个LED闪烁。谢谢各位,散分

使用特权

评论回复
9
深夜星空|  楼主 | 2013-11-7 11:27 | 只看该作者
s51983 发表于 2013-10-11 07:40
PB10是USART3的TX,程序里用的USART1,这个脚的作用貌似只是发送数据里亮/灭一个灯 ...

哦哦,明白了。

使用特权

评论回复
10
深夜星空|  楼主 | 2013-11-7 11:27 | 只看该作者
airwill 发表于 2013-10-11 07:52
楼主很仔细。鼓励一下。
是不是跟 cts 这样的协议有关,否则就不合理了。
我倒是从来没有见过这样的代码。 ...

哈哈,应该是LED的

使用特权

评论回复
11
深夜星空|  楼主 | 2013-11-7 11:28 | 只看该作者
feilusia 发表于 2013-10-11 09:21
这个很可能是点亮LED,直观告诉你传输开始了。

晓得了晓得了

使用特权

评论回复
12
深夜星空|  楼主 | 2013-11-7 11:28 | 只看该作者
香水城 发表于 2013-10-11 11:43
这里以GPIO方式操作某个PB10,再加上右边的如此注释,第一反应这是用户调试用的toggle信号 ...

就是传输信号时LED一闪一闪的么,哈哈,多谢多谢

使用特权

评论回复
13
拿起书本| | 2013-11-8 10:27 | 只看该作者
楼主的钻研认真的态度是我们搞技术的人所需要的,支持楼主。跟着学习

使用特权

评论回复
14
深夜星空|  楼主 | 2013-11-11 01:32 | 只看该作者
拿起书本 发表于 2013-11-8 10:27
楼主的钻研认真的态度是我们搞技术的人所需要的,支持楼主。跟着学习

额,就是好奇而已,哈哈

使用特权

评论回复
15
outstanding| | 2013-11-11 08:08 | 只看该作者
:lol  钻研精神可嘉

使用特权

评论回复
16
深夜星空|  楼主 | 2013-11-14 12:23 | 只看该作者
outstanding 发表于 2013-11-11 08:08
钻研精神可嘉

好奇而已,哈哈

使用特权

评论回复
17
outstanding| | 2013-11-14 12:34 | 只看该作者
深夜星空 发表于 2013-11-14 12:23
好奇而已,哈哈

:lol

使用特权

评论回复
18
mamba_kb| | 2013-11-14 13:24 | 只看该作者
楼主你不该纠结于注释而把自己陷进去~

使用特权

评论回复
19
深夜星空|  楼主 | 2013-11-15 20:13 | 只看该作者
mamba_kb 发表于 2013-11-14 13:24
楼主你不该纠结于注释而把自己陷进去~

主要是不是一个人的注释是这样写的,我就陷进去了

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

31

主题

345

帖子

3

粉丝