ULTRASONİK MESAFE ÖLÇÜMÜ[BİTTİ]

Başlatan XX_CİHAN_XX, 29 Aralık 2006, 15:50:24

XX_CİHAN_XX

Arkadaşlar uzunca bir süre önce erkan arkadaşımızın yaptığı çeviri ile anlatılan bir proje vardı.

https://www.picproje.org/main/modules.php?name=News&file=article&sid=3

Bu projeyi kısa bir süre önce yaptım.Oradaki şemanın aynısını uyguladım.Fakat şema ile birlikte verilen programı kullandıgımda 1m ile 3,5m arasında olcum yapabıldıgını gordum.Bende alternatif program olarak aynı şema için yazdığım programı veriyorum.Bu program ile 5cm den 5,5metreye kadar sıkıntısız olctum.Yeterli alan olmadığı için henüz 5,5m nin ustunu denıyemedim.Ama 10metreye kadar olcum yapabılecegını tahmın edıyorum.

not: şemadaki kaydetme , maskeleme vs butonları(s2,s3,s4) kullanılmamaktadır.olcum ıcın s5 butonuna basmak yeterlı.
s5 butonuna basılı tutuldugu surece olcum yapar ve ekrana cm cınsınden yazar.dıger butonlar(s2,s3,s4) kullanılmamaktadır.

Şemada 16f84 kullanılmıs fakat ben programı daha guncel oldugu ıcın 16f628 e gore yazdım.Onun dısında şema tamamen aynıdır.
Buyrun buda programı;)
;*****************************************
;ULTRASONIK MESAFE OLCUM PROGRAMI
;YAZAN: Cihan YILDIRIM
;29.12.2006
;*****************************************
		LIST		P=16F628
		INCLUDE		"P16F628.INC"
;*****************************************
		ERRORLEVEL	-302
		__CONFIG	_MCLRE_ON & _XT_OSC & _BODEN_OFF & _PWRTE_OFF & _LVP_OFF & _WDT_OFF	
		CBLOCK		0x20
DELAY_DATA
DELAY_DATA2
LCD_REG
LCD_TEMP
TEMP1L
TEMP1H
SAYAC
BUFFER
ONBINLER
BINLER
YUZLER
ONLAR
BIRLER
ONBINLER2
BINLER2
YUZLER2
ONLAR2
BIRLER2
ONBINLER3
BINLER3
YUZLER3
ONLAR3
BIRLER3
BOLUMH 
BOLUML 
BOLENH 
BOLENL 
TOPL1H 
TOPL1L 
TOPL2H 
TOPL2L 
SONUCH 
SONUCL 
REG20 
REG21 
REG22 
REG23 
REG24 
REG25 
REG26 
		ENDC
;*****************************************
#DEFINE	LCD_DATA	PORTB
#DEFINE	RS			PORTB,4
#DEFINE	E			PORTB,5		
;*****************************************
#DEFINE	SEND		PORTB,6
;*****************************************
		ORG			0x00
		GOTO		SETUP
;*****************************************
		ORG			0x04
		RETFIE
;*****************************************
YAZI1
		ADDWF		PCL,F
		DT			"OLCUM YAPILIYOR ", 0x00
;*****************************************
YAZI3
		ADDWF		PCL,F
		DT			"OLCUM ICIN,     ", 0x00
;*****************************************
YAZI4
		ADDWF		PCL,F
		DT			"BUTONA BASINIZ..", 0x00
;*****************************************
SETUP
		MOVLW		.7
		MOVWF		CMCON
		BSF			STATUS,5
		BCF			OPTION_REG,7	;PULL_UP ACIK
		MOVLW		0xC0
		MOVWF		TRISB
		MOVLW		B'11111100'
		MOVWF		TRISA
		BCF			STATUS,5
		CLRF		PORTA
		CLRF		PORTB
;*****************************************
		MOVLW		.250
		CALL		DELAY_MS
		CALL    	LCD_INIT
;*****************************************
		MOVLW		0x00
		MOVWF		T1CON
;******************************************
MAIN
		MOVLW		0x02
		CALL		SEND_CMD
		CALL		SATIR1
;******************************************
		MOVLW		0xC0
		CALL		SEND_CMD
		CALL		SATIR2
;******************************************
		BTFSS		SEND
		GOTO		VERI_GONDER
		GOTO		MAIN	
;******************************************
VERI_GONDER
		MOVLW		0x02
		CALL		SEND_CMD
		CALL		VERI_GONDERILDI
;******************************************
		CALL		SINYAL_GONDER		;VERI GONDERILDE
;******************************************
		CLRF		PORTA
		BTFSC		SEND
		GOTO		MAIN
;******************************************
		CALL		MESAFE_HESAPLA		;MESAFE HESAPLANDI(SONUC TEMP1H VE TEMP1L YE YUKLENIR)
;******************************************
		CALL		BASAMAKLARA_AYIR	;TEMP1H VE TEMP1L BASAMAKLARINA AYRILIR(ONBINLER,BINLER,YUZLER,ONLAR,BIRLER)
;******************************************
		CALL		EKRANA_YAZ			;BU DEGERLER (ONBINLER,BINLER,YUZLER,ONLAR,BIRLER) EKRANA YAZLIR.
;******************************************
		GOTO		VERI_GONDER
;*****************************************
MESAFE_HESAPLA
;ACIKLAMA:
;GONDERILEN SES DALGASI 1845 MIKROSANIYEDE 30CM YOL ALMAKTADIR.(GIDIS GELIS OLARAK 60CM OLUYOR)
;61,5 MIKROSANIYEDE 1CM YOL ALIR.
;BU SUREYI 62 OLARAK KABUL EDERIZ DOLAYISIYLA HER 60CM DE 1CM ARTACAKTIR.
;BU HATA PAYI SONUCA EKLENEREK MESAFE TESPIT EDILIR.

;FORMUL:
;TIMER   	    (gönderilen sinyalin geri dönüş zamanı, mikrosaniye olarak)	 
;----- = SONUC1 (gerçek sonuc bulunur)
; 62      		(1cm yol için biçilen süre, mikrosaniye olarak)

;SONUC1   		 
;----- = SONUC2 (hata payı tespit edilir)
; 60      	

;SONUC1 + SONUC2 = MESAFE/CM (hata payı gercek sonuca eklenir ve uzaklık bulunur)
	 
;NOT SONUC TEMP1H VE TEMP1L REGISTERINE CM CINSINDEN YUKLENIR
;********gercek sonuc bulunur*************
		MOVF		TEMP1H,W
	    MOVWF	    BOLUMH         ;bölünecek sayı high byte 
		MOVF		TEMP1L,W
	    MOVWF 	    BOLUML         ;bölünecek sayı low byte 
	    MOVLW  	    .62
	    MOVWF 	    BOLENL         ;bölecek sayı high byte 
	    MOVLW 		.0 
	    MOVWF  	    BOLENH         ;bölecek sayı high byte 
		CALL		BOLME
;********hata payı bulunur****************
BOL_60
		MOVF		SONUCH,W
		MOVWF		TEMP1H
	    MOVWF	    BOLUMH         ;bölünecek sayı high byte 
		MOVF		SONUCL,W
		MOVWF		TEMP1L		
	    MOVWF 	    BOLUML         ;bölünecek sayı low byte 
	    MOVLW  	    .60
	    MOVWF 	    BOLENL         ;bölecek sayı high byte 
	    MOVLW 		.0 
	    MOVWF  	    BOLENH         ;bölecek sayı high byte 
		CALL		BOLME
;*****hata payı gercek sonuca eklenir***
		MOVF		TEMP1H,W
		MOVWF		TOPL1H
		MOVF		TEMP1L,W
		MOVWF		TOPL1L
		MOVF		SONUCH,W
		MOVWF		TOPL2H
		MOVF		SONUCL,W
		MOVWF		TOPL2L
		CALL		TOPLA
;*****************************************
		MOVF		SONUCH,W
		MOVWF		TEMP1H
		MOVF		SONUCL,W
		MOVWF		TEMP1L
		RETURN
;*****************************************
BASAMAKLARA_AYIR
		CLRF		ONBINLER
		CLRF		BINLER
		CLRF		ONBINLER2
		CLRF		BINLER2
		CLRF		ONBINLER3
		CLRF		BINLER3
		MOVF		TEMP1L,W
		MOVWF		BUFFER
		CALL		CONVERTLOW
;*****************************************
		BTFSC		TEMP1H,0
		CALL		ADD256
		BTFSC		TEMP1H,1
		CALL		ADD512
		BTFSC		TEMP1H,2
		CALL		ADD1024
		BTFSC		TEMP1H,3
		CALL		ADD2048
		BTFSC		TEMP1H,4
		CALL		ADD4096
		BTFSC		TEMP1H,5
		CALL		ADD8192
		BTFSC		TEMP1H,6
		CALL		ADD16384
		BTFSC		TEMP1H,7
		CALL		ADD32768
		RETURN
;*****************************************
ADD256
		CLRF		ONBINLER2
		CLRF		BINLER2
		CLRF		ONBINLER3
		CLRF		BINLER3
		MOVLW		.2
		MOVWF		YUZLER2
		MOVLW		.5
		MOVWF		ONLAR2
		MOVLW		.6
		MOVWF		BIRLER2
		GOTO		ADD_DECIMAL
;*****************************************
ADD512
		CLRF		ONBINLER2
		CLRF		BINLER2
		CLRF		ONBINLER3
		CLRF		BINLER3
		MOVLW		.5
		MOVWF		YUZLER2
		MOVLW		.1
		MOVWF		ONLAR2
		MOVLW		.2
		MOVWF		BIRLER2
		GOTO		ADD_DECIMAL
;*****************************************
ADD1024
		CLRF		ONBINLER2
		CLRF		ONBINLER3
		MOVLW		.1
		MOVWF		BINLER2
		MOVLW		.0
		MOVWF		YUZLER2
		MOVLW		.2
		MOVWF		ONLAR2
		MOVLW		.4
		MOVWF		BIRLER2
		GOTO		ADD_DECIMAL
;*****************************************
ADD2048
		CLRF		ONBINLER2
		CLRF		ONBINLER3
		MOVLW		.2
		MOVWF		BINLER2
		MOVLW		.0
		MOVWF		YUZLER2
		MOVLW		.4
		MOVWF		ONLAR2
		MOVLW		.8
		MOVWF		BIRLER2
		GOTO		ADD_DECIMAL
;*****************************************
ADD4096
		CLRF		ONBINLER2
		CLRF		ONBINLER3
		MOVLW		.4
		MOVWF		BINLER2
		MOVLW		.0
		MOVWF		YUZLER2
		MOVLW		.9
		MOVWF		ONLAR2
		MOVLW		.6
		MOVWF		BIRLER2
		GOTO		ADD_DECIMAL
;*****************************************
ADD8192
		CLRF		ONBINLER2
		CLRF		ONBINLER3
		MOVLW		.8 
		MOVWF		BINLER2
		MOVLW		.1
		MOVWF		YUZLER2
		MOVLW		.9
		MOVWF		ONLAR2
		MOVLW		.2
		MOVWF		BIRLER2
		GOTO		ADD_DECIMAL
;*****************************************
ADD16384
		MOVLW		.1
		MOVWF		ONBINLER2
		MOVLW		.6
		MOVWF		BINLER2
		MOVLW		.3
		MOVWF		YUZLER2
		MOVLW		.8
		MOVWF		ONLAR2
		MOVLW		.4
		MOVWF		BIRLER2
		GOTO		ADD_DECIMAL
;*****************************************
ADD32768
		MOVLW		.3
		MOVWF		ONBINLER2
		MOVLW		.2
		MOVWF		BINLER2
		MOVLW		.7
		MOVWF		YUZLER2
		MOVLW		.6
		MOVWF		ONLAR2
		MOVLW		.8
		MOVWF		BIRLER2
;*****************************************
ADD_DECIMAL
;ONBINLER  BINLER  YUZLER  ONLAR  BIRLER
;ONBINLER2 BINLER2 YUZLER2 ONLAR2 BIRLER2 +
;------------------------------------------
;ONBINLER  BINLER  YUZLER  ONLAR  BIRLER
		MOVF		BIRLER,W
		ADDWF		BIRLER2,W
		MOVWF		BUFFER
		MOVLW		.10
		SUBWF		BUFFER,W
		BTFSS		STATUS,C
		MOVF		BUFFER,W
		MOVWF		BIRLER3
		BTFSC		STATUS,C
		INCF		ONLAR,F		;ELDE AKTARILDI
;*****************************************
		MOVF		ONLAR,W
		ADDWF		ONLAR2,W
		MOVWF		BUFFER
		MOVLW		.10
		SUBWF		BUFFER,W
		BTFSS		STATUS,C
		MOVF		BUFFER,W
		MOVWF		ONLAR3
		BTFSC		STATUS,C
		INCF		YUZLER,F		;ELDE AKTARILDI
;*****************************************
		MOVF		YUZLER,W
		ADDWF		YUZLER2,W
		MOVWF		BUFFER
		MOVLW		.10
		SUBWF		BUFFER,W
		BTFSS		STATUS,C
		MOVF		BUFFER,W
		MOVWF		YUZLER3
		BTFSC		STATUS,C
		INCF		BINLER,F		;ELDE AKTARILDI
;*****************************************
		MOVF		BINLER,W
		ADDWF		BINLER2,W
		MOVWF		BUFFER
		MOVLW		.10
		SUBWF		BUFFER,W
		BTFSS		STATUS,C
		MOVF		BUFFER,W
		MOVWF		BINLER3
		BTFSC		STATUS,C
		INCF		ONBINLER,F		;ELDE AKTARILDI
;*****************************************		
		MOVF		ONBINLER,W
		ADDWF		ONBINLER2,W
		MOVWF		BUFFER
		MOVLW		.10
		SUBWF		BUFFER,W
		BTFSS		STATUS,C
		MOVF		BUFFER,W
		MOVWF		ONBINLER3
		BTFSC		STATUS,C
		GOTO		UNLIMIT			;MESAFE OLCUM SINIRININ DISINDA
;*****************************************
		MOVF		ONBINLER3,W
		MOVWF		ONBINLER
		MOVF		BINLER3,W
		MOVWF		BINLER
		MOVF		YUZLER3,W
		MOVWF		YUZLER
		MOVF		ONLAR3,W
		MOVWF		ONLAR
		MOVF		BIRLER3,W
		MOVWF		BIRLER
		RETURN
;*****************************************
UNLIMIT
		CLRF		ONBINLER
		CLRF		BINLER
		CLRF		YUZLER
		CLRF		ONLAR
		CLRF		BIRLER
		RETURN
;*****************************************
CONVERTLOW
		CLRF		YUZLER
		CLRF		ONLAR
		CLRF		BIRLER
CONVERT_YUZ
		MOVLW		.100
		SUBWF		BUFFER,F
		BTFSS		STATUS,C
		GOTO		YUZ_BITTI	
		INCF		YUZLER,F
		GOTO		CONVERT_YUZ
;*****************************************
CONVERT_ON
		MOVLW		.10
		SUBWF		BUFFER,F
		BTFSS		STATUS,C
		GOTO		ON_BITTI	
		INCF		ONLAR,F
		GOTO		CONVERT_ON
;*****************************************
CONVERT_BIR
		MOVF		BUFFER,W
		MOVWF		BIRLER
		RETURN
;*****************************************
YUZ_BITTI
		MOVLW		.100
		ADDWF		BUFFER,F
		GOTO		CONVERT_ON
;*****************************************
ON_BITTI
		MOVLW		.10
		ADDWF		BUFFER,F
		GOTO		CONVERT_BIR
;*****************************************
EKRANA_YAZ
		MOVLW		0xC0
		CALL		SEND_CMD

		MOVLW		'M'
		CALL		SEND_CHAR
		MOVLW		'E'
		CALL		SEND_CHAR
		MOVLW		'S'
		CALL		SEND_CHAR
		MOVLW		'A'
		CALL		SEND_CHAR
		MOVLW		'F'
		CALL		SEND_CHAR
		MOVLW		'E'
		CALL		SEND_CHAR
		MOVLW		':'
		CALL		SEND_CHAR
		MOVLW		' '
		CALL		SEND_CHAR

		MOVLW		0x30
		ADDWF		ONBINLER,W
		CALL		SEND_CHAR

		MOVLW		0x30
		ADDWF		BINLER,W
		CALL		SEND_CHAR

		MOVLW		0x30
		ADDWF		YUZLER,W
		CALL		SEND_CHAR

		MOVLW		0x30
		ADDWF		ONLAR,W
		CALL		SEND_CHAR

		MOVLW		0x30
		ADDWF		BIRLER,W
		CALL		SEND_CHAR

		MOVLW		'C'
		CALL		SEND_CHAR
		MOVLW		'M'
		CALL		SEND_CHAR

		RETURN
;*****************************************
BOLME
   MOVF   BOLUML,W 
   MOVWF   REG20 
   MOVF   BOLUMH,W 
   MOVWF   REG21 
   MOVF   BOLENL,W 
   MOVWF   REG22 
   MOVF   BOLENH,W 
   MOVWF   REG23 
   CLRF   PCLATH 
   CALL   BOLISLEM 
   MOVWF   SONUCL 
   MOVF   REG21,W 
   MOVWF   SONUCH 
   RETURN    
BOLISLEM 
   CLRF   REG25 
   CLRF   REG24 
   MOVLW   0X10 
   MOVWF   REG26 
IS0 
   RLF   REG21,W 
   RLF   REG24,F 
   RLF   REG25,F 
   MOVF   REG22,W 
   SUBWF   REG24,F 
   MOVF   REG23,W 
   BTFSS   STATUS,0 
   INCFSZ   REG23,W 
   SUBWF   REG25,F 
   BTFSC   STATUS,0 
   GOTO   IS1 
   MOVF   REG22,W 
   ADDWF   REG24,F 
   MOVF   REG23,W 
   BTFSC   STATUS,0 
   INCFSZ   REG23,W 
   ADDWF   REG25,F 
   BCF   STATUS,0 
IS1 
   RLF   REG20,F 
   RLF   REG21,F 
   DECFSZ   REG26,F 
   GOTO   IS0 
   MOVF   REG20,W 
   GOTO   IS2 
IS2   BCF   STATUS,7 
   BCF   STATUS,6 
   BCF   STATUS,5 
   RETURN 
;*****************************************
TOPLA
   MOVF   TOPL1L,W 
   ADDWF   TOPL2L,W 
   MOVWF   SONUCL 
   MOVF   TOPL1H,W 
   BTFSC   STATUS,0 
   ADDLW   .1 
   ADDWF   TOPL2H,W 
   MOVWF   SONUCH 
   RETURN 
;*****************************************
SINYAL_GONDER
		MOVLW		0x01
		MOVWF		T1CON
		CLRF		TMR1H
		CLRF		TMR1L
;*****************************************
SINYAL_GONDER2
		MOVLW		.1
		MOVWF		PORTA
		BTFSC		SEND
		RETURN
		NOP
		NOP
		NOP
		NOP
		NOP
		NOP
		NOP
		NOP
		NOP
		NOP
		MOVLW		.2
		MOVWF		PORTA
		NOP
		NOP
		NOP
		NOP
		NOP
		NOP
		NOP
		NOP
		BTFSC		PORTB,7
		GOTO		SINYAL_GONDER2
		MOVLW		0x00
		MOVWF		T1CON
		MOVF		TMR1L,W
		MOVWF		TEMP1L
		MOVF		TMR1H,W
		MOVWF		TEMP1H
		RETURN
;*****************************************
VERI_GONDERILDI		
		CLRF		SAYAC
		MOVF		SAYAC,W
		CALL		YAZI1
		MOVWF		BUFFER
		MOVF		BUFFER,W
		BTFSC		STATUS,Z
		RETURN
		CALL		SEND_CHAR
		INCF		SAYAC,F
		GOTO		$-8
;*****************************************
SATIR1
		CLRF		SAYAC
		MOVF		SAYAC,W
		CALL		YAZI3
		MOVWF		BUFFER
		MOVF		BUFFER,W
		BTFSC		STATUS,Z
		RETURN
		CALL		SEND_CHAR
		INCF		SAYAC,F
		GOTO		$-8
;*****************************************
SATIR2
		CLRF		SAYAC
		MOVF		SAYAC,W
		CALL		YAZI4
		MOVWF		BUFFER
		MOVF		BUFFER,W
		BTFSC		STATUS,Z
		RETURN
		CALL		SEND_CHAR
		INCF		SAYAC,F
		GOTO		$-8
;*****************************************
;MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
;MMMMMMMMMMMMMM  LCD  KONTROL BOLUMU  MMMMMMMMMMMMMMMM 
;MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
LCD_INIT
		MOVLW		0x33
		CALL		SEND_CMD
		MOVLW		0x32
		CALL		SEND_CMD
		MOVLW		0x28
		CALL		SEND_CMD
		MOVLW		0x01
		CALL		SEND_CMD
		MOVLW		0x06
		CALL		SEND_CMD
		MOVLW		0x0C
;-------------------------------------------------
SEND_CMD	
		MOVWF		LCD_REG
		ANDLW		0xF0
		MOVWF		LCD_TEMP
		SWAPF		LCD_TEMP,W
		CALL		SEND_LCD
		MOVLW		0x0F
		ANDWF		LCD_REG,W
		GOTO		SEND_LCD
;+++++++++++++++++++++++++++++++++++++++++++++++++
SEND_CHAR	
		MOVWF		LCD_REG
		ANDLW		0xF0
		MOVWF		LCD_TEMP
		SWAPF		LCD_TEMP,F
		BSF			LCD_TEMP,4
		MOVF		LCD_TEMP,W
		CALL		SEND_LCD
		MOVLW		0x0F
		ANDWF		LCD_REG,F
		BSF			LCD_REG,4
		MOVF		LCD_REG,W
;+++++++++++++++++++++++++++++++++++++++++++++++++
SEND_LCD
		MOVWF		LCD_DATA
		BSF			E
		BCF			E
		MOVLW		.5
;-------------------------------------------------
DELAY_MS
		MOVWF		DELAY_DATA
DELAY_MS0
		MOVLW		.142
		MOVWF		DELAY_DATA2
		NOP
		NOP
DELAY_MS1
		NOP
		NOP
		NOP
		NOP
		DECFSZ		DELAY_DATA2,F
		GOTO		DELAY_MS1
		NOP
		DECFSZ		DELAY_DATA,F
		GOTO		DELAY_MS0
		NOP
		RETURN
;MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
;MMMMMMMMMMMMMM  LCD  KONTROL BOLUMU  MMMMMMMMMMMMMMMM 
;MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
		END
Yirmi yaşındaki bir insan, dünyayı değiştirmek ister . Yetmiş yaşına gelince , yine dünyayı değiştirmek ister, ama yapamayacağını bilir.

Analyzer

Selam,

Benim gözüme bir şey çarpıyor bu devrelerle ilgili. Bu tip sayıcılı devrelerde genelde 4 mhz kristal kullanılıyor ancak 4 mhz frekans ikili sistem saymada uygun değil. "Zero drift" denen bir olay var.  4.096 mhz kullanmak gerekir mi acaba? Mesafe ölçümünde siz ne kadar sıfır hataya yaklaşabildiniz?

Analyzer
Üşeniyorum, öyleyse yarın!

XX_CİHAN_XX

4.096 alıp denıyecem.
4.00mhz e gore olcum yapıyorum ve hassasiyet oldukca iyi.
Birçok olcumde birebir sonuc alıyorum.Fakat bu yazılımda maskeleme yok dolayısıyla esyaların oldugu bır alanda(mesela bır oda) olcum yaparken cok dıkkat etmek gerekıyor.Çünkü gonderılen ses dalgalları sagda solda bulunan girinti cıkıntılardan(eşyalardan) yansıyarak farklı sonuclar olusmasına sebeb oluyor.Ama bos bır yerde yada olculecek hat uzerınde istenmeyen yansımalara sebeb olacak cısımler yoksa olculecek zemıne devreyı paralel tuttugumuzda birebir olcum gerceklesıyor.
Ölcum yaparken devreyı mesafesı olculecek yuzeye paralel tutmak cok onemlı açılı tuttugumuzdada yanlıs sonuclar dogurur.
Uzun lafın kısası :)
Kullandıgım krıstal 4.00mhz ve hemen hemen tum olcumlerımde bırebır sonuc aldım fakat bazı olcumlerde 1 yada 2 cm lık oynamalar oldu.Sebebi ise yukarıda anlattıklarım.  (1- oda koşulları 2- devreyi yüzeye  tam dik tutamayışım )
Yirmi yaşındaki bir insan, dünyayı değiştirmek ister . Yetmiş yaşına gelince , yine dünyayı değiştirmek ister, ama yapamayacağını bilir.

deserteagle

xxx_cihan_xxx hocam öncelikle yeni kod için ellerinize sağlık .acaba bunun hexini de verecekmisiniz birde ultrasonik mikrofon ve hoparloru nedere bulabiliriz.
Saygılar

XX_CİHAN_XX

Alıntı yapılan: "deserteagle"xxx_cihan_xxx hocam öncelikle yeni kod için ellerinize sağlık .acaba bunun hexini de verecekmisiniz birde ultrasonik mikrofon ve hoparloru nedere bulabiliriz.
Saygılar
Yukarıda asm sini verdiğim için hexe gerek duymadım derledıgınızde zaten hex ı elde edıyosunuz.Madem istediniz
Buyrun asm, hex bir arada.

http://rapidshare.com/files/9855780/ULTRASONIK_MESAFE_OLCEN_PROGRAM.rar.html

Bu arada mıc. ve hoparloru cok rahat buldum kadıkoyde ıntel leektronıkte var fakat oradakı hem bıraz pahalı hemde kalıtesız(alıcı verıcı 12$)

Karakoyde ekol elektronıkten aldım.15ytl ama hangısı rx, hangısı tx bellı hıc degılse :)
Yanı ıntele gore daha kalıtelı.Fakat uzakta olupta karaköye gecmek ıstemıyenler ıntel dekını denıyebılırler oda dogru sonuc verıyor.
Kolay gelsin.
Yirmi yaşındaki bir insan, dünyayı değiştirmek ister . Yetmiş yaşına gelince , yine dünyayı değiştirmek ister, ama yapamayacağını bilir.

deserteagle

sayın xx_cihan_xx hocam tekrar teşekkürler.

solidus

Cihan kardeşim bu projeyi otomobiller için park sensörü olarak kullanmak istersek nasıl bir değişiklik yapmamız gerekeir ?
Kimine göre kralım kimine göre yalanım… Herkes rahatına baksın, ben adamına göre adamım..

XX_CİHAN_XX

Alıntı yapılan: "solidus"Cihan kardeşim bu projeyi otomobiller için park sensörü olarak kullanmak istersek nasıl bir değişiklik yapmamız gerekeir ?
Açıkçası bu devreyi öyle bir iş için kullanmanı pek tavsiye etmem.Dışarda fazla test etmedim ama yağmurlu ve aşırı rüzgarlı havalarda doğru ölçüm yapacağını zannetmiyorum.  :roll:
Yirmi yaşındaki bir insan, dünyayı değiştirmek ister . Yetmiş yaşına gelince , yine dünyayı değiştirmek ister, ama yapamayacağını bilir.

solidus

Uygun bi devre bulamadım. Acaba alternatif olarak denenebilirmi diye düşünmüştüm. Sağol..
Kimine göre kralım kimine göre yalanım… Herkes rahatına baksın, ben adamına göre adamım..

XX_CİHAN_XX

Dostum esasında kullanılabilir denemek gerek.
Sadece kötü hava koşullarında sağlıklı sonuç vermiyebilir diye düşünüyorum.Ama fırsat bulunca devreyi dışarda deniyecem.
Yirmi yaşındaki bir insan, dünyayı değiştirmek ister . Yetmiş yaşına gelince , yine dünyayı değiştirmek ister, ama yapamayacağını bilir.

solidus

ISIS simülasyonunda Rx ve Tx  pic tarafına deneme maksatlı 10hz clock verdim ama ölçüm yapılıyor dan başka bişey çıkmadı.. Siz ISIS te simüle ettiniz mi acaba ?
Kimine göre kralım kimine göre yalanım… Herkes rahatına baksın, ben adamına göre adamım..

solidus

Cihan kardeşim şimdi fark ettim pic sadece Tx i kumanda ediyor. Rx opampla zenginleşiyor.. Dolayısıyla pic tarafına clock vermenin faydası olmaz..
Kimine göre kralım kimine göre yalanım… Herkes rahatına baksın, ben adamına göre adamım..

ensarabi

eline sağlık.peki bu 16f 84 icin yukmemiyor.ikiside aynı işi gormuyomu bunların
mplab da yukleyemeim
bi bilgisi olan varsa bana cevap yollarsa sevinirim
hata veriyo

XX_CİHAN_XX

Alıntı yapılan: "ensarabi"eline sağlık.peki bu 16f 84 icin yukmemiyor.ikiside aynı işi gormuyomu bunların
mplab da yukleyemeim
bi bilgisi olan varsa bana cevap yollarsa sevinirim
hata veriyo
@ensarabi
picprojeye hoşgeldin.
16f84 için bazı düzenlemeler yapman gerekir.Bu haliyle yükleyemezsin.
Yirmi yaşındaki bir insan, dünyayı değiştirmek ister . Yetmiş yaşına gelince , yine dünyayı değiştirmek ister, ama yapamayacağını bilir.

babali

cihan bunlar nasıl ölcüm yapıyor ses dalgalarıylamı lazerlemi