新手上路
- 积分
- 32
- 金钱
- 32
- 注册时间
- 2018-1-21
- 在线时间
- 3 小时
|
1金钱
我将ADC采集的数据发到串口,怎么会出现图中的情况?不知道这些线是什么呢。
下面是主函数的代码
#include "led.h"
#include "delay.h"
#include "TIMER.h"
#include "usart.h"
#include "ADC.h"
int main(void)
{
u16 hhhh;
u8 a[4],t;
float temp;
u16 led1pwmval=0;
u8 flag=1;
led_Init();
delay_init();
uart_init(115200);
NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);
MY_acd_Init();
TIM3_pwm_Init(899,0);
while(1)
{
delay_ms(10);
if(flag) led1pwmval++;
else led1pwmval--;
if(led1pwmval>300) flag=0;
if(led1pwmval==0) flag=1;
TIM_SetCompare2(TIM3,led1pwmval);
delay_ms(50);
if(USART_GetFlagStatus(USART1,USART_FLAG_TXE))
{
hhhh=Get_Adc(ADC_Channel_1);
temp=(float)hhhh/4096*3.3;
hhhh=temp;
a[0]=hhhh;
temp=temp-hhhh;
temp=temp*10;
hhhh=temp;
a[1]=hhhh;
for(t=0;t<2;t++)
{
USART_SendData(USART1,a[t]);
while(USART_GetFlagStatus(USART1,USART_FLAG_TC)!=SET);
}
delay_ms(50);
}
}
}
|
|