-
很感谢楼主这么无私的分享这么好的东东{:1_103:}
-
你好 ,我也出现了你的这种情况
PB11 ETH_MII_TX_EN
PB12 ETH_MII_TXD0
PB13 ETH_MII_TXD1
PC4 ETH_MII_RXD0
PC5 ETH_MII_RXD1
PA7 ETH_MII_RX_DV/ETH_RMII_CRS_DV
PC1 ETH_MII_MDC
PA2 ETH_MII_MDIO
PA1 ETH_MII_RX_CLK/ETH_RMII_REF_CLK
在你的例程上在stm32f107.c中修改引脚,但是ping不同啊,不知道怎么回事儿啊,希望能帮着解决下
-
我已经找到判断网线通断的中断函数了,但是实现重新连接还是有些困难啊~~不知你有没有什么号好的方法?
-
我用的是407,最近也在测通信速度,最快的时候收发可以达到500K,发现的现象就是每次发送的数据量越大速度越快,到达一定值后减慢,至于楼主说的丢包问题还没出现过~~~
-
谢谢分享,学习了:)
-
谢谢分享~~~~
-
谢谢分享,下来看看~~
-
:victory: 谢谢分享,下载看看怎么样~~
-
:) 谢谢楼主的分享
-
谢谢楼主的分享
-
下来看看是什么,程序的好坏还有待考察~~~
-
我只是举例子说的,现实中刚开始使用的是115200,后来改成9600的
-
STM32F407,我只是举例子说的,现实中刚开始使用的是115200,后来改成9600的
-
谢谢楼主分享这么有用的东西,辛苦了~~~
-
主函数中的发送函数怎么没被调用啊?
在主函数里判断,当那个标志位=1时,执行发送函数?往串口发送字符串。
中断引用这能细讲讲吗?
-
void USART1_Puts(char *str)
{
while (*str)
{
USART_SendData(USART1, *str++);
/* Loop until the end of transmission */
while (USART_GetFlagStatus(USART1, USART_FLAG_TXE) == RESET); //详见英文参考的521页,当TXE被置起时,一帧数据传输完成
}
}
-
已经解决了,就是在函数中缺少了延迟函数!
-
楼主太帅了吧,喜欢,赞一个~~
-
你说的这个函数我在主函数中已经写了,但是处理的过程我是在usart.c中用中断处理的,也就是在void USART1_IRQHandler(void)
这个函数中说明接收和发送的关系,请问你的“然后”之后是啥啊?
-
中断程序如下:
void USART1_IRQHandler(void)
{
if (USART_GetITStatus(USART1, USART_IT_RXNE) != RESET) //判断为接收中断
{
USART_ClearITPendingBit(USART1, USART_IT_RXNE);//清除中断标志
if(USART_ReceiveData(USART1)=='a'){
USART_SendData(USART1,'A'); //发送数据