ReadFuseByte

Purpose: Read one of the ATmega Fuse BYTEs or the Lock BYTE (i.e., the BYTE containing all of the Lock bits.)
Assumes:  The value should be one of these four (4) documented values:
    0   the FUSE LOW BYTE
    1   the LOCK BITS BYTE
    2   the EXTENDED FUSE BYTE
    3   the FUSE HIGH BYTE
Passed: R24 BYTE bSelect 0 through 3, selected from one of the four values shown above
Returns:   R24 BYTE bResult the value which the MCU reported for the selection
Alters: R25 and the FLAGS
Example: 
PrintFuseByte:
   MOVW    R24, R26             ; In the parsing buffer, find the first space
   LDI     R22, ' '             ;  character and parse the value after it
   CALL    AParseValueAfter
   SBRS    R21, BIT_PV_VALID    ; Exit if the value is invalid or none given
   RET

   MOV     R24, R22             ; Move the Low BYTE parsed to R24 to select
   CALL    AReadFuseByte        ;  which Fuse or Lock Byte is to be read
   CALL    APrint0xHexBYTE      ; Print that single value then a Carriage
   JMP     APrintNewLine        ;  Return and Line Feed to finish and exit
Notes: The four values returned should be: FUSE LOW = 0xE2, LOCK BITS = 0xCC, EXTENDED FUSE = 0xFE, and FUSE HIGH = 0xD0.
Also see:  ReadSignatureByte and the F commands.