亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? rtc_calendar.s43

?? MSP430和GPS的接口程序
?? S43
?? 第 1 頁 / 共 2 頁
字號:
;******************************************************************************
;   RTC Library
;
;   Description; Keeps track of seconds, minutes, day, month, year, AM/PM
;                Leap years are accounted for until year 2400
;                Both EU standard and US daylight savings time is implimented
;
;   Typical Cycle Count per function:
;   incrementSeconds            15
;   incrementMinutes            15
;   incrementHours              28
;   incrementDays               38
;   incrementMonths             15
;   incrementYears              37
;   setDate                     815
;
;   Memory Usage:               645 bytes
;
;   L. Westlund
;   Version    1.2
;   Texas Instruments, Inc
;   January 2005
;******************************************************************************
;Change log
;
;1.3 - Passes all Suite tests - L.Westlund
;1.2 - Added setDate and daylight savings time functionality - L.Westlund
;1.1 - Condensed code for size by removing jumps - L.Westlund
;1.0 - Inital version - L.Westlund
;******************************************************************************


            ;Variables
            MODULE    RTC
            PUBLIC    second
            PUBLIC    minute
            PUBLIC    hour
            PUBLIC    day
            PUBLIC    month
            PUBLIC    year
            PUBLIC    PM
            PUBLIC    FebDays
            PUBLIC    dayOfWeek
            PUBLIC    dayLightZone
            ;Functions
            PUBLIC  incrementSeconds
            PUBLIC  incrementMinutes
            PUBLIC  incrementHours
            PUBLIC  incrementDays
            PUBLIC  incrementMonths
            PUBLIC  incrementYears
            PUBLIC  testLeap
            PUBLIC  setDate

            RSEG      DATA16_I
year        DS 2
second      DS 1
minute      DS 1
hour        DS 1
day         DS 1
month       DS 1
PM          DS 1
FebDays     DS 1
dayOfWeek   DS 1
dayLightZone DS 1
            RSEG      DATA16_ID
            DC16      0x2004
            DC8       0x00
            DC8       0x00
            DC8       0x12
            DC8       0x01
            DC8       0x00
            DC8       0x00
            DC8       0x29
            DC8       0x00
            DC8       0x01
            RSEG      DATA16_C
daysInMonth DC8 0x31, 0x28, 0x31, 0x30, 0x31, 0x30, 0x31, 0x31, 0x30
            DC8 0x31, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x30, 0x31
mNumbers    DC8 0x00, 0x03, 0x02, 0x05, 0x00, 0x03, 0x05, 0x01, 0x04, 0x06, 0x02, 0x04

            RSEG    CODE                    ; Code is relocatable
;============================================================================
; incrementSeconds
;============================================================================
incrementSeconds
            clrc
            dadd.b  #0x01,   &second        ; tick one second
            cmp.b   #0x60,   &second        ; see if we've hit 60 seconds
            jne     return                  ; if not, return
            clr.b   &second                 ; if so, go back to 00
                                            ; fall down to increment minutes
;============================================================================
; incrementMinutes
;============================================================================
incrementMinutes
            clrc
            dadd.b  #0x01,   &minute        ; tick one minute
            cmp.b   #0x60,   &minute        ; see if we've hit 60 minutes
            jne     return                  ; if not, return
            clr.b   &minute                 ; if so, go back to 00
                                            ; fall down to increment hours
;============================================================================
; incrementHours
;============================================================================
incrementHours
            clrc
            mov.b   &hour,   r14
            dadd.b  #0x01,   r14
            cmp.b   #0x01,   &dayLightZone  ; see what we are doing for DS
            jeq     US_DS_TEST
            jge     EU_DS_TEST

noDS        cmp.b   #0x12,   r14            ; test for 12:00 o'clock
            jne     notSwitchPM             ; if not, don't switch the PM variable
            tst.b   &PM                     ; see if it is PM and we should roll
            jnz     rollAM                  ; PM and roll bit set, change to AM and roll day
            xor.b   #0x01,   &PM            ; change PM value
returnHours
            mov.b   r14,     &hour
return      ret
notSwitchPM
            cmp.b   #0x13,   r14            ; see if we've hit 13
            jne     returnHours             ; if not, return
            mov.b   #0x01,   &hour          ; if so, 13 o'clock == 1 o'clock
            ret                             ; return to save CPU cycles
rollAM
            clr.b   &PM                     ; clear PM, now it is AM
            mov.b   r14,    &hour           ; save hour value
                                            ; fall down to increment days

;============================================================================
; incrementDays
;============================================================================
incrementDays
            clrc
            dadd.b  #0x01,   &day           ; add a day
            cmp.b   #0x06,   &dayOfWeek     ; see if it is Sat, end of week
            jl      notSat
            mov.b   #0xFF,   &dayOfWeek
notSat      add.b   #0x01,   &dayOfWeek
            mov.w   #daysInMonth, r13       ; move the destination addr (word) to r13
            mov.b   &month,  r15
            add.w   r15,     r13            ; add the month offset to the daysInMonth pointer
            mov.b   @r13,    r14            ; r14 = number of days in the current month
            cmp.b   #0x01,   &month         ; month '01' == FEB
            jne     compareDays             ; special case for Feb due to leap years
getFebDays
            mov.b   &FebDays, r14           ; r14 holds the number of days in the current Feb
compareDays
            sub.b   &day,    r14            ; r14 = number days in Month - current day value
            jge     return                  ; if r14 > 0 ... we still have days left
            mov.b   #0x01,   &day           ; if not, roll to day 1
                                            ; fall down to increment months

;============================================================================
; incrementMonths
;============================================================================
incrementMonths
            clrc
            dadd.b  #0x01,   &month         ; increment month counter
            cmp.b   #0x12,   &month         ; see if we've gone past the last month (11)
            jl      return                  ; if no return
resetMonth
            clr.b   &month                  ; if so, back to January == 0
                                            ; and fall through to years

;============================================================================
; incrementYear - This algorithm will fail on 2400 A.D and not compute leap
;============================================================================
incrementYears
            clrc
            dadd.w  #0x01,   &year          ; add 1 to the year
testLeap    mov.w   &year,   r14            ; r14 = year
            bit.w   #0xFF,   r14            ; called by C functions to test new year
            jz      notLeapYear             ; all 2x00's up to 2400 are not leaps
            bit.w   #0x10,   r14            ; test for odd numbered decade
            jz      evenTens
oddtens                                     ; in odd tens digit decades (10s,30s,50s,...)
            and.w   #0x0F,   r14
            cmp.w   #0x02,   r14            ; year 2 is a leap year
            jeq     setLeapYear
            cmp.w   #0x06,   r14            ; year 6 is a leap year
            jeq     setLeapYear
            jmp     notLeapYear
evenTens                                    ; in even tens digit decades (20s,40s,60s,...)
            and.w   #0x0F,   r14
            cmp.w   #0x00,   r14            ; year 0 is a leap year
            jeq     setLeapYear
            cmp.w   #0x04,   r14            ; year 4 is a leap year
            jeq     setLeapYear
            cmp.w   #0x08,   r14            ; year 8 is a leap year
            jeq     setLeapYear
            jmp     notLeapYear
setLeapYear
            mov.b   #0x29,   &FebDays
            ret
notLeapYear
            mov.b   #0x28,   &FebDays
            ret

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美精品视频www在线观看| 欧美高清视频不卡网| 国产精品资源在线观看| 日本不卡123| 午夜精品aaa| 婷婷综合另类小说色区| 亚洲二区在线观看| 日韩高清不卡一区二区三区| 午夜亚洲福利老司机| 偷拍一区二区三区四区| 午夜精品福利一区二区三区av| 亚洲电影视频在线| 日韩av电影天堂| 另类小说综合欧美亚洲| 韩国成人福利片在线播放| 国产一区二区三区国产| 成人永久免费视频| 99久久国产综合精品麻豆| 欧美性做爰猛烈叫床潮| 欧美区一区二区三区| 精品奇米国产一区二区三区| 欧美精品一区二区高清在线观看| 欧美哺乳videos| 国产免费观看久久| 亚洲男人的天堂一区二区| 亚洲18色成人| 蜜桃精品在线观看| 国产精品69毛片高清亚洲| 成人国产精品免费观看动漫| 色综合中文字幕| 宅男噜噜噜66一区二区66| 精品国产伦一区二区三区观看方式| 日本一区二区免费在线观看视频| 亚洲色图视频免费播放| 婷婷成人综合网| 韩国v欧美v日本v亚洲v| 色综合久久久久综合| 69成人精品免费视频| 国产亚洲欧美色| 亚洲激情网站免费观看| 日本亚洲天堂网| 成人黄色在线看| 欧美日韩国产高清一区二区| 久久在线免费观看| 亚洲男人的天堂在线观看| 蜜桃视频一区二区| 色综合天天综合| 日韩视频在线永久播放| 中文幕一区二区三区久久蜜桃| 亚洲午夜在线视频| 国产乱子伦视频一区二区三区| 欧美中文字幕一区二区三区| 欧美精品一区二区三区一线天视频 | 91黄色小视频| 欧美xxx久久| 亚洲一区视频在线观看视频| 国精品**一区二区三区在线蜜桃 | 久久婷婷一区二区三区| 亚洲黄色免费网站| 国产精品一区二区三区网站| 色综合中文字幕| 国产亚洲欧美日韩俺去了| 日韩精品一二三| 9人人澡人人爽人人精品| 日韩欧美国产不卡| 一区二区三区中文字幕| 国产成人99久久亚洲综合精品| 在线播放中文字幕一区| 亚洲欧洲精品一区二区精品久久久| 人人精品人人爱| 在线免费观看日本欧美| 中文字幕亚洲区| 国产精品一区二区视频| 日韩精品中文字幕一区二区三区| 亚洲免费观看高清完整| 国产a级毛片一区| 欧美电影免费观看高清完整版在 | 九一九一国产精品| 精品视频123区在线观看| 国产精品久久久久久亚洲毛片 | 国内精品在线播放| 6080国产精品一区二区| 亚洲一区在线电影| 色av综合在线| 国产精品久久综合| 国产精品1区2区3区在线观看| 欧美一区二区不卡视频| 日韩综合在线视频| 欧美日韩一区中文字幕| 亚洲欧美日韩综合aⅴ视频| zzijzzij亚洲日本少妇熟睡| 久久欧美一区二区| 国产在线一区二区| 欧美精品一区二区三区蜜臀| 久久精品国产色蜜蜜麻豆| 7777精品伊人久久久大香线蕉经典版下载 | 不卡电影一区二区三区| 久久影院视频免费| 国产九色sp调教91| 久久婷婷国产综合精品青草| 国产在线精品一区二区三区不卡| 日韩亚洲欧美在线| 麻豆久久久久久久| 精品国产一区二区精华| 久久国产麻豆精品| 久久综合99re88久久爱| 国产乱人伦偷精品视频不卡| 久久久久久**毛片大全| 成人污污视频在线观看| 中文字幕欧美三区| 99久久综合99久久综合网站| 国产精品另类一区| 99re66热这里只有精品3直播 | 国产精品一区二区免费不卡| 久久只精品国产| 波多野结衣欧美| 夜夜爽夜夜爽精品视频| 欧美日韩一卡二卡| 奇米一区二区三区| 2欧美一区二区三区在线观看视频 337p粉嫩大胆噜噜噜噜噜91av | 欧洲精品在线观看| 无码av免费一区二区三区试看| 欧美一级理论片| 国产一区二区影院| 亚洲欧洲精品一区二区三区不卡| 91福利精品视频| 热久久免费视频| 国产网站一区二区| 99久久精品国产网站| 亚洲成人免费观看| 亚洲精品一区二区三区福利 | 欧美一级理论性理论a| 国产麻豆欧美日韩一区| 中文字幕一区不卡| 欧美日韩精品综合在线| 久久国产精品99精品国产 | 天天av天天翘天天综合网色鬼国产| 欧美一区二区精品在线| 国产精品白丝av| 亚洲免费在线视频一区 二区| 欧美电影影音先锋| 国产91精品久久久久久久网曝门| 亚洲男人电影天堂| 精品福利一二区| 91免费在线播放| 久久精品国产秦先生| 国产精品理论在线观看| 91精品国产91热久久久做人人 | 欧美三级在线看| 国产中文字幕精品| 亚洲国产一区二区在线播放| 久久一二三国产| 欧美日韩亚洲高清一区二区| 国产一区二区电影| 亚洲www啪成人一区二区麻豆| 久久九九久精品国产免费直播| 欧美亚洲国产一区二区三区 | 日韩你懂的电影在线观看| 99久精品国产| 精品伊人久久久久7777人| 亚洲另类在线制服丝袜| 日韩欧美第一区| 色视频一区二区| 粗大黑人巨茎大战欧美成人| 五月天欧美精品| 亚洲天天做日日做天天谢日日欢| 欧美v日韩v国产v| 欧美午夜精品久久久久久孕妇| 国产丶欧美丶日本不卡视频| 亚洲成av人影院在线观看网| 国产精品国产三级国产aⅴ原创| 欧美一级专区免费大片| 色综合天天综合网国产成人综合天| 国产一区二区三区在线观看免费 | 蜜桃精品视频在线| 亚洲精品国产品国语在线app| 久久综合狠狠综合久久激情| 在线电影国产精品| 日本道精品一区二区三区| 国产成人综合网| 久久99久久精品| 日韩av高清在线观看| 亚洲成人av电影在线| 亚洲精选免费视频| 中文字幕精品在线不卡| 精品国产电影一区二区| 欧美一区二区三区在| 欧美三级在线播放| 欧美在线不卡视频| 91蜜桃婷婷狠狠久久综合9色| 国产成人亚洲综合a∨婷婷图片| 蜜臀久久久久久久| 日韩精品一级二级| 日日噜噜夜夜狠狠视频欧美人 | 欧美一a一片一级一片| yourporn久久国产精品| 成人国产精品免费观看| 成人黄色片在线观看| 国产精品中文字幕一区二区三区| 日本欧美韩国一区三区|