>>What будет самая лучшая дорога доработать bitfields используемые для регистра оборудования
не использовать bitfields.
>> Я хочу доработать «DR» (биты 3.2)
Я не вижу как то сопрягает ваши bitfields DR
==============
См. если это, то вы управляете для:
Во всяком случае, оно кажется что вы хотите вашу функцию UpdateReg () быть вообще достаточно отрегулировать любой сценарий.
UpdateReg (маска чарса, сгорает newPattern);
где маской будет комплект произвольно помещенных битов освободятся
Я если допустить, что вы могу прочитать регистр в перемеююом temp, и после этого манипулирую ее, и окончательно пишу ее назад к регистру HW. (Это не всегда поистине, с иногда читать изменения регистра HW значение.)
Так маска приспособлена к первая ясной соответствуя биты в перемеююом temp (после того как вы читаете регистр HW). После этого, using маска снова с newPattern, я теперь имею действительный комплект битов (или 0) к или в регистру temp. После этого напишите temp назад к HW.