wwwxxx国产_337p日本欧洲亚洲大胆张筱雨_免费在线看成人av_日本黄色不卡视频_国产精品成熟老女人_99视频一区_亚洲精品97久久中文字幕_免费精品视频在线_亚洲色图欧美视频_欧美一区二三区

 找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開(kāi)始

搜索
查看: 434|回復(fù): 0
打印 上一主題 下一主題
收起左側(cè)

23LC1024 SRAM測(cè)試程序 - ASM完整版

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主

; =============================================
; 23LC1024 SRAM測(cè)試程序 - ASM完整版
; =功能:完整的SRAM讀寫測(cè)試,包含UART輸出和LED指示
; =============================================

.include "m16def.inc"          ; 包含ATmega16定義文件

; 系統(tǒng)常量定義
.equ F_CPU = 1000000           ; CPU頻率 1MHz
.equ SRAM_CS   = PB4           ; SRAM片選引腳(PB4)
.equ MOSI_PIN  = PB5           ; SPI主出從入引腳(PB5)
.equ MISO_PIN  = PB6           ; SPI主入從出引腳(PB6)  
.equ SCK_PIN   = PB7           ; SPI時(shí)鐘引腳(PB7)
.equ CMD_READ  = 0x03          ; SRAM讀命令
.equ CMD_WRITE = 0x02          ; SRAM寫命令
.equ CMD_RDSR  = 0x05          ; 讀狀態(tài)寄存器命令
.equ CMD_WRSR  = 0x01          ; 寫狀態(tài)寄存器命令
.equ MODE_SEQ  = 0x40          ; 順序模式配置值
.equ UBRR_VAL  = 12            ; 波特率9600 @ 1MHz

; 數(shù)據(jù)段定義(SRAM變量)
.dseg
write_data:   .byte 1          ; 寫入數(shù)據(jù)存儲(chǔ)
read_data:    .byte 1          ; 讀取數(shù)據(jù)存儲(chǔ)  
addr_high:    .byte 1          ; 24位地址高字節(jié)
addr_mid:     .byte 1          ; 24位地址中字節(jié)
addr_low:     .byte 1          ; 24位地址低字節(jié)
temp:         .byte 1          ; 臨時(shí)變量
test_index:   .byte 1          ; 測(cè)試用例計(jì)數(shù)器
test_offset:  .byte 1          ; 測(cè)試表偏移量

; 代碼段定義
.cseg
.org 0x0000                    ; 程序起始地址
    rjmp main                  ; 復(fù)位向量跳轉(zhuǎn)到主程序

; 測(cè)試數(shù)據(jù)表 - 7個(gè)測(cè)試用例(地址+數(shù)據(jù))
; 格式:地址高字節(jié), 地址中字節(jié), 地址低字節(jié), 測(cè)試數(shù)據(jù)
test_table:
    .db 0x10, 0x00, 0x00, 0x11  ; 測(cè)試1: 地址 0x100000, 數(shù)據(jù) 0x11
    .db 0x20, 0x00, 0x00, 0x22  ; 測(cè)試2: 地址 0x200000, 數(shù)據(jù) 0x22  
    .db 0x00, 0x01, 0x00, 0x33  ; 測(cè)試3: 地址 0x000100, 數(shù)據(jù) 0x33
    .db 0x00, 0x00, 0x10, 0x44  ; 測(cè)試4: 地址 0x000010, 數(shù)據(jù) 0x44
    .db 0x30, 0x20, 0x10, 0x55  ; 測(cè)試5: 地址 0x302010, 數(shù)據(jù) 0x55
    .db 0x50, 0x20, 0x10, 0x65  ; 測(cè)試5: 地址 0x302010, 數(shù)據(jù) 0x65
    .db 0x80, 0x20, 0x10, 0x81  ; 測(cè)試5: 地址 0x302010, 數(shù)據(jù) 0x81


; 消息字符串定義(中英雙語(yǔ)注釋)
msg_title:    .db "23LC1024 ASM 完整測(cè)試",13,10,0                    ; 程序標(biāo)題
msg_init:     .db "SRAM 已初始化",13,10,0                           ; SRAM初始化完成
msg_test:     .db "正在運(yùn)行完整測(cè)試...",13,10,0                      ; 測(cè)試開(kāi)始提示
msg_ok:       .db " [通過(guò)]",13,10,0                                 ; 測(cè)試通過(guò)
msg_fail:     .db " [失敗]",13,10,0                                 ; 測(cè)試失敗
msg_addr:     .db "Addr 0x",0                                       ; 地址顯示前綴
msg_write:    .db " W=0x",0                                         ; 寫入數(shù)據(jù)顯示前綴
msg_read:     .db " R=0x",0                                         ; 讀取數(shù)據(jù)顯示前綴
msg_crlf:     .db 13,10,0,0                                         ; 回車換行
msg_done:     .db "=== 所有測(cè)試已完成! ===",13,10,0                 ; 測(cè)試完成提示
; =============================================
; 主程序
; =系統(tǒng)初始化和測(cè)試流程控制
; =============================================
main:
    ; 初始化堆棧指針
    ldi r16, high(RAMEND)      ; 加載RAM結(jié)束地址高字節(jié)
    out SPH, r16               ; 設(shè)置堆棧指針高字節(jié)
    ldi r16, low(RAMEND)       ; 加載RAM結(jié)束地址低字節(jié)
    out SPL, r16               ; 設(shè)置堆棧指針低字節(jié)

    rcall uart_init            ; 初始化UART串口

    ; 顯示程序標(biāo)題
    ldi ZL, low(2*msg_title)   ; 加載標(biāo)題字符串地址低字節(jié)
    ldi ZH, high(2*msg_title)  ; 加載標(biāo)題字符串地址高字節(jié)
    rcall uart_puts            ; 發(fā)送標(biāo)題字符串
    rcall uart_crlf            ; 發(fā)送回車換行

    ; 初始化SRAM
    rcall sram_init            ; 初始化SPI和SRAM

    ; 顯示初始化完成信息
    ldi ZL, low(2*msg_init)    ; 加載初始化消息地址低字節(jié)
    ldi ZH, high(2*msg_init)   ; 加載初始化消息地址高字節(jié)
    rcall uart_puts            ; 發(fā)送初始化消息

    ; 顯示測(cè)試開(kāi)始信息
    ldi ZL, low(2*msg_test)    ; 加載測(cè)試消息地址低字節(jié)
    ldi ZH, high(2*msg_test)   ; 加載測(cè)試消息地址高字節(jié)
    rcall uart_puts            ; 發(fā)送測(cè)試消息
    rcall uart_crlf            ; 發(fā)送回車換行

    ; 設(shè)置測(cè)試用例數(shù)量
    ldi r16, 7                 ; 設(shè)置總共運(yùn)行5個(gè)測(cè)試用例
    sts test_index, r16        ; 保存測(cè)試計(jì)數(shù)器

    ldi r17, 0                 ; 初始化測(cè)試表偏移量為0
    sts test_offset, r17       ; 保存偏移量

; 測(cè)試循環(huán)主程序
run_tests:
    ; 設(shè)置Z指針指向測(cè)試參數(shù)表的起始地址
    ldi ZL, low(2*test_table)  ; 加載測(cè)試表地址低字節(jié)
    ldi ZH, high(2*test_table) ; 加載測(cè)試表地址高字節(jié)

    ; 加上當(dāng)前測(cè)試的偏移量以定位到具體測(cè)試用例
    lds r17, test_offset       ; 加載當(dāng)前偏移量
    add ZL, r17                ; 加到Z指針低字節(jié)
    ldi r18, 0                 ; 清零用于帶進(jìn)位加法
    adc ZH, r18                ; 加到Z指針高字節(jié)(帶進(jìn)位)

    ; 從程序存儲(chǔ)器加載測(cè)試參數(shù)
    lpm r16, Z+                ; 加載地址高字節(jié)并遞增指針
    sts addr_high, r16         ; 保存地址高字節(jié)
    lpm r16, Z+                ; 加載地址中字節(jié)并遞增指針
    sts addr_mid, r16          ; 保存地址中字節(jié)
    lpm r16, Z+                ; 加載地址低字節(jié)并遞增指針
    sts addr_low, r16          ; 保存地址低字節(jié)
    lpm r16, Z+                ; 加載測(cè)試數(shù)據(jù)并遞增指針
    sts write_data, r16        ; 保存要寫入的數(shù)據(jù)

    ; 執(zhí)行SRAM讀寫測(cè)試
    rcall sram_write_byte      ; 向SRAM寫入測(cè)試數(shù)據(jù)
    rcall sram_read_byte       ; 從SRAM讀取數(shù)據(jù)
    rcall display_test_result  ; 顯示測(cè)試結(jié)果

    ; 更新偏移量指向下一個(gè)測(cè)試用例(每個(gè)測(cè)試4個(gè)字節(jié)參數(shù))
    lds r17, test_offset       ; 加載當(dāng)前偏移量
    subi r17, -4               ; 偏移量加4(指向下一個(gè)測(cè)試)
    sts test_offset, r17       ; 保存更新后的偏移量

    ; 檢查是否完成所有測(cè)試
    lds r16, test_index        ; 加載剩余測(cè)試計(jì)數(shù)
    dec r16                    ; 計(jì)數(shù)器減1
    sts test_index, r16        ; 保存更新后的計(jì)數(shù)
    brne run_tests             ; 如果未完成,繼續(xù)下一個(gè)測(cè)試

    ; 所有測(cè)試完成,顯示結(jié)束信息
    ldi ZL, low(2*msg_done)    ; 加載完成消息地址低字節(jié)
    ldi ZH, high(2*msg_done)   ; 加載完成消息地址高字節(jié)
    rcall uart_puts            ; 發(fā)送完成消息

    ; 成功指示 - 閃爍LED (如果PC0連接了LED)
    sbi DDRC, 0                ; 設(shè)置PC0為輸出(連接LED)
success:
    sbi PORTC, 0               ; 點(diǎn)亮LED(PC0輸出高電平)
    ldi r16, 100               ; 設(shè)置延時(shí)100ms
    rcall delay_ms             ; 調(diào)用延時(shí)子程序
    cbi PORTC, 0               ; 熄滅LED(PC0輸出低電平)
    ldi r16, 100               ; 設(shè)置延時(shí)100ms
    rcall delay_ms             ; 調(diào)用延時(shí)子程序
    rjmp success               ; 無(wú)限循環(huán)閃爍LED

; =============================================
; 顯示測(cè)試結(jié)果
; =功能:顯示SRAM測(cè)試的詳細(xì)結(jié)果和驗(yàn)證狀態(tài)
; =============================================
display_test_result:
    ; 顯示地址信息
    ldi ZL, low(2*msg_addr)    ; 加載"地址:"字符串地址低字節(jié)
    ldi ZH, high(2*msg_addr)   ; 加載"地址:"字符串地址高字節(jié)
    rcall uart_puts            ; 發(fā)送地址標(biāo)簽字符串

    ; 顯示24位地址(高字節(jié)→中字節(jié)→低字節(jié))
    lds r16, addr_high         ; 加載地址高字節(jié)
    rcall uart_puthex          ; 以十六進(jìn)制顯示高字節(jié)
    lds r16, addr_mid          ; 加載地址中字節(jié)
    rcall uart_puthex          ; 以十六進(jìn)制顯示中字節(jié)
    lds r16, addr_low          ; 加載地址低字節(jié)
    rcall uart_puthex          ; 以十六進(jìn)制顯示低字節(jié)

    ; 顯示寫入的數(shù)據(jù)
    ldi ZL, low(2*msg_write)   ; 加載"寫入:"字符串地址低字節(jié)
    ldi ZH, high(2*msg_write)  ; 加載"寫入:"字符串地址高字節(jié)
    rcall uart_puts            ; 發(fā)送寫入標(biāo)簽字符串

    lds r16, write_data        ; 加載之前寫入的數(shù)據(jù)
    rcall uart_puthex          ; 以十六進(jìn)制顯示寫入的數(shù)據(jù)

    ; 顯示讀取的數(shù)據(jù)
    ldi ZL, low(2*msg_read)    ; 加載"讀取:"字符串地址低字節(jié)
    ldi ZH, high(2*msg_read)   ; 加載"讀取:"字符串地址高字節(jié)
    rcall uart_puts            ; 發(fā)送讀取標(biāo)簽字符串

    lds r16, read_data         ; 加載從SRAM讀取的數(shù)據(jù)
    rcall uart_puthex          ; 以十六進(jìn)制顯示讀取的數(shù)據(jù)

    ; 驗(yàn)證測(cè)試結(jié)果:比較寫入和讀取的數(shù)據(jù)
    lds r17, write_data        ; 重新加載寫入的數(shù)據(jù)到r17
    lds r18, read_data         ; 加載讀取的數(shù)據(jù)到r18
    cp r17, r18                ; 比較兩個(gè)數(shù)據(jù)(r17 - r18)
    breq test_ok               ; 如果相等(Z=1),跳轉(zhuǎn)到成功處理

    ; 測(cè)試失敗處理
    ; 寫入和讀取的數(shù)據(jù)不匹配
    ldi ZL, low(2*msg_fail)    ; 加載"失敗"字符串地址低字節(jié)
    ldi ZH, high(2*msg_fail)   ; 加載"失敗"字符串地址高字節(jié)
    rcall uart_puts            ; 發(fā)送失敗信息
    ret                        ; 返回主程序

; 測(cè)試成功處理
test_ok:
    ; 寫入和讀取的數(shù)據(jù)完全匹配
    ldi ZL, low(2*msg_ok)      ; 加載"成功"字符串地址低字節(jié)
    ldi ZH, high(2*msg_ok)     ; 加載"成功"字符串地址高字節(jié)
    rcall uart_puts            ; 發(fā)送成功信息
    ret                        ; 返回主程序
; =============================================
; UART子程序
; UART串口通信相關(guān)功能子程序
; =============================================

; UART初始化子程序
; 功能:設(shè)置UART波特率、數(shù)據(jù)幀格式和使能發(fā)送
uart_init:
    ldi r16, low(UBRR_VAL)      ; 加載波特率分頻值的低字節(jié)
    out UBRRL, r16             ; 寫入波特率低字節(jié)寄存器
    ldi r16, high(UBRR_VAL)     ; 加載波特率分頻值的高字節(jié)
    out UBRRH, r16             ; 寫入波特率高字節(jié)寄存器
    ldi r16, (1<<TXEN)         ; 設(shè)置TXEN位(發(fā)送使能)
    out UCSRB, r16             ; 寫入U(xiǎn)ART控制狀態(tài)寄存器B
    ldi r16, (1<<URSEL)|(1<<UCSZ1)|(1<<UCSZ0) ; 設(shè)置URSEL(選擇UCSRC)、8位數(shù)據(jù)位
    out UCSRC, r16             ; 寫入U(xiǎn)ART控制狀態(tài)寄存器C
    ret                        ; 返回

; 發(fā)送單個(gè)字符子程序
; 輸入:r16 - 要發(fā)送的字符
uart_putchar:
    sbis UCSRA, UDRE           ; 跳過(guò)下條指令如果UDR空(UDRE=1)
    rjmp uart_putchar          ; UDR未空,繼續(xù)等待
    out UDR, r16               ; UDR已空,發(fā)送字符
    ret                        ; 返回

; 發(fā)送字符串子程序
; 輸入:Z指針 - 指向程序存儲(chǔ)器中的字符串(以null結(jié)尾)
uart_puts:
    lpm r16, Z+                ; 從程序存儲(chǔ)器加載字符并遞增Z指針
    tst r16                    ; 測(cè)試字符是否為0
    breq uart_puts_end         ; 如果是0,字符串結(jié)束
    rcall uart_putchar         ; 發(fā)送當(dāng)前字符
    rjmp uart_puts             ; 繼續(xù)發(fā)送下一個(gè)字符
uart_puts_end:
    ret                        ; 返回

; 發(fā)送回車換行子程序
; 功能:發(fā)送CR(回車)和LF(換行)序列
uart_crlf:
    ldi ZL, low(2*msg_crlf)    ; 加載回車換行字符串地址低字節(jié)
    ldi ZH, high(2*msg_crlf)   ; 加載回車換行字符串地址高字節(jié)
    rcall uart_puts            ; 發(fā)送回車換行字符串
    ret                        ; 返回

; 發(fā)送十六進(jìn)制數(shù)字子程序
; 輸入:r16 - 要發(fā)送的字節(jié)(以十六進(jìn)制形式發(fā)送兩個(gè)字符)
uart_puthex:
    push r16                   ; 保存原始值
    swap r16                   ; 交換高低4位
    andi r16, 0x0F            ; 屏蔽高4位,保留低4位
    rcall hex_to_ascii         ; 轉(zhuǎn)換為ASCII字符
    rcall uart_putchar         ; 發(fā)送高4位對(duì)應(yīng)的字符
    pop r16                    ; 恢復(fù)原始值
    andi r16, 0x0F            ; 屏蔽高4位,保留低4位
    rcall hex_to_ascii         ; 轉(zhuǎn)換為ASCII字符
    rcall uart_putchar         ; 發(fā)送低4位對(duì)應(yīng)的字符
    ret                        ; 返回

; 十六進(jìn)制到ASCII轉(zhuǎn)換子程序
; 輸入:r16 - 十六進(jìn)制數(shù)字(0-15)
; 輸出:r16 - 對(duì)應(yīng)的ASCII字符
hex_to_ascii:
    cpi r16, 10                ; 比較數(shù)字是否小于10
    brlo hex_digit             ; 如果小于10,跳轉(zhuǎn)到數(shù)字處理
    subi r16, -('A'-10)        ; 大于等于10,轉(zhuǎn)換為'A'-'F'
    ret                        ; 返回
hex_digit:
    subi r16, -'0'             ; 小于10,轉(zhuǎn)換為'0'-'9'
    ret                        ; 返回
; =============================================
; SPI子程序
; =SPI總線通信和SRAM操作相關(guān)子程序
; =============================================

; SPI初始化子程序
; 功能:配置SPI引腳方向和SPI控制寄存器
spi_init:
    sbi DDRB, MOSI_PIN         ; 設(shè)置MOSI引腳為輸出
    sbi DDRB, SCK_PIN          ; 設(shè)置SCK時(shí)鐘引腳為輸出
    sbi DDRB, SRAM_CS          ; 設(shè)置SRAM片選引腳為輸出
    cbi DDRB, MISO_PIN         ; 設(shè)置MISO引腳為輸入
    sbi PORTB, SRAM_CS         ; 拉高SRAM片選(不選中)
    ldi r16, (1<<SPE)|(1<<MSTR)|(1<<SPR0) ; 使能SPI、主機(jī)模式、時(shí)鐘分頻
    out SPCR, r16              ; 寫入SPI控制寄存器
    ret                        ; 返回

; SPI數(shù)據(jù)傳輸子程序
; 功能:通過(guò)SPI發(fā)送和接收一個(gè)字節(jié)
; 輸入:r16 - 要發(fā)送的數(shù)據(jù)
; 輸出:r16 - 接收到的數(shù)據(jù)
spi_transfer:
    out SPDR, r16              ; 啟動(dòng)SPI傳輸,寫入數(shù)據(jù)到SPI數(shù)據(jù)寄存器
spi_wait:
    in r16, SPSR               ; 讀取SPI狀態(tài)寄存器
    sbrs r16, SPIF             ; 跳過(guò)下條指令如果傳輸完成(SPIF=1)
    rjmp spi_wait              ; 傳輸未完成,繼續(xù)等待
    in r16, SPDR               ; 傳輸完成,讀取接收到的數(shù)據(jù)
    ret                        ; 返回

; SRAM初始化子程序
; 功能:初始化SPI接口并配置SRAM工作模式
sram_init:
    rcall spi_init             ; 初始化SPI接口
    cbi PORTB, SRAM_CS         ; 拉低SRAM片選(選中芯片)
    ldi r16, CMD_WRSR          ; 加載寫狀態(tài)寄存器命令
    rcall spi_transfer         ; 發(fā)送命令
    ldi r16, MODE_SEQ          ; 加載順序模式配置值
    rcall spi_transfer         ; 發(fā)送模式配置
    sbi PORTB, SRAM_CS         ; 拉高SRAM片選(取消選中)
    ldi r16, 10                ; 設(shè)置延時(shí)10ms
    rcall delay_ms             ; 調(diào)用延時(shí)子程序
    ret                        ; 返回

; SRAM寫字節(jié)子程序
; 功能:向SRAM指定地址寫入一個(gè)字節(jié)數(shù)據(jù)
; 輸入:addr_high, addr_mid, addr_low - 24位地址
;       write_data - 要寫入的數(shù)據(jù)
sram_write_byte:
    cbi PORTB, SRAM_CS         ; 拉低SRAM片選(選中芯片)
    ldi r16, CMD_WRITE         ; 加載寫命令
    rcall spi_transfer         ; 發(fā)送寫命令
    lds r16, addr_high         ; 加載地址高字節(jié)
    rcall spi_transfer         ; 發(fā)送地址高字節(jié)
    lds r16, addr_mid          ; 加載地址中字節(jié)
    rcall spi_transfer         ; 發(fā)送地址中字節(jié)
    lds r16, addr_low          ; 加載地址低字節(jié)
    rcall spi_transfer         ; 發(fā)送地址低字節(jié)
    lds r16, write_data        ; 加載要寫入的數(shù)據(jù)
    rcall spi_transfer         ; 發(fā)送數(shù)據(jù)字節(jié)
    sbi PORTB, SRAM_CS         ; 拉高SRAM片選(取消選中)
    ldi r16, 5                 ; 設(shè)置延時(shí)5ms
    rcall delay_ms             ; 調(diào)用延時(shí)子程序
    ret                        ; 返回

; SRAM讀字節(jié)子程序
; 功能:從SRAM指定地址讀取一個(gè)字節(jié)數(shù)據(jù)
; 輸入:addr_high, addr_mid, addr_low - 24位地址
; 輸出:read_data - 讀取到的數(shù)據(jù)
sram_read_byte:
    cbi PORTB, SRAM_CS         ; 拉低SRAM片選(選中芯片)
    ldi r16, CMD_READ          ; 加載讀命令
    rcall spi_transfer         ; 發(fā)送讀命令
    lds r16, addr_high         ; 加載地址高字節(jié)
    rcall spi_transfer         ; 發(fā)送地址高字節(jié)
    lds r16, addr_mid          ; 加載地址中字節(jié)
    rcall spi_transfer         ; 發(fā)送地址中字節(jié)
    lds r16, addr_low          ; 加載地址低字節(jié)
    rcall spi_transfer         ; 發(fā)送地址低字節(jié)
    ldi r16, 0x00              ; 加載啞元數(shù)據(jù)用于接收
    rcall spi_transfer         ; 發(fā)送啞元數(shù)據(jù)并接收SRAM數(shù)據(jù)
    sts read_data, r16         ; 保存讀取到的數(shù)據(jù)
    sbi PORTB, SRAM_CS         ; 拉高SRAM片選(取消選中)
    ret                        ; 返回
; =============================================
; 延時(shí)子程序
; =功能:提供精確的微秒和毫秒級(jí)延時(shí)
; =============================================

; 毫秒延時(shí)子程序
; 輸入:r16 - 延時(shí)的毫秒數(shù)
; 使用寄存器:r16, r17, r18
delay_ms:
    push r17                   ; 保存r17寄存器
    push r18                   ; 保存r18寄存器
delay_ms_outer:
    ldi r17, 200               ; 設(shè)置外層循環(huán)計(jì)數(shù)器(200次)
delay_ms_inner:
    ldi r18, 250               ; 設(shè)置內(nèi)層循環(huán)計(jì)數(shù)器(250次)
delay_ms_inner2:
    dec r18                    ; 內(nèi)層循環(huán)遞減
    brne delay_ms_inner2       ; 內(nèi)層循環(huán)未結(jié)束則繼續(xù)
    dec r17                    ; 外層循環(huán)遞減
    brne delay_ms_inner        ; 外層循環(huán)未結(jié)束則繼續(xù)
    dec r16                    ; 毫秒計(jì)數(shù)器遞減
    brne delay_ms_outer        ; 未達(dá)到指定毫秒數(shù)則繼續(xù)
    pop r18                    ; 恢復(fù)r18寄存器
    pop r17                    ; 恢復(fù)r17寄存器
    ret                        ; 返回

; 微秒延時(shí)子程序
; 輸入:r16 - 延時(shí)的微秒數(shù)
; 注意:基于1MHz時(shí)鐘,每個(gè)循環(huán)約4個(gè)時(shí)鐘周期=4微秒
; 實(shí)際延時(shí)時(shí)間 = (r16 * 4) 微秒
delay_us:
    nop                        ; 空操作(1周期)
    nop                        ; 空操作(1周期)
    nop                        ; 空操作(1周期)
    dec r16                    ; 計(jì)數(shù)器遞減(1周期)
    brne delay_us              ; 不為零則跳轉(zhuǎn)(2周期為零跳轉(zhuǎn)/1周期繼續(xù))
    ret                        ; 返回
; =============================================
; 程序結(jié)束
; =============================================

評(píng)分

參與人數(shù) 2黑幣 +80 收起 理由
admin + 50 共享資料的獎(jiǎng)勵(lì)!
wpppmlah + 30 贊一個(gè)!

查看全部評(píng)分

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏1 分享淘帖 頂 踩
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表
欧洲亚洲妇女av| 欧美成人福利在线观看| 日韩无一区二区| 97久久超碰精品国产| 日韩成人三级| 欧美欧美全黄| heyzo高清在线| h视频免费观看| 国产精品一区二区三区在线免费观看 | 国产亚洲成aⅴ人片在线观看 | 91精品国产全国免费观看| 久久伊人蜜桃av一区二区| 亚洲国产专区| 日韩精品丝袜美腿| 在线最新版中文在线| 校园春色综合| 岛国av在线| 骚虎黄色影院| 国产精品无码一区二区桃花视频 | 精品无码一区二区三区爱欲| av在线亚洲男人的天堂| 国产69精品久久久久99| 亚洲精品自产拍| 在线观看亚洲一区| 亚洲精品国产品国语在线app| 丰满亚洲少妇av| 一区二区三区导航| 欧美亚洲激情| 爱爱精品视频| 成人免费黄色| 欧美极品videos大乳护士| 国产日本在线| 天堂中文av| 插菊花综合1| 嫩草影院入口一二三免费| 波多野结衣家庭教师在线播放| 亚洲一区二区在线观看视频| 成人激情小说网站| 性色一区二区三区| 你懂的亚洲视频| 精品国产乱码| 伊人久久影院| 国产aa精品| 天堂网在线观看视频| 夫妻性生活毛片| 在线免费看黄视频| 中文字幕人妻一区| 在线成人精品视频| 亚洲一级片网站| 日韩免费高清在线| 人妻精品无码一区二区三区| 久久人妻无码一区二区| 一区二区在线观看网站| 欧美少妇一区| 久久大片网站| 欧美不卡在线一区二区三区| 国产精品一区二区三区在线 | 欧美视频第二页| 欧美日韩精品二区| 亚洲一区二区欧美| 一区二区激情小说| 亚洲另类在线视频| 亚洲精品大片www| 中文字幕免费在线观看视频一区| 久久久精品综合| 国产亚洲福利社区一区| 国产精品萝li| 一区二区三区在线观看国产| 亚洲一区二区美女| 精品美女永久免费视频| 欧美日韩黄色大片| 欧美综合一区二区三区| 欧美在线不卡视频| 欧美一区二区三区成人| 欧美r级电影在线观看| 精品福利一二区| 亚洲国产一区自拍| 中文字幕日韩av| 超碰91人人草人人干| 欧美激情国产精品| 欧美一区第一页| 国产精品久久久久久超碰| 国产成人综合一区二区三区| 91免费版网站入口| 精品一区二区国产| 亚洲一区二区精品在线| 一区不卡视频| 国产二区视频在线播放| 天堂视频免费看| 国产精品手机在线观看| 人人爽人人爽人人片| 精品国产欧美日韩不卡在线观看| 日韩 欧美 综合| 日韩三级视频在线| japanese国产在线观看| 黄色一级a毛片| а 天堂 在线| 精品人妻在线视频| a级黄色免费视频| 国产一级在线播放| 99久在线精品99re8热| 国产一区二区在线视频聊天 | 色综合久久中文字幕综合网| 在线不卡免费欧美| 国产亚洲精品久久| 日日狠狠久久偷偷四色综合免费| 91精品国产九九九久久久亚洲| 91国产美女在线观看| 国产精品一区二区3区| 欧美日韩在线高清| 国产免费黄视频| 美女黄色一级视频| 青青草精品在线视频| 97超碰人人草| 伊人影院在线观看| 夜夜嗨aⅴ免费视频| 欧美私人网站| 97色婷婷成人综合在线观看| 欧美综合在线视频观看| 亚洲精品九九| 91日韩一区二区三区| 粉嫩老牛aⅴ一区二区三区| 精品福利二区三区| 日韩免费av片在线观看| 日韩亚洲不卡在线| 玖玖爱视频在线| 欧美大片xxxx| 亚洲精选一区二区三区| 成人黄网18免费观看的网站| 精品视频在线一区二区| 秋霞一区二区三区| 日韩五码在线| 久久久久久97三级| 欧美日韩亚洲不卡| 欧美国产日韩一区二区| 麻豆视频成人| 黄色一级片免费的| 国产黄色片视频| 99re5久久在热线播放| 日本中文字幕电影| 亚洲优女在线| 97精品中文字幕| 东方aⅴ免费观看久久av| 岛国av一区二区三区| 国产一区二区久久精品| 91久久爱成人| 国产福利一区视频| 无码人妻精品中文字幕| 日韩性xxxx| 高清视频在线www色| 日韩欧美一区二区三区在线观看| 欧美影院一区| 中文字幕av不卡| 亚洲国产精品久久久久秋霞不卡 | 精品国产污网站| 国产精品免费小视频| 福利在线一区二区| 国产精品久久国产精麻豆96堂| 精品人妻伦一二三区久久 | 在线免费观看h| 人狥杂交一区欧美二区| 久久久久久久久久久久久久久久久久| 国产精品一区久久久久| 欧美日韩性生活| 国产精品久久久久久亚洲影视| 国产av国片精品| 国产小视频在线看| 日本羞羞视频| 综合日韩av| 日韩中文字幕亚洲一区二区va在线| 亚洲综合在线第一页| 久久久国产一区二区三区| 亚洲精品永久www嫩草| 中文人妻一区二区三区| 亚洲爱爱天堂| 欧美成年黄网站色视频| 日韩精品永久网址| 中文字幕一区不卡| 不卡av电影院| 99在线观看视频免费| 国产真实乱偷精品视频| 免费毛片a线观看| 日韩影片中文字幕| 美女网站一区二区| 欧美一区三区二区| 国产精品美女诱惑| 久久精品国产亚洲av久| 女人公敌韩国| 小早川怜子影音先锋在线观看| 国产亚洲福利| 欧美性生活久久| 国产免费一区二区三区在线能观看| 亚洲精品性视频| 国产18精品乱码免费看| 国产三级在线播放| 亚洲一区二区成人| 欧美精品777| 岛国av免费在线观看| 国产女人18毛片水真多18精品| 国产ts人妖一区二区| 日韩精品在线免费| 一区二区三区国产福利| 免费又黄又爽又色的视频| 福利视频电影| 亚洲五码在线| 日本一区二区成人在线| 欧美寡妇偷汉性猛交| 日韩精品免费播放| 亚洲男人天堂久久| 免费污视频在线| 在线综合亚洲| 欧美成人video| 一本一道久久久a久久久精品91 | 涩多多在线观看| 亚洲黄色小说网址| 色呦呦在线观看视频| 日韩和欧美一区二区| 亚洲国产精品人人爽夜夜爽| 亚洲国产精品成人va在线观看| 精品视频免费观看| 久草福利资源在线| 岛国在线免费| 九一精品国产| 亚洲成av人片一区二区梦乃| 成人综合国产精品| 91l九色lporny| 成年人黄色网址| 性人久久久久| 亚洲色图丝袜美腿| 国产日韩在线视频| 亚洲欧洲久久久| 欧洲免费av| 欧美独立站高清久久| 在线观看一区日韩| 99在线看视频| 久久精品欧美一区二区| 青青草在线免费视频| 伊人久久成人| 精品国产a毛片| 99久久免费观看| 神马午夜精品95| 97精品国产综合久久久动漫日韩 | 亚洲一级黄色大片| 超免费在线视频| 激情成人午夜视频| 欧美二区乱c黑人| 亚洲色图欧美另类| www.麻豆av.com| 欧美日韩一区二区三区四区在线观看 | 91精品国产高清久久久久久久久 | 国产精品视频一区二区图片| 欧美一区二区三区另类| 亚洲精品一区二区三区四区高清| 日韩美女爱爱视频| 中文字幕无乱码| 欧美黑白配在线| 精品视频1区2区| 18禁免费观看网站| 国产视频1区| 欧美亚洲激情| 亚洲第一色中文字幕| 亚洲中文字幕久久精品无码喷水| 国产毛片毛片毛片| 日韩精品水蜜桃| 日韩国产在线看| 两性午夜免费视频| 狠狠色噜噜狠狠狠狠8888| 好看的av在线不卡观看| 最新的欧美黄色| 久久福利小视频| 米奇.777.com| 麻豆国产欧美一区二区三区| 97香蕉超级碰碰久久免费软件 | 黄污网站在线观看| 毛片一区二区三区| 日韩免费在线免费观看| 校园春色 亚洲| 日本大片在线播放| 中文字幕一区免费在线观看| 久久久亚洲综合网站| 欧美 日韩 中文字幕| 神马香蕉久久| 亚洲精品狠狠操| 天天躁日日躁狠狠躁av麻豆男男| 欧美著名女优| 国产福利一区在线观看| 成人免费看片视频| 在线免费看91| aiai久久| 亚洲变态欧美另类捆绑| 第一页在线视频| 日韩毛片在线一区二区毛片| 国产91精品入口| 国产有码一区二区| 97精品人妻一区二区三区香蕉| 成人在线精品| 欧美一区二区三区在线观看| 三区视频在线观看| 黄色高清在线观看| 91蜜桃免费观看视频| 欧美一区二区三区四区五区六区| 2017亚洲男人天堂| 欧美黄在线观看| 久久全国免费视频| 国产尤物在线视频| 99re6热只有精品免费观看| 精品国产电影一区二区| 成人免费看aa片| 岛国毛片av在线| 日韩欧美成人区| 日本在线一二三区| 日色在线视频| 亚洲免费看黄网站| 国产二级片在线观看| 少妇免费视频| 久久久久久电影| 国产免费内射又粗又爽密桃视频| 黄色av免费看| 成人精品视频一区二区三区尤物| 久久婷婷人人澡人人喊人人爽| 欧美日韩一区二区三区在线播放| 国产亚洲精品v| 91日本视频在线| 少妇精品高潮欲妇又嫩中文字幕 | 精品毛片乱码1区2区3区| 在线免费观看日韩av| ****av在线网毛片| 欧美精三区欧美精三区| 在线免费观看a级片| 大菠萝精品导航| 欧美大片顶级少妇| 国产精品视频看看| 日韩欧美另类中文字幕| 中文字幕在线视频日韩| 午夜影院免费在线观看| 亚洲区小说区| 国内外成人免费激情在线视频| 一级黄色片免费看| 亚洲成av人电影| 国产免费一区二区三区在线能观看 | 成人激情久久| 中文字幕亚洲综合| 国产精华7777777| 久久综合成人| 国产精品丝袜一区二区三区| 亚洲大肥女ass| 日韩高清不卡在线| 视频一区二区三| 成人拍拍拍免费视频网站| 国产目拍亚洲精品99久久精品 | 伊人国产视频| 国产成人在线色| 91免费国产精品| 九色在线播放| 91福利国产成人精品照片| 人妻少妇无码精品视频区| 亚洲综合伊人| 欧美裸体xxxx极品少妇| 亚洲黄色在线观看视频| 天堂一区二区在线| 亚洲欧洲国产日韩精品| 三上悠亚一区| 精品国产乱码久久久久久婷婷 | 影音先锋电影在线观看| 性做久久久久久久免费看| 美女又爽又黄视频毛茸茸| 欧美日韩女优| 欧美成人一区二区三区电影| 高h放荡受浪受bl| 九九精品视频在线看| 国产成人生活片| 黄色网在线免费观看| 日韩女优av电影| 男人天堂av在线播放| 亚洲免费高清| 视频一区在线免费观看| 亚洲第一区视频| 欧美日韩国产另类不卡| 日本在线视频免费观看| 女生裸体视频一区二区三区| 久久久久久久免费| 欧美vide| 欧美白人最猛性xxxxx69交| 无码人妻精品一区二区三区蜜桃91 | 91露出在线| 亚洲第一区第一页| 国产精品呻吟久久| 黑人巨大精品欧美一区| 欧美精品久久久久久久免费| 黄网站在线观| 久久久精品视频成人| 综合图区亚洲白拍在线| 久久精品视频一区| 日本一区二区在线观看视频| 成人另类视频| 51国偷自产一区二区三区的来源| 超碰色偷偷男人的天堂| 欧美性色黄大片手机版| aaa在线视频| 久久99精品国产|