Rev. 6.00, 08/04, page 69 of 628
2. Bit manipulation in a register containing a write-only bit
Example 3: BCLR instruction executed designating port 3 control register PCR3
As in the examples above, P3
7
and P3
6
are input pins, with a low-level signal input at P3
7
and a
high-level signal at P3
6
. The remaining pins, P3
5
to P3
0
, are output pins that output low-level
signals. In this example, the BCLR instruction is used to change pin P3
0
to an input port. It is
assumed that a high-level signal will be input to this input pin.
[A: Prior to executing BCLR]
P3
7
P3
6
P3
5
P3
4
P3
3
P3
2
P3
1
P3
0
Input/output Input
Input
Output
Output
Output
Output
Output
Output
Pin state
Low level High level Low level Low level Low level Low level Low level Low level
PCR3
0
0
1
1
1
1
1
1
PDR3
1
0
0
0
0
0
0
0
[B: BCLR instruction executed]
BCLR #0 , @PCR3
The BCLR instruction is executed designating PCR3.
[C: After executing BCLR]
P3
7
P3
6
P3
5
P3
4
P3
3
P3
2
P3
1
P3
0
Input/output Output
Output
Output
Output
Output
Output
Output
Input
Pin state
Low level High level Low level Low level Low level Low level Low level High level
PCR3
1
1
1
1
1
1
1
0
PDR3
1
0
0
0
0
0
0
0
[D: Explanation of how BCLR operates]
When the BCLR instruction is executed, first the CPU reads PCR3. Since PCR3 is a write-only
register, the CPU reads a value of H'FF, even though the PCR3 value is actually H'3F.
Next, the CPU clears bit 0 in the read data to 0, changing the data to H'FE. Finally, this value
(H'FE) is written to PCR3 and BCLR instruction execution ends.
As a result of this operation, bit 0 in PCR3 becomes 0, making P3
0
an input port. However, bits 7
and 6 in PCR3 change to 1, so that P3
7
and P3
6
change from input pins to output pins.
To avoid this problem, store a copy of the PCR3 data in a work area in memory. Perform the bit
manipulation on the data in the work area, then write this data to PCR3.
Содержание H8/38024 Series
Страница 18: ...Rev 6 00 08 04 page xviii of xxx...
Страница 30: ...Rev 6 00 08 04 page xxx of xxx...
Страница 130: ...Rev 6 00 08 04 page 100 of 628...
Страница 216: ...Rev 6 00 08 04 page 186 of 628...
Страница 416: ...Rev 6 00 08 04 page 386 of 628...
Страница 432: ...Rev 6 00 08 04 page 402 of 628...
Страница 468: ...Rev 6 00 08 04 page 438 of 628...
Страница 661: ...H8 38024 H8 38024S H8 38024F ZTAT H8 38124 Group Hardware Manual...