Page 1
����������� ����������������������
���������� ��� ���� ��� �������� ����������������� !�"����"#"$%&�'�#(����'%�)*+,
�������������������� �������������������������
��������������� �!�"#$�������%&$'�����!��()#�*�+,-��$���./���$
����0����.���$� ���1��&$�'�(��)2��*��(��
����33�45���6�/�7�������8�$���./���$�����(!��(������� ��$����1�� �(%!��'$�.
�� �7�9���5:6;�������0�����<=$! �!��(�����5���6&2#��<=$��0� �$�������.��.#��0�0�
��(>$�0��?�!"��*��((@�A�B��((@�A�1C�((@�D�����A���A�E�F
���"#��������(%!�!�$%.������6��0$'�(�0�.8�����E����.'����'����(<G�BHIJBKL�KMNL�ONHP�1LKHQNL�RS,N11
����(��)�'0� ��0��B����!"������B���33�4�DTUVQ�����WXYZZ[XF��7("�$����H\]�*��������$8��(��33�4���$�0��
����(��)���.0�.$�H\]�*��0�
���������� �� � ������� �������� � �������� ������
����������
�����60��^IPH\]�*�&2#��<=$���60���0<����6�/�7����/�$����0���$�����"#�(� �������60�(%!�!�$%.������6����9�� ���;�7�"����0���60
������KN_����/�7�����"#�(� �������60!��!8(78 $�$�6>���YP`[A
Page 2
���������������� ����������������
������ ���� � ������������������������ ���������������� !"�#�$#���$��#�� �� %& ���%�$��'�������(����) ��*�+�� �!�$��(��', �-��$�������-�'&"��"���$�./�.0� �"��($�������������1(�� *�����.0�2��0���$�*��3#� �+�/����4�2��2,)��&*"��"��"5�/��&����"���5� ��� 6��1����1� �/$����*� �!� "��"������7"�1.0� ����/7*��1
���������5�"��%* %�88�9������������ !"��"(������������������#�$#%�88�9%�������"���$������137��#�(����"�����������&*.�&�2� ���$"��� 3��%1 ,� %�$3�:1"�������� 2� ���'7�#��������(������$'#�%�88�9�������� !"2� �����������-�;<=�'&"%* ��"(�.��"�>�������$��?��+@+4��A7��*�$!��!�!��#� B���$�9�C-D� �$���*��!��#E��� �)�$����������$��?�."���������#�2� ����F�������!�$��%* �������������#�����%#� %����"���$���, %�$��'�5��9/��*�2� ������ (����� �%� /��""���������.�&��#��+
������ �#�(���)����� $#"���5��9�*�"����� �9!�>�%��1��$���.0�"��($�������������1����'���*�������� �7* ��"3�%$������ �)��������, ���$�����*��� �9!�>�%��1�*� �G��/�*�#)(����#�������������"�)%* ����3:1�#����(����"$���3��%1�#�$#���$"��� %�$3�:1"�������� �#����(��
"��%* ����3:1�#����(����"$���.�0! ���$"��� 2� %�88�93��%1������&�*��7* ��""�*�"��%* ��2��$&��!�!�����"$����*"��%* ��"$���2��$&��!�!��������� .0�%��%�88�9�5��$�" ,� �5�./���� .0�2�3��1�."���0���$�*����5��$�"��$(�������� �)/�"%* ����3:1��"$�.�&�2� %�88�93��%1���.0�%��%�88�9�3#� �%���#����, �5�./�%���"$�"."��5�$��0���$�*�"��($�������������1
������������
�������
������� ���� �������������������������������� ���! "#$!��� �#$$�������%"&�
Page 3
����������� ����������������������
�� ��������������������$#�7��*�%5�/���.0� ���&*��) /$�����7���$�&��#��4
+@������ !"#��$%�&'��%5�/����*�(A��#)� �� ���H�I4@����()*+�,-./0�1-23-2�$(451'���2�����137�%5�/���%* %�88�93��%1��"��"
������ ,� "��.0� ���5�2�#)(��*��2��"��3��1��!37�2� ($�������������1��3�������������$"��� 2� %�88�93��%1�#�%* ��"$��3���������$/$����"$��������� �#"���) /,�
C@����6789907�,-./0�:;3-2�$6�:<<(�'���2��!37����%�88�93��%1�#�$#���$"��� ��*� ����+��($����!��#�3���"���7�"��%��� ������������ !"���$'#��-�;<=���"%&*��"�>��"���%* ��� �)�$����������$'#��� "�*��#)�������#�(�"����%!� "#�2�� �#���&*���)� /��"?���"!�"��%����"����2��$��� ����������'&"��� ��"$������$"��� 2� %�88�93��%1�#���%* ��"(��� 2��JKLMNOPQR�SOTUOT���"��"#).�/$��+�%�88�9���.0��7�#)���7�%���%��2��$&��7"�$�3������%* �*�"�����"��($�������������1
-@����=1>(�%5�/�������"�&����"���!��*�"��������������������� �V ����"./��!��*�����4�%�88�9��*��7��*��JW<S����
X�YZZJ�������������V ����"./��!��*�����+�%�88�9��*��7��*��X�YZZJ�
�@����<?>�%5�/����*�"����1
�������'���(������($��)*+,-��.����/� "�� ��/���"
�����
����
������������������� ���������������������������� �����
�������������� ���!"#$%&'()�&�(��������������� �����*+,-.�/012230�45673�18459� ������ ()� �������:;�;��:<��&����
����=������*+,���<=)-.&�����=>
���
�����������������
���
��������������
���
�����
����=������*+,���<=)-.&�����=>
�����������������
���
����
���
Page 4
���������������� ����������������
�������0�������($��$�1��2345)*+,6��.���!�#�$ �7$���� ����)*+,-
ADX-SRF04
ADX-SRF04SRF05
���������� ������������������������
�����
������
�
�
�
�
���
���
��
��
��
��� �
�
� ������
�� ����
���������
��
���
��
�������
��
��
���
��
�
�
�� ������
�������������� ��������������
��� ������������� � !���"��#!������������$���������
���������%�"���&'()*���#+,-./0'1234�513'6774�513'89�: 4
�3'99�;<=�,:&'123
�=����<����;��>�;����?��
�� � ������������
�� � ����������������������� !"�#
�� � �������� $%���&'��()*+,�&-�.��&-/�012��3456
�� � �������� $%�� �&'��()*+,�&-+)�.�'78�9:;<==� �>?@�ABC�&-�-�0-���0
��� ���
����
������������� ��������
����������� �����������
������������������
Page 5
����������� ����������������������
@����AB��C>DE����F�3����5������$%���"�"*�&�.0� �"�����1�����7$/7*��12� ��![����!����#A���?"�3��!
�$�1��5�"���B\]^R_�V���������5�/*��%!���2� �̀ Rab^TRKL�.�����>(����*� ���� "��E��, (��3�c����1����������1�7*�d`e]����-��3���./�5��$�&������-�/����������$��!���) �B���$�3���$"��%���0���$�*�.07�2� ������E� � �3���./�.0� �(��%���"2,)
����1��d`e]����-�(��������#�$���?"����1�NWf�C�2�����&��4������""���/�*� %�88�9JW<S�����X�YZZJ��%5�/����0���$�*�"�����1�����7$/7*��1�������?"����1�Y`W�����$#��'���#����-�2�%5�/����%#��%���*�� ������1�dgZh44��3����*�"���� �*�� ��/����������1������ ��2� ���1��d`e]����-����"���!���) �3���.0� ��%� .�&��#��C
G��H�A������H����I�A���IJA � �ABG���K�HB��L�IMANHA�O�P��4��Q�RA�������ASRT����,UV&��>@�H��I��W ��������IR��H�A�����N���@���XX��
."���2#�����"�$i�[��W�%5�/���($�������������1�NjkI�+�`4� �3���.0� ��$�&�������%!� �#�����5�����%��� Al "10��."���!��*��3����*��*�������$����������*� �#�5�$��%�.��#)�����K�HB��L��distance
Al "10��#)5�$�.0��*��*������� �#����(����"�$�&�������� ��!�$������"��"5�/�./�2�3��1�N+@��2� ($�������������1�NjkI�+�`4��*�"��2��JW<S�2� �$�&�����������"5�/�./���3��1��!37�����"5�/�./�$#���!"�m+n��3�����!�$���5� ��%*�2��X�YZZJ��2� �$�&���������*��2��"��2�3��1��N+@+���� �)�, ��� "5�/�./�������137���3���%��� %�88�93��%1��"�#�$#���$"��� �����', +��($����!��#� �3�����"���7�./��$�&����������!�$��"����"�����������
���#�#��$�&�� �������(�����%�88�93��%1��"�2���#�2��X�YZZJ�� ��$�&�����������5��!"��%��� 2��3��%1���$'#��-��;<=���"%&*��"�>�2��3��%1���$'#��/���%#� /����������� !""�7*$#)����!�� ���%��� ��"����� "�������'7�#�2�� ��&*���)� /����5�./�2��3��%1������� !"%����"����2��$��� ������2� �$�&��������/�� ��"�)/*�����$����i��.�$�&�� � ��������!�����/1���./�%�88�9����137���"$������$"��� 3��%1��"�#���%��%*������ "�������� �#��������(��
Page 6
���������������� ����������������
������������� ��������������������
�������� ���������� !!"�
��������#������$��%&�#'%��(�)'������*��+�����,�''-���./��0�1�2
������%'���� �3,'��"456����,�''��-���./��0�1�2
&�,��%������������������,'��,�������/�,'�7
�����������������'����������������$8��92������������
$�����������'�����.������������,��:�������������;�.��,���--�<��,�<���$
������'������*��$/�,�''���=��*%��
������� 6� 8�$.�� !�������������7�8����� )*+,-��.���������$�������� �����)*+,-�"�����&��7$���'������
����������� ������������
�������������������������� !"������#$�%�&� ���'!���(��#�)*��+�,-.
������������#$�%��*��'!������/�0$��%�
������1���2���������!� '�!��� 3-�0�#���%�� �
���������'��)>?@A+�����,�''-���./��0�1�2�������������������������$8��92������������
&������,��:�������������$#'�,���--�<��,�<���$
������� -� 8�$.�� !�������������7�8����� )*+,-��.���������$�������� �����)*+,-�"�����&��7$�����������9(���7$�:;3<���$��7$�������1=
Page 7
����������� ����������������������
%5�/���"�������$"��� 3��%1�#�2��JW<S���.0�(��$��1��+�.�/$��+D��!����������������$"��� 2� %�88�93��%1��������!�$������$���3��*��$#"�����#����� ���!"���2�2,)���"�m�n(����m+n����/�7�"�����$���3�"�����#����� ���!"���2�� ���"�m+n�(����m�n
/�� ��"�)�*��#�(����""����5�(�/�������++-������*����$�9�#�."����#� ��""����� 2��$&������� �#�(����"�$�&��������(��$��12� ($�������������1�#�.0��)����� �! %�88�9�op"�����$'#��++@��k4�q<=����($�������������1�NjkI�+�`4��5� ��������$��?��D�%�88�9�op"��*�( �"!�
�������
����
�
��� ��������
��
���
��
��
�
��
��
��
��
�
����
����
����
���
����
����
����
����
�
�
� �� �� �� �� � �
�� �� �� � �� �� �� ��
�
���
��
���
��
�
��������
�����
�����
�� �
�����
������
���������� ����
�����������
����
��� ��!�
"��
��
��
������
����
�����
���#
���$$��
���
�#�����
����
����
���
��
�
�
"��
$%�
�������>��������$��&��7$8 ����$"����!�$�1�?@AB-�*3'�����)*+,-�� �������.�.���
Page 8
���������������� ����������������
/*————————————————————————————————————————————————————————————————————————*/// Description : Distance detector by SFR05 display value on LCD// Filename : V51SRF05.C// C compiler : RIDE 51 V6.4.35/*————————————————————————————————————————————————————————————————————————*/#include <REGLV51RD2.h> // Header file register for P89V51RD2BN#include <lcdV51.h> // Library for LCD display#include <intrins.h> // Include library for nop functionsbit echo = P1^0; // Define received pulse pin(SDA)sbit trigger = P1^1; // Define trigger pulse pin(SCL)
/***************** Function Trigger pulse for start process ******************/void trigger_pulse(void){
unsigned char i; // Variable for countertrigger = 1; // Start positive pulsefor(i=0;i<10;i++) // Loop 10 times_nop_(); // Delay 1 microseconnd functiontrigger = 0; // End of positive pulse
}
/******************** Distance reading function ****************************/unsigned int distance(){
unsigned int mc; // Variable for internal function trigger = 0; // Initial logic low
echo = 1; // Initial logic lowTMOD &=0x0F; // Configuration Timer1 mode 2(16-bit counter)TMOD |=0x10;TH1 = 0x00; // Initial Timer1 counter value to zeroTL1 = 0x00;TF1 = 0; // Clear overflow flagTR1 = 0; // Start Timer1trigger_pulse(); // Send trigger pulsewhile(!echo); // Detect rising pulseTR1 = 1; // Start timer countwhile(echo); // Detect falling pulseTR1 = 0; // Stop timerTF1 = 0; // Clear overflow flagmc = TH1; // Keep high bytemc <<= 8; // Shift to high bytemc += TL1; // Keep low bytedelay(10); // Delay 10 millisecondreturn(mc/114); // Return distance value in centimetre unit
}
/************************* Main Program **************************************/void main(){
unsigned int value,old_value; // Variable for storing distance valuelcd_init(); // Initial LCDlcd_puts(0x80,”SRF-05 Demo...”); // Display messagelcd_puts(0xC0,”Distance: cm”); // Show distance value on screenwhile(1) // Infinite loop
����� ������ ����� C�D��E�/� ������$���������"8 ����$"����!�$�1� ?@AB-�*3'����)*+,-�� �������.�.����9 ��7$=
Page 9
����������� ���������������������
."����%��#)��"���2#�����"�$i�[��W�����7$($�������������1�NjkI�+�`4�3����!��*�"����������$�&�������������������� ���������������� !"
+@��5�"���!���) �$�&���������2��"�����1��d`e]����-
4@��*�� ����$�&��#��D
C@��2#�����"�$�#��+������5�"����� ./���(A�1�@LR_�������W�+��*�"����"��%��� (A�1�����?"�12� ��;\T]�+� ���.0�� �Y`J� (��(A�1� a�+Qrs��@LR_� ���1�/��� .($�������������1�NjkI�+�`4������� ��2��$&�"*�����"�$� (�./$*
-@��*��(A./��"*� ���5����'7$��� 2�� �#����/��2� �$�&�������.�����+� � �!�$��', �-��$�������%� �"����#��$�&��tW`
������������������� � �������!�������������""�#�
������������
� ������������
�@���"�)���� �������/*� ���.0�($��������3������#����#����"������ �#�(��
{value = distance(); // Read distanceif(value != old_value)
// Compare new and previous value to update display{
lcd_puts(0xCA,” “); // Clear previous valueinttolcd(0xCA,value); // Update new valuedelay(500); // Delay for displaying
} old_value = value; // Keep previous value for comparison next time}
}
�*+�D-+)/��E���
���./���$>��%<����($�<=$����'0� ����%(0E���0����.��0���������%&$'�� H\]�*� >���(%!�!�$%.������6�KSa��1\^B�%0�b���$%<����(7����<=$����$� �$! �����.��.#��0�0�(���0�9���E ���0����b������while(1){}�.#��"#�$�>�<=$;�'��� �$�����0�9�;��<����.����7� ��>��(E��0'(����7( .#� �$�0�� )��(����<�#�$�<��;2�;�$/�! ��7( �<��0�9�
����� ������ ����� C�D��E�/� ������$���������"8 ����$"����!�$�1� ?@AB-�*3'����)*+,-�� �������.�.����9��=
Page 10
����������������� ����������������
G�@���!#�IMANHA��YZL�������� �HI��W ����������H�A�����N���@���XX���Q�RA����I�A���IJA � �AB�,:4[�U\\�I�#����,:4]C�:4�,�1�)+^38.07
�������4F��������H�����(451�N S�����4G��������H�����6�:<<(����� � ���&��#��u
����"�$�#�� 4� � ������"�$�����*� �#�.0��*��*������� �#����(����"�������5�(��%� �#��$�&��tW`�"���5� ���!�$��""5�/�./�2�3��1��#�.0�%5�/���%* %�88�9"���7�(��� �������$#���!"���m�n�"*����"�)��#�"����"�$�*���*�2��$&���"��������������"�$�*�����5� ��� #)
+@���&���������3����*��*���) /$�������) ����5�$��v�#��4@�%* 3��%1�+��($����!��#����.0��5�%�� �PULSOUT�/*��2� ���$"��� 3��%1%5�/���
�5�%�� #)���� 4�($����!��#�#����$'#�%�88�9�op"�/��"�4�q<=� �'����� "��3��%1� +��($����!��#��� "5�/��*�./�"���5�%�� �PULSOUT� ��*�"����
C@��*��*����$"��� 3��%1�3�������%�������#���������*��*�(������.0��5�%�� �PULSIN�5�%�� #)������*����$"��� 3��%10*� ��"./*���4�($����!��#� �"?��*��#�(��(��.��������J�wtX
-@�/*� �����+��$!��!�!��#"*��#�����!�$����&��5� ���$2���+�./$*����������������"��"����"�$�*�������3:1��""����&��������"?�.��������dg
���
����������
���
� �����
� �������
����
�� ��
���
�����
������
���
�� �
�����
�
����� !"#
��� !��
�
���
��
���
���
����
������
�
�
�!
$
"� "� "� "� "� " "� "� � %
���
��
��
&'"(�)
�� �� � �� �� * � � � ��
�
�
���
��+���������
���
���
��
�
�
��
� �������
��
����
���
�� �
�����
�"�
�"�
�"�
�"�
��
*
�
�
�������F��������$��&��7$8 ����$"����!�$�1�?GE�>+@FF�����)*+,-�� �������.�.���
Page 11
����������� �����������������������
@ DEVICE PIC16F877,HS_OSC' Use PIC16F877 and HS OscilatorDEFINE OSC 20DEFINE LCD_DREG PORTD ' Set LCD Data portDEFINE LCD_DBIT 4 ' Set starting Data bit for 4-bit interfaceDEFINE LCD_RSREG PORTC ' Set LCD Register Select portDEFINE LCD_RSBIT 0 ' Set LCD Register Select bitDEFINE LCD_EREG PORTC ' Set LCD Enable portDEFINE LCD_EBIT 5 ' Set LCD Enable bitDEFINE LCD_BITS 4 ' Set LCD bus size (4 or 8 bits)DEFINE LCD_LINES 2 ' Set number of lines on LCDDEFINE LCD_COMMANDUS 2000 ' Set command delay time in usDEFINE LCD_DATAUS 50 ' Set data delay time in usTRIGGER VAR PORTC.3ECHO VAR PORTC.4' =====[ Variables ]======================================================I VAR BYTE ' loop counterRESULT VAR WORD ' pulse width from sensorRAW VAR WORD ' filtered measurmentCM VAR WORD ' centimetersINCH VAR WORD' =====[ Initialization ]==================================================SETUP: LOW TRIGGER' =====[ Program Code ]====================================================MAIN:
GOSUB GET_SONAR ' Take Sonar ReadingCM = RAW /30 ' Convert to CentimeterLCDOUT $FE,$01,"CM = " , DEC CM , " CM" ' Show on LCDINCH = CM */ $03EF ' x 3.937 (to 0.1 inches)LCDOUT $FE,$C0,"INCH = ",DEC INCH/10,".",DEC1 INCH," INCH" ' Show on LCDGOTO MAINEND
' =====[ Subroutines ]====================================================GET_SONAR:
RAW = 0 ' Clear MeasurementFOR I = 1 TO 5 ' Take 5 Samples
PULSOUT TRIGGER,5 ' 10 uS Trigger PulsePULSIN ECHO,1,RESULT ' Measure PulseRAW = RAW + (RESULT / 5) ' Simple Digital FilterPAUSE 10 ' Minimum Period Between
NEXTRETURN
����� ����'����$�7������� C�D�!�&�($��?GE�>+@FF��������?GEH2)GE�?*;�IJKLMNOP��/� �������$�����/���"($�� )*+,-� � ���������������������#�"$�������%"&�
��������� � ����������� ������������������� ������� ��!������"������#�$���%&'� ()� *� �!���!����� ���� +,-+.��/�#"��!���� �����0�� �*1��������������*�2+34�5��2+��/# �������1���1����� ����34��/#��� �����������
�$�����"��"����"�$�*�������"�$/��"��5��*��#��*�(���$�/�������C������3:1�#�(��$#/*����� �!�$�������5�$��%� �#��$�&��tW`���"�)�5�"����� �*��#��*�(����!)�� ���.0����$%�$3�:1� �+�� �!�$����*�"����@CkCu�!)�� �3���./�"���%� �*�(������3:1�#�����#��2,)����./�����#������@+�!)���, ��� �&9�����C@kCu����
Page 12
����������������� ����������������
G�G� ��!#�IMANHA��YZL�������� �HI��W ����������H�A�����N���@���#��XX���Q�RA���8E�2_^3�$���HN���M̀�@�D'�N S�8E�2_^3@,�$���HN���M̀�@,'
+@��*�2��N��2� �\]�TbxU�/����\]�TbxU4N��2��"���7��*��JW<S
4@��*�2��N��2� �\]�TbxU�/����\]�TbxU4N���2��"���7��*��X�YZZJ�
C@��*�%��%�88�9�#��5������ .� ���&��#��j
����"�$�#�� C� � ������"�$�����*� �#�.0��*��*������� �#����(����"�������5�(��%� �#�/���*� �`RyOz�XRrx\^bP�2� ����"�$��%!"�%�$�{���!����1�����.����"�$#)%�$��'.0�(��"����) � \]�TbxU�Bf�4�e�V� ��%!"�%�$�{�4�eEF� \]�TbxU4N�Bf�4N�V� ��%!"�%�$�{�4NE� �����f�4�B��%!"�%�$�{�4��7*$���|�E� ��������"����(���?"�#A�#�"5�/�.%*�/��2� ����"�$
�����
������������ ����������������
����
���
���
������������ ���������������
�� �
��� �� �� ���
�
�
�
�
�
�
�
��
������
����
� �
��
�����
����� �
�������
� � �
�������@��������$��&��7$�M5)QRKL��.�M5)QKL'?�����)*+,-�� �������.�.���
Page 13
����������� �����������������������
' {$STAMP BS2sx}' {$PBASIC 2.5}'***************************************************************************' SRF05 Ultra-Sonic Ranger demonstration code on BASIC Stamp 2,2e,2sx,2p,2pe,2px' Using mode 1 (Mode pin leave no connect)' Connect Trigger pin to transmit, Echo pin to receive'***************************************************************************Trig_Pulse PIN 1Echo PIN 0Distance VAR Word
LOW Trig_PulseDO #IF ($STAMP = BS2SX) OR ($STAMP = BS2P) OR ($STAMP = BS2PX) #THEN PULSOUT Trig_Pulse,13 ' Pulse out 10.8 us PULSIN Echo,1,Distance ' Read positive pulse 0.8us per unit Distance = Distance */ $0161 ' Multiply by 1.379 convert unit as Millimeter DEBUG HOME,DEC5 Distance," mm.",CR PAUSE 100 #ELSE ' Case $Stamp BS2 , BS2E , BS2PE PULSOUT Trig_Pulse,5 ' Pulse out 10 us PULSIN Echo,1,Distance ' Read positive pulse 2us per unit IF Distance < 19000 THEN Distance = Distance */ $0373 ' Multiply by 3.448 convert unit asMillimeter DEBUG HOME,DEC5 Distance," mm.",CR ELSE Distance = Distance / 29 ' Divide by 29 convert unit as Centimeter DEBUG HOME,DEC5 Distance," cm.",CR ENDIF PAUSE 100 #ENDIFLOOP
����� ���� 0����$�7������� C�D�S�!�&�($�� M5)QRKL��.� M5)QRKL'?�/� �������$�����/���"($��)*+,-�� �������.�.���������#�"$�������%"&��"� �����&��7$���'��������
"���5� ���!�$��""5�/�2�3��1��#�.0��!��*�"���$�&����������"�)%* 3��%1"���7���"(��� �$�&����������"�)�*��*�%�88�93��%1"����2��$������5�%�� �PULSIN $��"?�(���#��������̀ \QTb^KR�5�"���5��9�*������� ./*��$!��!�$����"$������5�%��
Distance = Distance */ $0161 ���������*�6789:;<�"���6789:;<=>����./��%� ��"$��#�/���*� �`RyOz�XRrx\^bP� ��"�)���5�"���5��9�3����%� �*�����
�� ��"$�./*��� �!�$��������5�%�� Distance = Distance / 58 ��������*�6789:;<�"���6789:;<=>
����./��%� ��"$��#�/���*� �`RyOz�XRrx\^bP� � �0*"����"�)/*� �����+���$!��!�!��#"*��"���(��*��*��#"���)
Page 14
����������������� ����������������
G�F� ��!#�IMANHA��YZL�������� �HI��W ����������H�A�����N������#��XX���Q�RA���8E�2_^3�$���HN���M̀�@�D'�N S�8E�2_^3@,�$���HN���M̀�@,'
+@��*�2��N��2� �\]�TbxU�/����\]�TbxU4N���2��"���7��*��X�YZZJ�
4@��*��7��*��qS`J�2� �������� "����1
C@��*�%��%�88�9�#��5������ .� ���&��#��k
����"�$�#��-��������"�$�����*� �*��*������� �#����(����"������� ,� .0�"���!��*����+�%��%�88�9�5�(��%� �#�/���*� �`RyOz�XRrx\^bP�2� ����"�$��%!"�%�$�{���!����1����.����"�$#)%�$��'.0�(��"����) � \]�TbxU� Bf�4�e� V� ��%!"�%�$�{� 4�eEF� \]�TbxU4N� Bf�4N� V� ��%!"�%�$�{�4NE������f�4�B��%!"�%�$�{�4��7*$���|�E���������"����(���?"�#A�#�"5�/�.%*�/��2� ����"�$
�����
������������ ����������������
����
���
���
������������ ���������������
��� �� ���
�
�
�
�
�
�
�
��
����������
�
��
�����
�������!�
� �� �
� � �
�
����
�������A��������$��&��7$�M5)QRKL��.�M5)QKL'?�����)*+,-�� �������.�.����"������������
Page 15
����������� �����������������������
' {$STAMP BS2sx}'***************************************************************************' SRF05 Ultra-Sonic Ranger demonstration code on BASIC Stamp 2,2e,2sx,2p,2pe,2px' Using mode 2 (Mode pin tied to GND)' Connect Trigger pin both transmit and receive'***************************************************************************Trig_Echo PIN 1Distance VAR Word
LOW Trig_Echo
DO #IF ($STAMP = BS2SX) OR ($STAMP = BS2P) OR ($STAMP = BS2PX) #THEN PULSOUT Trig_Echo,13 ' Pulse out 10.8 us PULSIN Trig_Echo,1,Distance ' Read positive pulse 0.8us per unit Distance = Distance */ $0161 ' Multiply by 1.379 convert unit as Millimeter DEBUG HOME,DEC5 Distance," mm.",CR PAUSE 100 #ELSE ' Case $Stamp BS2 , BS2E , BS2PE PULSOUT Trig_Echo,5 ' Pulse out 10 us PULSIN Trig_Echo,1,Distance ' Read positive pulse 2us per unit IF Distance < 19000 THEN Distance = Distance */ $0373
' Multiply by 3.448 convert unit as Millimeter DEBUG HOME,DEC5 Distance," mm.",CR ELSE Distance = Distance / 29
' Divide by 29 convert unit as Centimeter DEBUG HOME,DEC5 Distance," cm.",CR ENDIF PAUSE 100 #ENDIFLOOP
����� ���� 6����$�7������� C�D�S�!�&�($�� M5)QRKL��.� M5)QRKL'?�/� �������$�����/���"($��)*+,-�� �������.�.���������#�"$�������%"&��"� �����&��7$������������
Page 16
����������������� ����������������
����!���"#$%&%�'�����!���(#�$%&%�'��)&��*�����+&,*�������%�+�-.��������/�-�0��1����1����1�����$����1����1����
����������� �������������� ��������
���� ���������� ��� ������ �� ������ ��������