初级会员

- 积分
- 57
- 金钱
- 57
- 注册时间
- 2016-7-7
- 在线时间
- 7 小时
|
5金钱
以下是主函数代码,下载到板子上后出现的情况为:通过串口助手发送数值“100”时,灯为大约1s的闪烁;发送数值为“0.01”时,闪烁加快。按理论情况来说,当发送数据为100时,应该是灯100ms闪烁。请问问题出现在哪里?跪求大神
int main(void)
{
u8 USART_RX_BUF1[1];
u8 flag;
u16 *ti;
delay_init();
NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);
uart_init(115200);
output_init();
key_init();
ti=(u16*)0X08070000;
while(1)
{
u16 t,len;
if(USART_RX_STA&0x8000)
{
len=USART_RX_STA&0x3fff;
for(t=0;t<len;t++)
USART_RX_BUF1[t]=USART_RX_BUF[t];
flag=1;
}
if(flag==1)
{
STMFLASH_Write(0X08070000,(u16*)&USART_RX_BUF1[0],1);
delay_ms(10);
USART_RX_STA=0;
flag=0;
}
else
{
delay_ms(*ti);
led0=!led0;
}
}
}
|
最佳答案
查看完整内容[请看2#楼]
#include "stm32f10x.h"
#include "delay.h"
#include "key.h"
#include "output.h"
#include "exit.h"
#include "time.h"
#include "usart.h"
#include "stmflash.h"
int main(void)
{
u16 USART_RX_BUF1[10], USART_RX_BUF3[10];
u8 flag;
u16 *ti;
delay_init(); //Ñóê±oˉêy3õê¼»ˉ
NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);//éèÖÃÖ ...
|