Mercurial > public > mk2
view code_part1/OSTC_code_asm_part1/spbrgselect.inc @ 125:2907b42c195b
Altimeter:
- use H = 19902 log10(P0/P)
- Interface to select sea level mbars.
- Average over 32 values, using 1/16 of mbar.
- Display in customview area.
- Fix display ****m when not yet computed
- Fix reset when exiting sleep mode
- Fix : edit menu in 1/4 of mbar.
- Fix use CF#49 to enable/disable altimeter, also in altimeter menu.
- Fix visible in Menu 2
author | JeanDo |
---|---|
date | Wed, 29 Dec 2010 01:41:13 +0100 |
parents | 96a35aeda5f2 |
children |
line wrap: on
line source
RoundResult SET 0 ; Rounding function. RoundResult = Round(aa/bb) Round macro aa,bb LOCAL rr = aa/bb LOCAL d1 = aa - rr*bb LOCAL d2 = (rr+1)*bb - aa RoundResult = rr if d1 >= d2 RoundResult++ endif endm AbsResult SET 0 Abs macro nr if nr>=0 AbsResult = nr else AbsResult = -nr endif endm Round xtal,(16*baud) spbrg_value EQU RoundResult-1 Round xtal,(16*(spbrg_value+1)) baud_real EQU RoundResult Abs(baud_real-baud) errpercent EQU AbsResult*100/baud if errpercent > 4 ERROR big error in baudrate: #v(errpercent)% endif if errpercent >= 2 messg baudrate not exact: #v(errpercent)% endif