发表于 2021-1-29 15:35
问题显然不在这里。外面char型给Num赋值做了符号位扩展,变负数了。
zhanghya 发表于 2021-1-29 16:04
你可以试下这个方法,比用除法节省处理时间。如果输入大于1000还需要对>1000和>10000处理。
void UART_Sen ...
zhanghya 发表于 2021-1-29 16:04
你可以试下这个方法,比用除法节省处理时间。如果输入大于1000还需要对>1000和>10000处理。
void UART_Sen ...
cyq1968 发表于 2021-1-29 17:51
问题是小于7F时是正常的,一到80H以上就不对了,会是什么问题?
发表于 2021-1-29 18:00
原来你不懂符号位扩展。0x80是-128,扩展到16位int就是0xff80,还是-128,但是你当成65408来处理了。你贴 ...
rundstedt 发表于 2021-1-29 18:00
原来你不懂符号位扩展。0x80是-128,扩展到16位int就是0xff80,还是-128,但是你当成65408来处理了。你贴 ...
kaixuan_27 发表于 2021-1-29 21:39
前面看上去没有问题,可能是UART_Send_Byte函数的问题。
KongQuan 发表于 2021-1-31 21:09
应该是传入的数据有问题。
rundstedt 发表于 2021-1-29 15:35
问题显然不在这里。外面char型给Num赋值做了符号位扩展,变负数了。
欢迎光临 (http://www.51hei.com/bbs/) | Powered by Discuz! X3.1 |