熱門(mén): 51單片機(jī) | 24小時(shí)必答區(qū) | 單片機(jī)教程 | 單片機(jī)DIY制作 | STM32 | Cortex M3 | 模數(shù)電子 | 電子DIY制作 | 音響/功放 | 拆機(jī)樂(lè)園 | Arduino | 嵌入式OS | 程序設(shè)計(jì)
![]() |
發(fā)布時(shí)間: 2023-11-3 15:27
正文摘要:問(wèn)題如圖,IR_Val的定義是uint32_t,case的程序是stm8能用的,我現(xiàn)在要移到stm32上,keil給我判錯(cuò),請(qǐng)問(wèn)有知道這是什么問(wèn)題嗎?先謝謝大家 |
應(yīng)該可以的,可能你這個(gè)數(shù)有點(diǎn)問(wèn)題,,char 還是int還是浮點(diǎn)型。也可以把這幾句單獨(dú)在調(diào)試一下,就一目了然了。 |
billaj 發(fā)表于 2023-11-4 15:53 你貼的代碼確實(shí)只比較了低16位,也可能高16位都一樣,前面另外判斷了,代碼不全不能確定。 |
難道是CASE只能是16位??? |
wulin 發(fā)表于 2023-11-3 18:54 但是你說(shuō)的跟樓主描述的完全相反,uint32_t在STM8編譯器里面是long,不符合你的要求,但是人家好用。在MDK里面是unsigned int類(lèi)型,樓主的數(shù)據(jù)最高位都是0,也就是說(shuō)都是正數(shù),與int類(lèi)型完全等效。 |
switch()括號(hào)中只可以允許int、char、bool、enum類(lèi)型,別的類(lèi)型不可以。 |
在MDK中,右鍵項(xiàng)目,彈出options for target,然后在c/c++標(biāo)簽中的Misc Controls里面加上“--asm”就可以輸出匯編文件了,在obj目錄里面的s文件就是c語(yǔ)言對(duì)應(yīng)的匯編。 |
可以看一下生成的匯編代碼。 |
Powered by 單片機(jī)教程網(wǎng)