永发信息网

STM8L152串口接收,我用STM8+ZIGBEE终端10秒发送一次,但是STM8+路由串口接收再发送就会20秒发送一次

答案:2  悬赏:30  手机版
解决时间 2021-01-04 00:22
如果终端1分钟发送一次,那么路由转发时就会2分钟发送一次,就是终端发了两组数据,路由只会转发一组,求大神帮忙啊
INTERRUPT_HANDLER(USART1_RX_TIM5_CC_IRQHandler,28)
{

disableInterrupts();
flag=1;
u8 re;
for(num=13;num<65;num++)//接收发送过来数据
{
re=USART_ReceiveData8(USART1);
UARTReadDataBuf[num]=re;
while ( USART_GetFlagStatus(USART1, USART_FLAG_RXNE) == RESET);
}
usart_receive_strings();//发送接收到的一组数据

}

这是主函数里的循环:
while(1)
{

USART_Cmd(USART1,ENABLE);
enableInterrupts();

}

这是把接收到的数据发送给协调器:
void usart_receive_strings(void)
{

UARTReadDataBuf[0]=0xAA;
UARTReadDataBuf[1]=0x00;
UARTReadDataBuf[2]=0x00;
UARTReadDataBuf[3]=0x55;//发给协调器
UARTReadDataBuf[4]='#';
UARTReadDataBuf[5]='A';
UARTReadDataBuf[6]='H';
UARTReadDataBuf[7]='H';
UARTReadDataBuf[8]='F';

UARTReadDataBuf[13]='0'+Addr % 10;
UARTReadDataBuf[12]='0'+Addr % 100/10;
UARTReadDataBuf[11]='0'+Addr % 1000/100;
UARTReadDataBuf[10]='0'+Addr % 10000/1000;
UARTReadDataBuf[9]='0'+Addr / 10000;

// UART_Send_Data(UARTReadDataBuf,num);
//num=14;

UART_Send_Data(UARTReadDataBuf,65);

}
最佳答案
计数是按照接收与发送之和,你直接把间隔设置为5秒。
全部回答
你说呢...
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
汽油机工作的四个冲程中,将内能转化为机械能
呼吸作用达到保鲜的目的,人们常用石灰水作为
如图是一款手压照明手电筒,具有绿色、环保、
苹果手机怎样在手机上恢复已删除的短信
六月的帐怎么重新做进用友帐套
做两个长方形有盖纸盒,尺寸如下表:(单位:
“正是在本科期间”用英语强调句怎么翻译
剑网三 方士 腰带 有没有外观
据统计,某班50名学生参加2006年初中毕业生学
中国护照到法国转机需要签证吗?
2012年,我国将继续实施积极的财政政策和稳健
口袋妖怪ORAS物攻忍者蛙要固执还是开朗
桃江县益阳大栗港镇中心小学这个地址怎么能查
单选题新中国初期我国的外交方针政策中,成为
谷歌浏览器里有没有这几个类似火狐浏览器的插
推荐资讯
广州市城市管理综合执法局在什么地方啊,我要
淘宝优惠卡券怎么删除 淘宝优惠券怎么删除
你从哪里来歌曲
第一个把天竺佛教、历史、地理,风土人情等记
粗心超人是什么星座的?
宝宝你真棒英语怎么说
220v潜水泵同时安两个漏保可以吗怎么安装不跳
下列体现了对生命正确的认识是①人生苦短,及
卡地亚和江诗丹顿的表哪个好?
我下载了dota2因为c盘d盘没空间了,放在j盘没
单选题“世界上最名贵的衣服,不是珍珠衫,不
我不会打字,怎样可以快速学会打字 70分
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?