📄 ds18b20.asm
字号:
; XTAL : 16 MHz
; PIC16F877
; DS18B20
;---------------------------------------
LIST P = 16F877, R = HEX
INCLUDE "P16F877.INC"
ERRORLEVEL .1
;---------------------------------------
ORG 0X00
GOTO START
; ORG 0X04
; GOTO ISR
; goto KKK
;---------------------------------------
#DEFINE DSPIN PORTB, 0
#DEFINE TXPIN PORTB, 1
#DEFINE RXPIN PORTB, 2
;---------------------------------------
DELAY1 EQU 0X20
TEMP1 EQU 0X21
TEMP2 EQU 0X29
KOMUT EQU 0X22
DELAY2 EQU 0X23
DELAY3 EQU 0X24
SAYAC EQU 0X25
BTX EQU 0X26
BRX EQU 0X27
SAYAC1 EQU 0X28
SAYAC2 EQU 0X30
BUFFER EQU 0X29
;---------------------------------------
; KATSAYI = (((1/istenilen Baundrate)/(KCS)-5)/4)
; KCS --> 4X(1/XTAL)
; 9600 baundrate 4 Mhz KATSAYI --> KATSAYI = 25
; 9600 baundrate 8 Mhz KATSAYI --> KATSAYI = 50
; 9600 baundrate 16 Mhz KATSAYI --> KATSAYI = 103
; (4XKATSAYI + 5
;-------------------------------
DELAYSU MACRO KATSAYI ; DELAYSU macrosu
MOVLW KATSAYI ; W = KATSAYI
CALL DELAY_2 ; DELAY_2 ui 鏰瘕r
ENDM ; Macroyu sonland齬.
;---------------------------------------
DELAY_2: ; 2 祍
MOVWF DELAY3 ; 1 礢
NOP ; DELAY3
DECFSZ DELAY3 ; DELAY3 + 1 祍
GOTO $ - 2 ; 2XDELAY3
RETURN ; 2 祍
;---------------------------------------
TXLOAD MACRO
BSF STATUS, 5
BCF TRISB, 1
BCF STATUS, 5
ENDM
;---------------------------------------
RXLOAD MACRO
BSF STATUS, 5
BSF TRISB, 2
BCF STATUS, 5
CLRF BRX
ENDM
;---------------------------------------
TX: ; G鰊derim altyordam
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -