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

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

?? dco_library.asm

?? ti發布的MSP430 dco庫 使用非常方便
?? ASM
字號:
;*******************************************************************************
;   Code for application report - "DCO Library"
;*******************************************************************************
; THIS PROGRAM IS PROVIDED "AS IS". TI MAKES NO WARRANTIES OR
; REPRESENTATIONS, EITHER EXPRESS, IMPLIED OR STATUTORY,
; INCLUDING ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS
; FOR A PARTICULAR PURPOSE, LACK OF VIRUSES, ACCURACY OR
; COMPLETENESS OF RESPONSES, RESULTS AND LACK OF NEGLIGENCE.
; TI DISCLAIMS ANY WARRANTY OF TITLE, QUIET ENJOYMENT, QUIET
; POSSESSION, AND NON-INFRINGEMENT OF ANY THIRD PARTY
; INTELLECTUAL PROPERTY RIGHTS WITH REGARD TO THE PROGRAM OR
; YOUR USE OF THE PROGRAM.
;
; IN NO EVENT SHALL TI BE LIABLE FOR ANY SPECIAL, INCIDENTAL,
; CONSEQUENTIAL OR INDIRECT DAMAGES, HOWEVER CAUSED, ON ANY
; THEORY OF LIABILITY AND WHETHER OR NOT TI HAS BEEN ADVISED
; OF THE POSSIBILITY OF SUCH DAMAGES, ARISING IN ANY WAY OUT
; OF THIS AGREEMENT, THE PROGRAM, OR YOUR USE OF THE PROGRAM.
; EXCLUDED DAMAGES INCLUDE, BUT ARE NOT LIMITED TO, COST OF
; REMOVAL OR REINSTALLATION, COMPUTER TIME, LABOR COSTS, LOSS
; OF GOODWILL, LOSS OF PROFITS, LOSS OF SAVINGS, OR LOSS OF
; USE OR INTERRUPTION OF BUSINESS. IN NO EVENT WILL TI'S
; AGGREGATE LIABILITY UNDER THIS AGREEMENT OR ARISING OUT OF
; YOUR USE OF THE PROGRAM EXCEED FIVE HUNDRED DOLLARS
; (U.S.$500).
;
; Unless otherwise stated, the Program written and copyrighted
; by Texas Instruments is distributed as "freeware".  You may,
; only under TI's copyright in the Program, use and modify the
; Program without any charge or restriction.  You may
; distribute to third parties, provided that you transfer a
; copy of this license to the third party and the third party
; agrees to these terms by its first use of the Program. You
; must reproduce the copyright notice and any other legend of
; ownership on each copy or partial copy, of the Program.
;
; You acknowledge and agree that the Program contains
; copyrighted material, trade secrets and other TI proprietary
; information and is protected by copyright laws,
; international copyright treaties, and trade secret laws, as
; well as other intellectual property laws.  To protect TI's
; rights in the Program, you agree not to decompile, reverse
; engineer, disassemble or otherwise translate any object code
; versions of the Program to a human-readable form.  You agree
; that in no event will you alter, remove or destroy any
; copyright notice included in the Program.  TI reserves all
; rights not specifically granted under this license. Except
; as specifically provided herein, nothing in this agreement
; shall be construed as conferring by implication, estoppel,
; or otherwise, upon you, any license or other right under any
; TI patents, copyrights or trade secrets.
;
; You may not use the Program in non-TI devices.
;
;*******************************************************************************
;   DCO Library
;
;   Description; Allows the DCO to be calibrated to a multiple of ACLK
;
;
;   Memory Usage:               <184 bytes
;
;   L. Westlund
;   Version    1.1
;   Texas Instruments, Inc
;   August 2007
;   Built with Code Composer Essentials 2.0
;*******************************************************************************
;Change log
;
;1.0 - Inital version - L.Westlund
;1.1 - Misc. updates - A.Dannenberg
;      * Fixed PUSH/POP inconsistency
;*******************************************************************************
 .cdecls C,LIST,    "msp430x11x1.h"

            ;Functions
            .def      TI_SetDCO
            .align 2
            .text
; CCE requires you change the header file, as well as the variable below
; uncomment the line below which coresponds to the device you are using
DEVICE_TYPE .set 1                          ; All 1xx devices
;DEVICE_TYPE .set 2                          ; 2xx devices with a Timer_A3
;DEVICE_TYPE .set 3                          ; 2xx devices with a Timer_A2

 .if DEVICE_TYPE = 3                        ; For Timer_A2 devices
TACCTLX .set TACCTL0
TACCRX .set TACCR0
 .else
TACCTLX .set TACCTL2
TACCRX .set TACCR2
 .endif

;-------------------------------------------------------------------------------
TI_SetDCO;     Subroutine: Sets DCO to selected frequency based on Delta.
;           R14 and R15 are used, ACLK = 32768/8 Timer_A clocked by DCOCLK
;           R13 used to hold old BCSCTL1 value
;           R12 is the parameter specifying the delta value, MCLK = delta * 4096
;           returns in R12:
;           0 - DCO Set Correctly
;           1 - DCO running at slowest setting
;           2 - DCO running at fastest setting
;           0xff - Timeout Occured while setting DCO
;-------------------------------------------------------------------------------
            push.w  r10
            push.w  &TACTL
            push.w  &TACCTLX
            mov.w   #10000, r11             ; max number of times to loop
            clr.w   r15                     ;		
            mov.b   &BCSCTL1, r13           ; Copy BC settings to preserve
            .if DEVICE_TYPE = 1
            and.w   #0xF8,    r13           ; Mask out bits which will change (0-2) 1xx
            .else
            and.w   #0xF0,    r13           ; Mask out bits which will change (0-3) 2xx
            .endif
SetupBC     bis.b   #XT2OFF+DIVA_3,&BCSCTL1 ; ACLK=LFXT1CLK/8, XT2OFF to make a known state			
SetupCC2    mov.w   #CM_1+CCIS_1+CAP,&TACCTLX ; CAP, ACLK
            mov.w   #TASSEL_2+MC_2+TACLR, &TACTL; SMCLK, cont-mode, clear
firstTest   bit.w   #CCIFG,&TACCTLX         ; Test capture flag, skip first short ACLK to avoid error
            jz      firstTest               ;
            bic.w   #CCIFG,&TACCTLX         ; Clear capture flag
TestDCO     dec.w   r11
            jz      ExitTimeOutError        ;
TestDCO2    bit.w   #CCIFG,&TACCTLX         ; Test capture flag
            jz      TestDCO2                ;
            bic.w   #CCIFG,&TACCTLX         ; Clear capture flag
                                            ;
AdjDCO      mov.w   &TACCRX,r14             ; R14 = captured SMCLK
            sub.w   r15,r14                 ; R14 = capture difference
            mov.w   &TACCRX,r15             ; R15 = captured SMCLK
            mov.w   r14, r10                ; r10 = capture difference
            sub.w   r12, r10                ; r10 = difference between desired and actual
            jz      ExitNoError             ; if r12 = r10, DCO set exactly
            cmp.w   #0xFFFF, r10            ; DCO can be off by 1 for a tolerance
            jeq     ExitNoError
            cmp.w   r12,   r14              ; Delta = SMCLK/(32768/8)
            jlo     IncDCO                  ;
DecDCO      dec.b   &DCOCTL                 ; Slow DCO with DCO and MOD
            jc      TestDCO                 ; Slower?
            .if DEVICE_TYPE = 1
            bit.b   #0x7, &BCSCTL1          ; Can RSEL.x be decremented? 1xx
            .else
            bit.b   #0xF, &BCSCTL1          ; Can RSEL.x be decremented? 2xx
            .endif
            jz      ExitSlowestSetting      ; jmp>DCO at slowest setting
            dec.b   &BCSCTL1                ; Decrement RSEL.x
            jmp     TestDCO                 ;
IncDCO
            .if DEVICE_TYPE = 1
            inc.b   &DCOCTL                 ; Speed DCO with DCO and MOD
            jnc     TestDCO                 ; Faster?
            cmp.b   #XT2OFF+DIVA_3+0x7, &BCSCTL1 ; Can RSEL.x be increased? 1xx
            jeq     ExitFastestSetting      ; jmp> DCO at fastest setting
            inc.b   &BCSCTL1                ; Increment RSEL.x
            jmp     TestDCO                 ;
            .else
            inc.b   &DCOCTL                 ; Speed DCO with DCO and MOD
            jnc     TestFor16MHz
            cmp.b   #XT2OFF+DIVA_3+0xF, &BCSCTL1 ; Can RSEL.x be increased? 2xx
            jeq     ExitFastestSetting      ; jmp> DCO at fastest setting
            inc.b   &BCSCTL1                ; Increment RSEL.x
            jmp     TestDCO                 ;
            ;-------Compare to built in values
TestFor16MHz
            cmp.b   &CALDCO_16MHZ, &DCOCTL  ; compare current DCO to built in DCO constants
            jne     TestDCO                 ; if they are not equal, leave
            mov.b   &CALBC1_16MHZ, r14      ; move cal values into R14 for manipulation
            bis.b   #XT2OFF+DIVA_3, r14     ; make sure BCSCTL1 cal has same state
            cmp.b   r14, &BCSCTL1           ; if they are the same
            jeq     ExitFastestSetting2xx   ; leave all values in place and exit
            jmp     TestDCO
            ;-------Compare to built in values
            .endif
ExitSlowestSetting
            clr.b   &DCOCTL
            mov.w   #0x01, r12
            jmp     SetDCO_Exit
ExitFastestSetting
            mov.b   #0xFF, &DCOCTL          ; since the DCO previously rolled over
ExitFastestSetting2xx
            mov.w   #0x02, r12
            jmp     SetDCO_Exit
ExitTimeOutError
            mov.w   #0xff, r12
            jmp     SetDCO_Exit
ExitNoError clr.w   r12
SetDCO_Exit clr.w   &TACCTLX                ; Stop CCR2
            .if DEVICE_TYPE = 1
            bic.b   #0xF8,    &BCSCTL1      ; Mask out bits which will change (0-2) 1xx
            .else
            bic.b   #0xF0,    &BCSCTL1      ; Mask out bits which will change (0-3) 2xx
            .endif
            bis.b   r13, &BCSCTL1           ; copy in old non-DCO BC settings
            pop.w   &TACCTLX
            pop.w   &TACTL
            pop.w   r10
            ret                             ; Return from subroutine
                                            ;
            .end

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国内精品免费在线观看| 亚洲自拍欧美精品| 不卡一二三区首页| 亚洲成人一区二区在线观看| 日韩一区二区三区在线观看| 成人一区二区在线观看| 国产一区91精品张津瑜| 日本成人在线网站| 亚洲午夜精品久久久久久久久| 国产精品影视在线观看| 91麻豆高清视频| 色婷婷精品大在线视频| 99久免费精品视频在线观看| 欧美群妇大交群的观看方式| 欧美在线你懂的| 亚洲国产精华液网站w| 99re6这里只有精品视频在线观看| 91色九色蝌蚪| 麻豆久久一区二区| 中文字幕中文字幕在线一区| 日韩女优av电影| 日韩色视频在线观看| 亚洲激情自拍偷拍| 一区二区三区四区蜜桃| 亚洲一区二区三区国产| 久久精品国产第一区二区三区| 欧美日韩亚洲综合| 中文字幕一区二区三区色视频 | 美女久久久精品| 精品国产免费久久| 亚洲国产精品二十页| 欧美中文字幕亚洲一区二区va在线 | 五月天婷婷综合| 久久99久久久久久久久久久| 欧美aaaaa成人免费观看视频| av在线不卡观看免费观看| 91精品国产综合久久蜜臀| 欧美亚洲一区二区在线| 中文无字幕一区二区三区| 久久99九九99精品| 欧洲一区二区三区在线| 欧美午夜免费电影| 日本aⅴ亚洲精品中文乱码| 欧美精品v日韩精品v韩国精品v| 日韩欧美卡一卡二| 欧美日韩中文字幕一区| 亚洲成av人综合在线观看| 中文字幕欧美日本乱码一线二线 | 99在线精品视频| 中文字幕成人在线观看| 99免费精品视频| 亚洲欧美另类在线| 亚洲国产精品视频| 中文字幕一区二区三区四区不卡 | 亚洲一区二区欧美| 免费成人在线播放| 最近中文字幕一区二区三区| 久久亚洲欧美国产精品乐播| 中文字幕 久热精品 视频在线| 久久精品免费看| 欧美一级二级三级蜜桃| 自拍偷拍国产亚洲| 成人国产一区二区三区精品| 国产丝袜美腿一区二区三区| 综合在线观看色| 91国偷自产一区二区三区观看| 日韩欧美一区二区在线视频| 日本aⅴ免费视频一区二区三区| 欧美一区在线视频| 欧美二区三区91| 麻豆传媒一区二区三区| 337p日本欧洲亚洲大胆精品| 国产在线播精品第三| 欧美精品国产精品| 国产91精品一区二区麻豆网站 | 久久九九国产精品| 亚洲一区二区影院| 91在线丨porny丨国产| 悠悠色在线精品| 国产激情一区二区三区四区| 日韩欧美国产成人一区二区| 精品久久久久久无| 91精品国产综合久久久久| 中文字幕不卡的av| 日本一二三四高清不卡| 久草精品在线观看| 日韩一级高清毛片| 久久精品噜噜噜成人88aⅴ| 色综合天天视频在线观看 | 亚洲一区二区三区中文字幕在线| 欧美网站大全在线观看| 成人午夜电影久久影院| 亚洲综合免费观看高清完整版在线| 欧美精品一区二区三区视频| 色88888久久久久久影院野外 | 91麻豆精品91久久久久同性| 国产成人欧美日韩在线电影| 日本不卡的三区四区五区| 中文字幕中文在线不卡住| 久久久久久久免费视频了| 色一情一乱一乱一91av| 成人精品小蝌蚪| 蜜桃av噜噜一区二区三区小说| 一区二区三区日韩欧美精品| 久久精品人人爽人人爽| 精品久久久久99| 欧美丝袜自拍制服另类| 色噜噜狠狠色综合中国| 国产东北露脸精品视频| 国产中文字幕精品| 天天影视涩香欲综合网| 亚洲高清免费在线| 国产精品拍天天在线| 中文字幕av一区二区三区免费看| 欧美老肥妇做.爰bbww视频| 91福利国产精品| 99国产精品久久久久| 国产精品99久久久久久有的能看| 国产精品国产三级国产普通话蜜臀| 日韩欧美第一区| 久久99九九99精品| 中文字幕日韩精品一区| 日韩亚洲欧美中文三级| 欧美三级电影在线看| 一区二区三区蜜桃网| 欧美激情一二三区| 精品成人a区在线观看| 中文一区二区在线观看| 色欧美日韩亚洲| 国产麻豆精品在线| 亚洲成a人v欧美综合天堂下载 | 日韩一区二区三区视频| 狠狠色狠狠色合久久伊人| 久久美女高清视频| 欧美偷拍一区二区| 91黄色小视频| 日韩精品电影一区亚洲| 韩国午夜理伦三级不卡影院| 日本麻豆一区二区三区视频| 亚洲在线成人精品| 亚洲专区一二三| 亚洲18女电影在线观看| 亚洲成a人v欧美综合天堂| 国产成人av电影在线观看| 三级影片在线观看欧美日韩一区二区| 久久久99久久精品欧美| 日韩精品一区二区三区在线播放 | 亚洲丝袜美腿综合| 51精品秘密在线观看| 99riav一区二区三区| 91理论电影在线观看| 精品国产乱码久久久久久浪潮| 一二三四区精品视频| 国产乱淫av一区二区三区 | 91官网在线观看| 欧美日本不卡视频| 欧美日精品一区视频| 91精品国产欧美一区二区18| 日韩精品一区二区三区在线观看 | 欧美一区二区网站| 国产精品免费丝袜| 亚洲在线一区二区三区| 午夜久久久久久久久| 欧美bbbbb| 国产精品主播直播| 欧美日韩午夜影院| 欧美激情一区二区三区不卡| 亚洲精品乱码久久久久| 日本在线不卡视频| 在线观看不卡一区| 欧美一区二区三区视频免费| 亚洲日本一区二区| 国产成人自拍高清视频在线免费播放| 国产91在线|亚洲| 欧美在线一区二区三区| 91女人视频在线观看| 99久久er热在这里只有精品66| 在线观看免费视频综合| 久久久综合网站| 日本伊人午夜精品| 美女视频免费一区| 国产日韩精品一区二区三区在线| 精品影视av免费| 综合色中文字幕| 成人免费av资源| 日韩午夜在线观看视频| 亚洲国产岛国毛片在线| 日日嗨av一区二区三区四区| 99综合电影在线视频| 欧美成人精品二区三区99精品| 亚洲老妇xxxxxx| 久久66热re国产| 欧美日韩一区二区在线观看| 不卡av在线网| 久久精品水蜜桃av综合天堂| 蜜芽一区二区三区| 6080yy午夜一二三区久久| 日本视频中文字幕一区二区三区| 欧美午夜电影在线播放| 午夜精品福利一区二区蜜股av |