من که متوجه نشدم چی فرمودین، ولی اگه با اعداد هگز کار می کنید باید هگز هم عمل (فکر) کنید؛ مثلاً برای مقایسه باید با مقادیر هگز مقایسه کنید نه دسیمال :
int main(void)
{
int i = GeValueFormHardware(); // مقداری که از میکرو یا سخت افزار میخونید
if (i == 0x1A2B3C) // با مقدار موردنظر شما برابر هست یا نه؟ البته به هگز
{
cprintf("%x", i);
// Do somthing
}
else
// Do somthing else!
return 0;
}
اگه کار با اعداد هگز براتون سخت هست، باید به عدد صحیح تبدیلش کنید بعد مقایسه کنید؛ مثلاً تو مثال بالا بجای 0x1A2B3C باید 1715004 بنویسید.
امیدوارم درست فهمیده باشم منظورتون رو.