大香蕉大香蕉在线播放-日韩av在线一区中文字幕-日韩熟女熟妇久久精品综合-精品免费视频一区二区三区

技術(shù)熱線: 4007-888-234
設(shè)計(jì)開(kāi)發(fā)

專注差異化嵌入式產(chǎn)品解決方案 給智能產(chǎn)品定制注入靈魂給予生命

開(kāi)發(fā)工具

提供開(kāi)發(fā)工具、應(yīng)用測(cè)試 完善的開(kāi)發(fā)代碼案例庫(kù)分享

技術(shù)支持

從全面的產(chǎn)品導(dǎo)入到強(qiáng)大技術(shù)支援服務(wù) 全程貼心伴隨服務(wù),創(chuàng)造無(wú)限潛能!

新品推廣

提供新的芯片及解決方案,提升客戶產(chǎn)品競(jìng)爭(zhēng)力

新聞中心

提供最新的單片機(jī)資訊,行業(yè)消息以及公司新聞動(dòng)態(tài)

PIC單片機(jī)實(shí)現(xiàn)CRC的小程序

更新時(shí)間: 2019-03-22
閱讀量:1692

單片機(jī)開(kāi)發(fā)商深圳英銳恩分享PIC單片機(jī)實(shí)現(xiàn)CRC的小程序。PIC單片機(jī)實(shí)現(xiàn)Dallas的iButton通訊時(shí),編了段產(chǎn)生和校驗(yàn)CRC的子程序。
    #include 

;-------------------------------
    cblock    0x20
datBuff:8            ;assign 8 byte data buffer
bit_cnt                ;bit counting 
CRC_COUNT            ;number of bytes for CRC
CRC_RESULT            ;CRC resulr
crc_temp            ;temporary data buffer during CRC
    endc

;-------------------------------
#define    skp0    btfsc
#define    skp1    btfss


;===============================
    org    0x000

    movlw    .7
    movwf    CRC_COUNT
    movlw    datBuff
    movwf    FSR        ;FSR point to data buffer
    call    CRC_CHECK
    movwf    datBuff+7
    goto    $

;===============================
;CHECK THE CRC FOR ? BYTES DATA
;For the polynomial of X^8 + X^5 + X^4 + 1
;Derived from Dallas's iButton standard
;Before calling, FSR       = data buffer
;                CRC_COUNT = number of bytes for CRC
CRC_CHECK    ;~~~~~~~~~~~~~~~
    clrf    CRC_RESULT    ;initialize the CRC buffer
_crc_00
    movlw    .8        ;number of bits for one byte
    movwf    bit_cnt        ;set bit counter
    movf    INDF,w        ;get one data byte
    movwf    crc_temp    ;copy to temporary location

_crc_01
    rrf    crc_temp,f    ;get LSB in C
    skpc            ;is this LSB=1?
    goto    _crc_02        ;go if LSB=0
    movlw    0x01        ;do if LSB=1
    xorwf    CRC_RESULT,f
_crc_02
    rrf    CRC_RESULT,w    ;get LSB of CRC
    skpc            ;test LSB
    goto    _crc_03        ;go if LSB=0
    movlw    0x18        ;do if LSB=1
    xorwf    CRC_RESULT,f    ;polynomial implementation
_crc_03
    rrf    CRC_RESULT,w    ;whole byte right rotate
    rrf    CRC_RESULT,f
    decfsz    bit_cnt,f    ;bit counting
    goto    _crc_01        ;go on until aa 8 bits done
    incf    FSR,f        ;pointer update to next byte
    decfsz    CRC_COUNT,f    ;byte counting
    goto    _crc_00        ;go on until all byte done
    movf    CRC_RESULT,w    ;get CRC, Z set if CRC=0
    return            ;return with CRC in W

 END

无码成人一区二区| 白虎美女被大基吧操| 亚洲另类激情在线观看| 鸡巴操骚逼视频播放| 黄网官方在线观看| 国产午夜爽爽爽男女免费动漫AV| 黄色三极片在线观看| 18岁美女破处在线观看| 在线观看日韩欧美| 好爽轻点太大了太深了视频| 从后面狠狠的干白嫩少妇| 黑人大屌爆操骚货| 中日美女毛5片一区二区三区| 国产精品视频一区二区三区分享| 强伦人妻一区二区三区视频18| 肏亚洲女人小骚逼| 亚洲欧洲日本精品| 亚洲欧美日韩中文v在线| 中文字幕不卡一区二区免| 大黑屌后入骚妇屁股| 精华欧美一区二区久久久| 美女大骚逼幸福遍穴| 大鸡巴日小美女明星的BB| 大黑屌日本另类肛交| 丝袜片一区二区三区四区五区| 男人透女人视频短篇| 爽妇网国产精品24| 被春药女高潮抽搐喷水视频| 鸡巴抽插逼逼视频| 国产欧美日韩一区二区在线观看| 99精品一级欧美片免费| 普通话大屌操小穴| 青青视频在线人视频在线| 中文字幕人妻一区二区三区人妻| 黄色免费老人操逼| 国产熟女视频一区二区三区| 操逼啊 啊 啊黄色视频| 中文字幕人妻一区二区三区人妻| 中文字幕一高清免费视频| 亚洲一区二区三区精品日韩| 插到底啊啊啊视频|