и это правда. Главное, структуру специально volatile объявил, а указатель нет, а на предупреждение компилера забил
Согласуйте импеданс!
87: mys_pt->qwer |= (1 << 4); 002A0 225020 mov.w #0x2502,0x0000 002A2 A04010 bset [0x0000],#4 88: mys_pt->qwer |= (1 << 5); 002A4 A05010 bset [0x0000],#5но это всего лишь плохой пример. Часто нужно именно записать значение, а не установить биты по маске. А еще, бывает надо переменную использовать а не константу:
85: a = (1 << 4); 002A0 200100 mov.w #0x10, w0 002A2 888000 mov.w w0, 0x1000 86: mys_pt = &my_struct; 87: 88: mys_pt->qwer |= a; 002A4 225020 mov.w #0x2502, w0 002A6 780110 mov.w [w0], w2 002A8 808001 mov.w 0x1000, w1 002AA 710801 ior.w w2, w1, [w0]
85: a = (1 << 4); 002A0 200100 mov.w #0x10, w0 002A2 888000 mov.w w0, 0x1000 92: BFARI(&mys_pt->qwer, 0, 15, BFA_SET, a); 002A6 225020 mov.w #0x2502, w0 002A8 808001 mov.w 0x1000, w1 002AA 708810 ior.w w1, [w0], [w0]