早教吧 育儿知识 作业答案 考试题库 百科 知识分享

stm32f407计算负数的问题intanglegan=0;if((TIM5->CNT)>=30000)anglegan=((TIM5->CNT-30000)+loop5)*3600/7135;elseanglegan=((TIM5->CNT-30000)+loop5)*3600/7135;我这样写的一个转换角度的式子不知为啥在(TIM5->CN

题目详情
stm32f407 计算负数的问题
int angle_gan=0;
if((TIM5->CNT) >= 30000)
angle_gan = ((TIM5->CNT-30000)+loop5)*3600/7135;
else
angle_gan = ((TIM5->CNT-30000)+loop5)*3600/7135;
我这样写的一个转换角度的式子 不知为啥 在 (TIM5->CNT-30000)计算为正数时 angle_gan是正确的,但是
在(TIM5->CNT-30000)计算为负数时 angle_gan的值却为60多万 不知为什么
我感觉貌似是数据类型的问题
▼优质解答
答案和解析
本来就是数据类型引起的问题,会不会是补码问题