PDA

View Full Version : ارسال بيت به بيت، يك بايت



nanosi
دوشنبه 28 مرداد 1392, 14:13 عصر
چطور ميتونم بيت به بيت يك بايت را استخراج كنم و روي يك پايه با تاخيرهاي زماني مناسب قرار بدم؟
مشكل من در استخراج بيت هست. C, codvision, mega16

farzadsw
دوشنبه 28 مرداد 1392, 20:14 عصر
برای استخراج یک یا چند بیت می تونید مقدار ماسک مناسبی درست کنید و با بایت موردنظر AND کنید.
مثلا برای بیت سوم متغییر X اینطوری میشه:
Y= X & 0x04
تو این حالت 0x04 همو ماسک شماست که باعث میشه فقط بیت سوم (0100 0000 ) تو متغییر Y ریخته یشه.
یه مرحله دیگه ای که میشه انجام داد، شیفت دادن هست (ضروری نیست):
Y= (X & 0x04) >> 2
اینطوری اون بیت مورد نظر شما میاد اول بایت و راحت تر می تونید ازش استفاده کنید (0100 0000 میشه 0001 0000 )