電子工程網(wǎng)
標題:
stm32串口發(fā)送數據很多,求幫助!
[打印本頁(yè)]
作者:
蕭條桑拓
時(shí)間:
2013-4-19 18:38
標題:
stm32串口發(fā)送數據很多,求幫助!
if(TIM6->SR & 0X0001)
{
if(num_10ms==2) //讀取各電機碼盤(pán)測速值
{
speed_1=TIM2->CNT;
speed_2=TIM3->CNT;
speed_3=TIM4->CNT;
speed_4=TIM5->CNT;
TIM2->CNT = 0;
TIM3->CNT = 0;
TIM4->CNT = 0;
TIM5->CNT = 0;
USART1_SendChar(BYTE1(speed_1));
USART1_SendChar(BYTE0(speed_1));
程序是在定時(shí)器中斷函數中讀取計數器的值,然后把這個(gè)值通過(guò)串口發(fā)送給電腦。發(fā)送的值在150左右。
while(1)
{
{
//Wave_handle();
delay_ms(60);
USART1_SendChar(BYTE1(speed_1));
USART1_SendChar(BYTE0(speed_1));
}
// LCD_Write_ASCII_String(0,0,"wor");
// Motor_Start(PWM_MAX1,PWM_MAX2,PWM_MAX3,PWM_MAX4);
}
而把它改到main函數主循環(huán)中,通過(guò)串口將數據發(fā)送給電腦,發(fā)送的值就全變成0了,這到底是怎么回事?求指導。
作者:
asean
時(shí)間:
2013-5-29 05:36
你的代碼中變量沒(méi)有注釋?zhuān)荒芡耆炊愕拇a,只能猜你的的代碼問(wèn)題。根據你的描述,你將這段代碼從定時(shí)中斷服務(wù)程序改放到main函數主循環(huán)中,就出現這種情況,那可能是因為定時(shí)中斷服務(wù)程序修改了你這段代碼中的某個(gè)條件,如TIM6->SR ,或num_10ms。你改到main函數主循環(huán)后,因為這些條件不滿(mǎn)足,speed_1沒(méi)被修改,所以發(fā)出的數值就是默認值。
歡迎光臨 電子工程網(wǎng) (http://selenalain.com/)
Powered by Discuz! X3.4
午夜高清国产拍精品福利|亚洲色精品88色婷婷七月丁香|91久久精品无码一区|99久久国语露脸精品|动漫卡通亚洲综合专区48页