˘ ˇˆ˙˝ - chiangkham.ac.th · 2 ˘ ˇˆ˙˝ ˛˚ ˜ ˚ ˚˜ IPST-MicroBOX IPST-MicoBOX C...
Transcript of ˘ ˇˆ˙˝ - chiangkham.ac.th · 2 ˘ ˇˆ˙˝ ˛˚ ˜ ˚ ˚˜ IPST-MicroBOX IPST-MicoBOX C...
���������� ������������������������������������ IPST-MicroBOX ��1
IPST-MicroBOXC programming
Reference manual
���������� ����������� ������������������������
� IPST-MicroBOX
2������������� ������������������������������������ IPST-MicroBOX
IPST-MicoBOX C programming Reference Manual
���������� ����������� ������������������������� !"#$%&'()*+,
���-���������������.
�������������� ����������������������������������������� ���!���"�!�����"�#������� #�$%������&�"'��'������� �#�(�)"�������������*%����&�"'������ �#�������'�(�+���$%���������,��)�"� !&���!���"�!�����"�#��,��+������"�
-���.�������������!�'������������(����������������/&����������"���$�"���0���"����#(�)"1����$���������"���0���"����#����"�2��� "�#
3���4����#������� %"'������������� ������������"���$���!���"�!�����"�#����.�'������� �#����� #�� %"'����*�4���������*%��'"���0���"����#5��!���"�!�����"�#5����6�!�������"�2��� "�#5����&�"'��'������� �#�����&����7�������"�$�������������88� �
�������������� ��������� ����������� �������������� !�"#$�� ���$���$ �� %&'()*+,-./01�2��� ��3�45������$���������6#4�6��� �7�����#���4����!��89���6� 3#�$�� ���:����3#�$����;�����4����7<$�� ��� ��5 7=�79�2��7����4���������� ���5� =5� ������#�������� $���������>;��"#�!�=� ��=����43�?��@ �7��=���39�5�� ��=;#�������� ��� !2="�!�3���� �����4��2=7����������������5�����;#� ! ��5 7=�79�2��7���� ;�� >���$!�=� A�5�7�����"�>�5$���� #;��� ��5 7=�79�� >$3��;�
������������� �������������������������
�#�� ���� �����;��4����4���<�$��4����$�� $���������>� �� 5� 5�;#� !��:B�3
& ����������&2��2#���� �(�+�!&�/��0��/���-1�2��3�4�/��15�6����73�339:3�;���6�������<�9-�.���6�������6�'��'����6 ��'������'��2=��<-><!����2�#��8$9:;:$:88<$;!����� 8$9:;:$:88=
���������� ������������������������������������ IPST-MicroBOX ��3
��������� ������ � IPST-MicroBOX
$�&��+"'��"'����$+��+'�������� ���6"'�������(%�������&��%�'����#� ��%�'������6�?����6��"�2��� "�#��&%2�@��$�&��+"'��"'����������.� ����*�4���������$�")��A��&%������&� �6�?��$%�&%�"'�!&�$%"����4#����.*�
�� .�����'�#�����& ��������!��'����?�)"���2)�"2�@��$�&��+"'��"'�������%�����*�4����-��2)�"��,� ��"+�'(�)"��'��)"�� �(�����*5"����#�������&�����������������"��(%��,��� ��
(����* ���������6�?�2)?�B���.�����+'���������"�������� �#������!�!�� C�����D� �&%2�@������������'�(��'�)"�����*+�)"
����)�"����������"� +�'A�"+�' +"��)�"'��2)�"�(%��*�$%�������&�����������������"��(%�"&��%"'���(����* ���������6�?�2)?�B������2����$��88� ����������(+'$� ��2�����-:E-
��6��"�2��� "�#��'�(0��������&� �!��'���2�@��$�&��+"'��"'��6�?�� �2)�"��,��)�"��'��)"�(���'� �(�����*F*%�"��������&����������"���$����!���������$�!��''�������&����7�������$�&����������"��?����%������&��������������*%����*�4������������&%�*%�������"���0���"����#��)?"' %������6�!�������2)�"������� ��!���"�!�����"�#����� �!��''��;��' %"'�*�4���������$��G/����#� ����$�������4� ��� �#� ����"�2��� "�#�6%�&%�����;��'��� ��(%����������"�������+�����������,�"������'(���'������"��2)�"�(%�������������6�!��������*%�����&�������(#�����%�H8(���?'����$�����������$�� ���� ����
��6��"�2��� "�#�&%�(0������ ���86"'!��'����?�����&%����2�@��$�&��+"'��"'���� �?'� +��I�2��-:E>������*�#�&�"'������ �$�&�� ��+"'��"'�����$%��?'(�&�����*�#��)"����I�-:E>���*�#�&�"'� ����:��*�#��)"�!�'�����8����$*������������7�����$J�!�'����%���(�����������2$����J�!�'�������48����#����������J�!�'�����"'������������"'�����!�'���"� �&� .#&��4����"� �&� .#������I�2�����-:EK��*�#�&�"'� �����>��*�#��)"�!�'�����'����%��L��*'�����F&�'���#M������2��4���J�!�'�������+"2����������$���J� !�'�����8���1��������������N��$�'����J� !�'�����O�1�4��$���������������7�����$J!�'����%"�"0&�����������%"�"0&����!�'������'(�����������"+�'�"'
6%"�*��2���� ��6"'!��'����?�����. �& ���&%���PQQRS99TPT�URVQ�WX�QP�!&��)"��6%�����(�%�6"'�!��'���$�&��+"'��"'��� � !&������; #�'����&��.�� "��2)�"�������������������4#�����2�@��$�&��+"'��"'��&%�
����������� ��������������������������������� !�"#$��%���&��'( �#�)$�%*�!� %+�%)(���)%� (�,�-�%#)$.�/��&0 0�,�� 1%% ��2
4������������� ������������������������������������ IPST-MicroBOX
����
�00�>�<�2?��5��>���@A�������������������������B7������������ !"#$%&'()*+,����������������������:
�������������GH'�#$���
��-��������$%GH'�#$���
��3�������
��E�$��&6"'6%"�*������������� �������1����Y
��:����� ����6B����1����Y
��>���������� �����
��K�������'$��&6"'6%"�*�
��Z������"&6"' ����������
�00�>�9�1�-7���/�������������������C&DEFG����A4��5�����������
������������0�>������B7������������ !"#$%&'()*+,������������������������������������������������������������������-:
-��� ��& ����������'�4� ��� �#
-�-� ��& ��������&%���������2��7#����"���
-�3� ��& ����������'��
�00�>�H������>��-��B�1���I����������0�>������B7������������ !"#$%&'()*+,��������������3:
3���� ����'�U[
3�-�� ����'� U[5\]V\
3�3�� ����'� V^UQXP���XWV\
3�E�� ����'� [T_
3�:�� ����'�^PU]\
3�>�� ����'�`T5^PU]\
���������� ������������������������������������ IPST-MicroBOX ��5
�00�>�;��B7�����>��� ��A�����&JKL�0�>������B7������������ !"#$%&'()*+,������������������EaE���$�&� ����'�����������$%'��2"�# "��2� 9�"� #2�
E�-�$�&� ����'(�+�'����
E�3�$�&� ����'� �(���"+���+�"����"�
E�E�$�&� ����'� �(����������(�)"����+�����
E�:�$�&� ����'� �(�����&'F���� bcd
E�>�$�&� ����'6���"� "�#�G �'
E�K�$�&� ����'��� $#������� �(����F'�'���dUVR]We5UT
E�Z�$�&� ����'� �(�����&'F�6%"������!�&*��bYd
E�a�$�&� ����'� �(������5�+'6%"�*�F+��2"�# "�����
E��<�$�&� ����'� ����&��'
�00�>�=�A������1M������C&DEFG����A4��5�������������������������������������������������������������K::����������fWQP�P
:�-��������VQ_Ugh�P
:�3��������VQ`]Ui�P
:�E��������XQeR\�P
:�:��������VQ`UT�P
����
6������������� ������������������������������������ IPST-MicroBOX
���������� ������������������������������������ IPST-MicroBOX ��7
� �!�"�#$��%��!���&'�����������������
�������()������������ IPST-MicroBOX
����������� ���������������������������������� !����������"#$�%������������&�����������������'�&�����(�)%)&������*�������*����(%)&�������(+(��(�,,*���(�)%)&���������������#"��-����������(�.*�/��/�0/+��������������"�#�����������/���������������-����&���1#�����������������+���(�)%)&������������������20����������$�/#���/���3+(���$�1/���&���1#����������������)��%/�#�0���"#%)&������#�0�2�,*�� ��#�+�����������������#��3���&��2�������/�����������#"��-�*,/,/��� �,���������)����$���������+4�2"#����'�&��������$�$�&)%�5�����1������������ � ������,���
��������������� �������0��$$,�����
return_type function_name(parameter1, parameter2, ...){
command_list 1;........................................command_list n;
}
������ function_name������ �� ������return_type��������� ������������������������������� !��"��� ������������#$
"���%�&�� �return(value)� '��&� ��������������()� ����� ������value����&� ����*�$ '+,�����'���*��-�return_type� '��+. ����*�������������$'���$�������-������ �&%�/��-�� ���������0�������������1234526�78953:����;%��/�� �return_type�$ ;� +� ��<'+,��void
parameter� ����&�*���������+� ��<����������� ��� ;�*�+�����%�����-������&� ����"/���-�� ������� � �$$ ��� =� ;�*� /�/���>�;�*�?0��� /��$0����'���?0��� �)#������-���"�� ��� �� ��������#�>@��/���� ������0�����A828B3432���-�����$$ +� ��<'+,��7CDE�/�'*��*�� 0��+� ��<�?0��
8������������� ������������������������������������ IPST-MicroBOX
command_list 1... command_list n������%�&�� ;�� >���������"��� �������()� '��$-=��%�&�� $ ;� +F�������*�'��� /����G��'&�
������������������ ���value������������������������������������������������� ���!"#��$%"&
&)���$����������������%"�%�6���78������+(��%)&����return�&)���$&��%�6���78�����+������������/�����������,����������0��$$,�����
return(data);
������ data������������������������*�������������--'���*��-�return_type�� �� ���������'�����#��$�%�"/�'���������������'���$�����������0��
��������������������� ���������������/��������������*,/20�&�/�14����"#������(�.*�/����$�/#���/��&��2�������/
*,/�������������main���"#����������#"��-�9�%�����(&����,������������/�3�7���������"�#1#��������������-���(�)��,%�1/#�0��7"�#&����/��$7��:�9#����,�9/#��)��,��/���(&���$��:,1/#�0���(20�9/#�9��),�$1#�7��:�9#�����������(�.*�/,/��� +(�����1/#�0����&��6��*���/7��:�9#�����������������
�0��$$����������������function_name(agument1, agument2,...)
������ function_name������ �� ���������;� �����+� ��<0*����/�����#���*
agument�����������������&� ����0+"/���-;�*�+��parameter�"��H '����"���� ��������#�>�������;��%���-"����"&������*���;�@��/���� ���������'����"�� ��'+,��--0����������';����?0��;� "&���� ��*'��;�
&)���$����������������%"�%�6���78����"�#�����������/��+(%"�%�6���78�+�����(���6�$�#����������������;4����:,1#�1/#�0����%"�%�##������&��2,0*,/+�&����return_type1#�����(�.���������� � �,���$�%����#+��%��+)��'�9/#���/9������)���$%�6���78������;4��9�����,������%������:,1/#�0��$$�,�����$�return_type�1#������������:��������#+�)��/��:,1/#6:,7�,�����:,+���:,1/#�0�*,/
���������� ������������������������������������ IPST-MicroBOX ��9
���������� � +� ��<�� ������
void tone(void){
beep_b(2); // '(���)������*" �++�,� �-��.�����/sleep(1.0); // ��������.��*���beep_b(2); // '(���)������*" �++�,� �-��.�����/
}
$��;�*��� '+,����+� ��<�� �������� tone����0���������������������� 0����������';���!��"��� ������'+,�����%�/��"/��%�'���&�II�H'&�� �=�$� /* ����*/��* '*���=�*������$����#�'������ �������%�'���'&�� ��#�����#
&����@�%���'����"�� ��!��"��� �������B8D6� 0���� ��#void main(){
................ // ��� ���!"#tone(); // ���-�!)&��'(���)�� tone............... // ��� ���!"#
}
��� � ��������&������" �0����-������&���������������1��� &���0�����������23456789�����:"�;7<
���������� ��+� ��<�� ������
void tone(unsigned int delay)
{
beep_b(2); // '(���)������*" �++�,� �-��.�����/sleep(delay); // '(���)�����������=��� &�=>��delay������0� &�=�beep_b(2); // '(���)������*" �++�,� �-��.�����/
}
$��;�*��� '+,����+� ��<�� ���������tone ���0������������������������� �������-���&� ����������';��������delay�()� !��"��� ������'+,����'������ �������%�'���&�II�H'&�� �=�$� /* ����*/��* '*��;����������� ������';���delay� "�/��*������*������ ���*'������ �������%�'���&�II�H'&�� �=�$� /* �����# /�)�
;�*��� '����"�� ��!��"��� �������main� 0���� ��#void main(void){
................ // ��� ���!"#tone(200); // ���-�!)&��'(���)���?6@A���/��������/����� �-��<BB�=*��*�*���............... // ��� ���!"#
}
��� � ��������&������" �0����-������&���������������1��� &���0�����������23456789�����:"�;7<
10������������� ������������������������������������ IPST-MicroBOX
���������� ��
+� ��<�� ������float sum(float x,float y)
{
float z; // ��/��C��������$0����������������0����z = x+y; // ��$0����������������0���� ���x���/�y������0=��������=*�����return(z); // ������������������ &�=>� ���z����������-�'(���)��"&�-��� ��� return
}
$��;�*��� '+,����+� ��<�� ���������sum����������������������������������� �����'+,��J9C84�� �������-�������������';���x��� �y�������� �������sum�$ ������������$�����-*����� /*�� �x��� �y�����*��%�&�� �return(z);�����'
&����@'����"�� ��!��"��� �������main� 0���� ��#void main(void)
{
float result; // ��/��C������� result
�������%���0��������������������� ��// '(���)�� sum
................ // ��� ���!"#result = sum(14.0,3.0); // ���-�!)&��'(���)�� sum 1"-���"����/�*��=�� x = 14
// ��/ y = 3// ���!&�result�=����������0�.D����������-�!)&��'(���)���sum
lcd(“result = %f “,result); // ������������result�=�� "����1=">� LCD................ // ��� ���!"#
}
��� � ��� E� ���&������" �0����-������/�&���*"������������ "�����/����������/ ���FG3HIJKLM36N� � &���0�����������23456789���/�������� "�����/����������/ ���� FG3HIJKLM36N����/�&����"���*�=��*=� ��������%=�%"&��=�->�!):"����� =����� O;PQM23456789� !�:���*�=�&��/�:�=���R�
���������� ������������������������������������ IPST-MicroBOX ��11
���������� ��
&��� �� ������'�����%��� "�>�'��/������������ '�����%��� �����;�# ���� ������'+,��power��� "/��������-���������';���K�;�*����;�*�������L���x��� ������';��;�*���& �����%��� �y
float power(float x,float y) // '(���)���power����=������0��/����� &�=>�)*"�float{
return(exp(y*log(x))); // ��0���R��x���/����������y�=�����, ��&�������������}
&����@'����"�� ��!��"��� �������B8D6� 0���� ��#
void main() // '(���)����� ��1�����={
lcd(“result = %f “,power(2.0,4.0)); // � "������������<S����1=">��TUGwhile(1);
}
$��;�*��� '+,����&��� �� ���������power�'��"���%��*H/����� '�����%��� "�>�����"��+�����MD6NOP��� 0�������� ������&�*���#��"/���;�"�;�*��� ��#0���%�'&�*������+� �Q�;�&��� $���� ���������"���%��*H�� �H�;<�&;������MD6NOP�����"/��()� 0�����
�� �������exp�1$��0�-�����B84RSR�� � --:�"��&%�/��-/����'��L���3����%��� "�>�13TKSU=:
�� �������log�1$��0�-�����B84RSR�� � --:�"��&%�/��-/�������)�L���3�� ;�*'��"�>
$���*������� �H�;<�&;�����*��
1=:� xyx y ln.ln =
1K:� xe x =ln
1V:� xyx y lnln =
�� ��#�� xyxy eexy ln.ln ==
�� �%���'����'+,��� ������"�����%��*H����������0��'+,�
( )( )xy logexp �()� ������������$��� yx�� ��#��������$���+�������#'��&�� �������������WXY�$ �&� ���*�����������������
()� �?��������� �KZ��;����*�� *� "����'����"���� ��������#�?�����+.����������';��� ���L���� ����%��� $ ;� +.�'+,����$%��*�$�� �--�float���# ������ ��#�"��+�����$) +.����'+,��KS[��� �ZS[�;���%���-
��� � ��� E� ���&������" �0����-������/�&���*"������������ "�����/����������/ ���FG3HIJKLM36N� � &���0�����������23456789���/�������� "�����/����������/ ���� FG3HIJKLM36N����/�&����"���*�=��*=� ��������%=�%"&��=�->�!):"����� =����� O;PQM23456789� !�:���*�=�&��/�:�=���R�
12������������� ������������������������������������ IPST-MicroBOX
���������� ��int result1 = 0; // ������ result2 ��$0��� &�=>��00�3@?int result2 = 0; // ������ result2 ��$0��� &�=>��00�3@?float result3 = 0.0; // ������ result3 ��$0��� &�=>��00�VJ6K?float result4 = 0.0; // ������ result4 ��$0��� &�=>��00�VJ6K?int sum(int a , int b)
{
return(a+b); // ������������������0�����/�����a���/�b}
float mul(float x , float y)
{
return(x*y); // �������������������>,���/���� x���/ y}
void main(void) // '(���)����� ��1�����={
result1 = sum(18,7); // !&�����������=�� 18+7=25result2 = sum(12,4) + sum(4,9); // !&�����������=�� (12+4)+(4+9)=29result3 = mul(10.0,50.0) + mul(4.0,5.0);
// !&�����������=��(10*50)+(4*5)=520result4 = mul(12.4,2.6) + (float)sum(8,7);
// !&�����������=�� (12.4*2.6)+(8*7)=47.24}
������ �����!"#$%&%'(�������������� �������������������������������������������� !��������� �������"#$���
���������!���%�$�& ���'����( ������)������ �����'�����&�����5���/����+(9����"�#*���*�$��������/&#,%�/#���$��<��1#������������"#����/�����(���9�#���������/��%����9�#*�
�����������<���,��������������/��$�#�-�����7�=��������%���)�&�/���'�*���*�$�����(+�,��3$*�/� � ��"�#9/#�����/���3�7�����(�.����9*��>� ?@ABCBCD@EF�1#��"�#*�$���*������&�/�*�/��#���/���� �7"�#6���*�$�����������*�/�����)����$�����������)���7�=�#�0������+�����+(�)��/60/7�=�&��2�������/��������������$��+<#�0����*���*�$���,������*,/� ?1���9#��������+(20���"�#��������(�����GHI�JCKL B���(�M !GHI��,�60/7�=�+(9/#��($<781#�1#�*�$�������������/��/��$��$�GHI�JCKL B�#���#,��4��F
���������� ������������������������������������ IPST-MicroBOX ��13
���������)������ ����
��&�/�*�$�����������+(%�/�-���$��&�/�*������������ ������'�*�����&�<�� NO9���9:�9�����9������ *���*�$���+(*���������������� ?������������ !F����P7(9�����������9��-���9/#���$��+<����*���*�$������($���4���/��'�*�����&�<�� NQ����
&��9:���9/#���&�/�*���*�$����"�#��RK!OS��CQ��,�������$��+<����������sum���( mul����%���'�9��#�����#���/���� +(�)*,/,�����
?TF���U,*�������+����0%)&����V WE���XEY�V WE��7"�#��U,��/9������
?ZF�7:�7�����������sum���( mul�������/9��1#�*�������,�����int sum(int a , int b){
return(a+b);}float mul(float x , float y){
return(x*y);}
?[F�+����0%)&����V WE�J�\E�G]NNN�����+�����+�,��3$*���*�/��78���9/#����,�9����"�#��'��RK!OS��CQNQ�,��������%����9�#*�60/7�=�&��2�������/���RK!OS��CQNQ����0��$$*���*�$���*,/��/�
������������������� ����
����+����60/7�=�*,/&�/�*���*�$�����(+�,��3$����$�/#���/��60/7�=�&��2�������/��������������$��+<#�0����*���*�$����,-�*,/��,�6���*���*�$�������,/������(�.*,��3�9��*�/��&������1#��������,�����
#include <library_filename>
��"##include “library_filename”
������ library_filename�����0���0�-��������%����+� ��<
����
#include <tone.h> �+� ��<"/����$���� ������!��"�0���0�-����������tone
14������������� ������������������������������������ IPST-MicroBOX
����(�.�,���/*,���9���#include��)��/��������0/+����$������������*�$�������)����(�.� � ��"�#�������/��������������#�0����*�$�������-���/��+(�)��/�������%�������(�)����"�#����*,/20�9/#�
9�#*���'�9��#������,&#$�������/��+�*�$���� RK!OS��CQ����*,/��(�)��&�/���(+�,��3$*�/��#���/�����/�
���������� ��
1=:�&��� �+�'$?�;�"/����� 43\4]9D^
1K:�������+������ "�/���;�� � 0���� 43\4]9D^S_#include <func_math.h>void main(void){
while(1){
lcd(“Return %f “,mul(7.3,12.0));}
}
1V:��%�/�����"/���-0�-����� J56_]B84RSR�$��'����`2Ca3_4���XC6JDb5284DC6�cA4DC6\����*'��0���d6_95E3�YD23_4C2D3\�/�� $����#��%�/�����'��� 0+�� 0���� J56_]B84RSR
1Z:��%������0�������&�� �e5D9E��+�'$?�;�'��"/�0��0�����������43\4]9D^SR3f
1g:���*���/���43\4]9D^SR3f
1h:�������������������WXY�$ �&� ���*���� ������������
����������������
! ����� ��1�����=%"&=������/��C��������-�!)&��'(���)��!%'��%�0����� VW@4XYK?Z[34� %"&� F!1�����=�/���-�!)&'(���)���mulN� ��������!�main� 1�����=�/=�������-�!)&��'(���)���mul� !&��������0=�� "������1=">��TUG������� "������������������>,���/�����D[\���0�.<[B
��� � ��� E� ���&������" �0����-������/�&���*"������������ "�����/����������/ ���FG3HIJKLM36N� � &���0�����������23456789���/�������� "�����/����������/ ���� FG3HIJKLM36N����/�&����"���*�=��*=� ��������%=�%"&��=�->�!):"����� =����� O;PQM23456789� !�:���*�=�&��/�:�=���R�
���������� ������������������������������������ IPST-MicroBOX ��15
��*����+,��,���-�.�������������.����/�0��1M !GHI������'��������� �%#�*7��#��*,/7�=��+��GHI^_ �,��������:,1#�1/#�0�
+(��'�*�9����)��,+��GHI^_ �;4��&��2&�<�*,/,�����
� �!"#��$%"�������� " �!"#��$%
_R82 '+,����������$%��*�';?������i�-�;�--���'��� /���������"� ��* ��j=Ki�@) �k=KU
56\Db63E�_R82 '+,����������$%��*�';?������i�-�;��--0�����'��� /���������"� ��* �[�@) �kKgg
D64 '+,����������$%��*�';?������=h�-�;��--���'��� /���������"���* �jVKlUhi�@) �kVKlUhU
56\Db63E�D64 '+,������$%��*�';?������=h�-�;��--0�����'��� /���������"���* [�@) �khggVg
9C6b '+,����������$%��*�';?������VK�-�;��--���'��� /���������"���* ���jKl=ZUlZiVlhZi�@) �kKl=ZUlZiVlhZU
56\Db63E�9C6b '+,����������$%��*�';?������VK�-�;��--0�����'��� /���������"���* ����[�@) �kZKmZmhUKmg
9C6b�9C6b '+,����������$%��*�';?������hZ�-�;��--���'��� /���������"���* �jmKKVVUK[VhigZUUgi[i�@) �k�mKKVVUK[VhigZUUgi[U
56\Db63E�9C6b�9C6b '+,����������$%��*�';?������hZ�-�;��--0�����'��� /���������"���* �[�@) �k=iZZhUZZ[UVU[mgg=h=h
J9C84��� �EC5^93 '+,���������������VK�-�;� "��������������$%��*�$�� ���'+,�'���<����
8228n\ ��Q�������/���Q��� ;�*�+����@��+� ��<�)#���������������'/������� ����'��&� /��*��*��$%�;����
ACD6432\ '+,�������������"���� � @) ��'��&� /��*��*��$%�
\425_4523\ '+,����$����Q�������������*���;�;�� �������0��
16������������� ������������������������������������ IPST-MicroBOX
��2��� �����,3����/�0��1�($$9����1�����/����������� ���,/������[��$$%"#
TN�9����1`�&:$���/�)��,%���/��$9�������"#��%)������������*,/����-*�
ZN�9����1`�&#�����0��$$���1���%"#�0bBBBBBBBB
�,�����a�%"#9����1�b���"#�T
[N�9����1`�&:$������0��$$���1���%"#�0xHHHHHHHH
�,�����c�%"#9����1�b^d���(�G^V���������� �&
'��L��& �i�-�;'����[^=[[=[[=[�'���-'�����-�=Zh�L��&�-�%��*H$�� 1=fKU:�k�1[fKh:�k�1[fKg:�k�1=fKZ:�k�1[fKV:�k�1[fKK:�k�1=fK=:�k�1[fK[:�T�=Zh=[
���������� �''��L��& �=h�-�;�'����[^====[=[[===[==[=�'���-'�����-�hKU[=�L��&�-�%��*H$�� 1=fK=g:�k�1=fK=Z:�k�1=fK=V:�k�1=fK=K:�k�1[fK==:�k�1=fK=[:�k�1[fKm:�k�1[fKi:
k�1=fKU:�k�1=fKh:�k�1=fKg:�k�1[fKZ:�k�1=fKV:�k�1=fKK:�k�1[fK=:�k�1=fK[:T�hKU[==[
&��2����$�%���9����1�����[�`�*,/,�����(� )�� (� )��*� (� )��
[ [f[[ [^[[[[= [f[= [^[[[=K [f[K [^[[=[V [f[V [^[[==Z [f[Z [^[=[[g [f[g [^[=[=h [f[h [^[==[U [f[U [^[===i [f[i [^=[[[m [f[m [^=[[==[ [f[N [^=[=[== [f[e [^=[===K [f[X [^==[[=V [f[Y [^==[==Z [f[o [^===[=g [f[p [^====
���������� ������������������������������������ IPST-MicroBOX ��17
���������� �+
'��L��&�-/��'����[fpp�'���-'�����-�Kgg�L��&�-�%��*H$�� 1=gf=h=:�k�1=gq=h[:��T�Kgg=[/�'���-0����-'��L��& �[fpp����[^========
���������� � ,
'��L��&�-/��'����[fV=�'���-'�����-�Zm�L��&�-�%��*H$�� 1Vf=h=:�k�1=f=h[:��T�Zm=[/�'���-0����-'��L��& �[fV=����[^[[======
��4������������.������(�.9���������������� �1#��M !GHI�+(���"#���$����(�.9�������
�� �����*���,����0��$$����(�.,�����type variable_name;
������ type����������������������;� ����%�/��
variable_name�����;�*�+����+� ��<
����
int a; // ��/��C������)����a����")*" &�=>�����00�3@?
long result; // ��/��C������)��� result ���")*" &�=>�����00�J6@]
float start; // ��/��C������)��� start ���")*" &�=>�����00�VJ6K?
int x,y; // ��/��C�������<������� x ��/ y )*" &�=>�����3@?
float p,q,r; // ��/��C�������\������� p�q ��/ r )*" &�=>��00�VJ6K?
�#�+����2/9/#�����(�.9�����7�/#���$���)��,%���:��9/��? ! C �W�\�WKEF��3&��2�)*,/�����
int x=100; // ��/��C������)��� x ���")*" &�=>�����00�3@?// ��/���"�����*�=�&��� 100
int x=15,y=78; // ��/��C������)��� x ��/ y ���")*" &�=>��00�3@?// ���"�����*�=�&!& x=15 ��/ y=78
long p=47L,q=31L; // ��/��C������)��� p ��/ q ���")*" &�=>��00�J6@] // ���"�����*�=�&!& p ��� 47 ��/ q ��� 31
18������������� ������������������������������������ IPST-MicroBOX
��5����.������+,��,���-���$���e���%��+)��'�9/#��������������:,1/#�0�1#�9��������*,/��(�.*�/��/��&��2�)
*,/,�����
�$����(type)variable
������ type����������������������;� ���variable���;�*�+����;� ���$ '+������+� ����� �����
���������� �
int x=100; // ��/��C�������x��00�3@?���/���"���!&������0�.BB
float y=43.67,z; //���/��C�������y���/�z��00�VJ6K?���/���"���!#�y�������0�S\[^D
z = y+(float)x ; // !&�z���$0�����0���/�����y���0�x����)*" &�=>� ���x�����00�3@?// _̀�����������0�y���/�z// �̀��&������)*" &�=>� ���a�!&����VJ6K?�! �� ���(float)x// "��������������%"&����z��/=����������0�.S\[^D
���������� � �
int a=50; //���/��C�������a��00�3@? ��/���"���!&������0�bB
long b=23L,c; //���/��C�������b���/�c��00�J6@]���/���"���!&�b�������0�<\
c = b*(long)a; // !&�4���$0������>,�/�����b���0�c// �����������)*" &�=>� ���a�����3@?�_`�����������0�b���/�c// �̀��&������)*" &�=>� ���a�!&����J6@]�! �� ���(long)a// "��������������%"&����c�������0�..bB
���������� � �
float p=50.736; //���/��C�������p��00�VJ6K?���/���"���!&������0�bB[D^\
int q=60,result; //���/��C�������q���/�result��00�3@?���/���"!&�q�������0�^B
result = q+(int)p; //�!&�result���$0�����0���/�����q���0�p//����)*" &�=>� ���p�����00�VJ6K?�_`�����������0�q���/�result//��̀��������&��=��������)*" &�=>� ���p�!&%�����3@? ! �� ��//�(int)p����!&���!=� ���p�����bB���������/!)&�c��/������$=//�"��������������%"&����result��/=����������0�..B
���������� ������������������������������������ IPST-MicroBOX ��19
��6����������+,�����.��. �7��8
��6������.�����+����� �!&%%&'(
9�������:,#(����� %"#� � ��<��1#�9������������:,1#�1/#�0����"#�������(���#,�,�&1#������%��+)�����9:,9�#���*�
��6���������� �������
�0���$$����(�.��/9�����#(����� T��:9:�)*,/,�����type name[size];
������ type�������� �����;�*�+� '���
name������ ;�*�+� '���
size������� ;�*'���%�/������� '�����$$ 0���%�/���?0��
���1/24�1/#�0�1#�&��:�9���,1#�#(����&��2�)*,/�,����)��,���,�������9)��������0��$$��'�
name[index]
������ index����������������#/�� -Q0+�� &�����;�*"�>�� '����()� �$'+,�;�*'���/����;�*�+�"�>�/������ �%�� ���$��� ()� ��# /���������*��$ ;� �����'+,�$%��*�';?�'�����#�
���������� � �
@��+� ��<'+,�char arr[4];
/���@) �;�*�+� '������arr�+� �-��*�&���������Z�;�*�1� *��'+,�;�*�+��Z�;�*�?0��:��;�'*�����$ �� � @) &�����$ "�������'+,�;�*-� -�*���%��� ;��;�"�� ��&�����;�*"���� ��#��822�&����@�$��$ &�����0���� ��#
arr[0]�'+,�&�����;�*����=��;�������������#'+,��r[s
arr[1]�'+,�&�����;�*����K��;�������������#'+,��r=s
arr[2]�'+,�&�����;�*����V��;�������������#'+,��rKs
arr[3]��'+,�&�����;�*����Z��;�������������#'+,��rVs
�����arr[0]�l�arr[1]�l�arr[2]��� �arr[3]�;�� �?'+,�;�*�+������_R82��������=�0-;����� ��#����+� ��<;�*�+��arr $) "��'�#�����# &�#��Z�0-;�
20������������� ������������������������������������ IPST-MicroBOX
���������� � �@��+� ��<'+,�
int time[10];
/���@) �;�*�+� '������time���&���������=[�;�*�&����@�$��$ 0���� ��#time[0]�'+,�&�����;�*����=��;�������������#'+,��r[stime[1]�'+,�&�����;�*����K��;�������������#'+,��r=stime[2]�'+,�&�����;�*����V��;�������������#'+,��rKstime[3]�'+,�&�����;�*����Z��;�������������#'+,��rVstime[4]�'+,�&�����;�*����g��;�������������#'+,��rZstime[5]�'+,�&�����;�*����h��;�������������#'+,��rgstime[6]�'+,�&�����;�*����U��;�������������#'+,��rhstime[7]�'+,�&�����;�*����i��;�������������#'+,��rUstime[8]�'+,�&�����;�*����m��;�������������#'+,��ristime[9]�'+,�&�����;�*����=[��;�������������#'+,��rms
������ time[0]SSStime[9]� '+,�;�*�+������ D64������K� 0-;�� ��� ��#����+� ��<;�*�+��time$) "��'�#����K[�0-;�
���������� � ����+� ��<;�*�+����� '���������-�%�/����������"/���-&������ "/�+� ��<'+,�
char dat[8] = {1,3,5,7,9,11,13,15} ;
$��;�*��� '+,����+� ��<;�*�+� '������dat ������-�%�/����������"/���-&������;�� ;�*�1�$$ '����*����;�� /��*���?0��:�����������0���
dat[0] = 1;
dat[1] = 3;
dat[2] = 5;
dat[3] = 7;
dat[4] = 9;
dat[5] = 11;
dat[6] = 13;
dat[7] = 15;
���'����"��&����� '��� /�� $����+� ��< '������ -�char i , j ;
i = 3;
j = dat[i]; // j = dat[i] ==> j = dat[3] ==> j = 7
/q��������� j = 7 */
���������� ������������������������������������ IPST-MicroBOX ��21
���������� � &���+� ��<;�*�+����� '���������-�%�/����������"/���-&������+� ��<'+,�
char dat[4] = “ abcd” ;
$��;�*��� '+,����+� ��<;�*�+� '������dat�������-�%�/����������"/���-&������;�� ;�*�1�$'����*����;�� '(��?0��:�����������0���
dat[0] = ‘a’;
dat[1] = ‘b’;
dat[2] = ‘c’;
dat[3] = ‘d’;
���'����"���/�� $��+� ��< '������ -�char i , j ;
i = 3;
j = dat[i]; // j = dat[i] ==> j = dat[3] ==> j = ‘d’
/*����������j = ‘d’ */
"����+� ��<;�*�+����� '���&����@+� ��<"�� ��'+,��--���-��/�������/��%�0+'+,�;�*�+��A828B3432� '����-���&� �������� �� �������?0��
���������� � '���+� ��<;�*�+����� '�������������--�J9C84�������-�%�/����������"/���-&�������+� ��<'+,�
float cal[5] = {0.85, 6.23, 4.7, 10.8, 2.14} ;
�� ��#�cal[0] = 0.85;
cal[1] = 6.23;
cal[2] = 4.7;
cal[3] = 10.8;
cal[4] = 2.14;
���������� � +���+� ��<;�*�+� '�������������--� 9C6b�������-�%�/����������"/���-&������+� ��<'+,�
long store[3] = {20L, 500L, 49L, 1055L} ;
�� ��#�store[0] = 20L;
store[1] = 500L;
store[2] = 49L;
store[3] = 1055L;
�������� &�=>�)*"� J6@]� �=��d�/0:!&)�"��%"&1"-!)&���e�� fJg� ���� fTg� ����&�-����� &�=>�"&�-�������-�� �=��d!)&�������/��-����=�������.�=*�*� %"&"&�-
22������������� ������������������������������������ IPST-MicroBOX
��6���������� ��������0���$$����(�.��/9�����#(����� Z��:9:�)*,/,�����
type name[x][y];
������ type�������� �����;�*�+� '���name������ ;�*�+� '���x������� ;�*'���%�/�������@*� '���y������� ;�*'���%�/������/���� '���
����int a[2][5];
'+,����+� ��<"/��8�'+,�;�*�+� '����K���;������������--�D64���$%��*�&������=[�;�*�0�����a[0][0], a[0][1], a[0][2], a[0][3], a[0][4] ,
a[1][0], a[1][1], a[1][2], a[1][3], a[1][4]
���)��,%�1/#�0���:��9/��3&��2�)*,/� ����int menu[3][4] ={{1,3,4,9} , {2,8,0,5}};
'+,����+� ��<"/��B365�'+,�;�*�+� '����K���;������������--�D64���$%��*�&�������# /��=K�;�*��� �%�/����������'����;����� ��#�
menu[0][0] = 1 menu[0][1] = 3 menu[0][2] = 4 menu[0][3] = 9
menu[1][0] = 2 menu[1][1] = 8 menu[1][2] = 0 menu[1][3] = 5
menu[2][0] = 0 menu[2][1] = 0 menu[2][2] = 0 menu[2][3] = 0
��6������.��9������ �!:;#<=>%(9�����7#��9#���%"#�9���������)��/�����3$%��#,�,�&1#�9���������)���������"#�#,�,�&
9)������,-����0��$$����(�.��/��,�����type * name;
������ type������������� ;�*�+�����';��
name�����;�*�+�����';�����"��+� ��<����
char *ptr; ��������/��C!&�ptr ����������;63@?A5H����!)&)�� &�=>��00�4ZK5int *a; ��������/��C!&�a�����������;63@?A5H����!)&)�� &�=>��00�3@?float *storage_num;���/��C!&�storage_num�����������;63@?A5H����!)&)�� &�=>�
�00�VJ6K?long *number;���������/��C!&�number�����������;63@?A5H����!)&)�� &�=>��00�J6@]
���������� ������������������������������������ IPST-MicroBOX ��23
��6���������,��?@��A�.B�7�.�+�+�),�����.�����1/24�9)������#,�,�&1#�9������,-,/��7#����9#��� � &��2#/�#:�9)�����,/��
�%�"�#�����fgh��)��/9������ ���(��"�#9/#�����/9�����7#����9#����(�)��$1/#�0�����)������#�0�e�1e(�����)*,/�,����&��%�"�#�����fih��)��/9�����7#����9#������ ����
int *ptr; //���������/��C��������-�������ptr���$0�����"�"� �00�3@?int x; // ��������/��C������)����x�)*" &�=>��00�3@?ptr = &x; //����"!&�ptr���$0�����"�"� �x*ptr = 100; //����"����.BB�!&��0��"�"� ����ptr�)���->�lcd(“%d”,x); //��" �0���-���� ���x�=�� "������1=">��TUG��/=��������.BB
���������� ��,
��&-�+�����;�*��� ;�0+��##include <ipst.h> //����%�0���������� �0 :��������23456789void main() //�1�����=��� ��h�e��U{
long X; // ��������/��C������)����9�)*" &�=>��00�J6@]long *Xptr; //���������/��C��������-�����)����9I?5� ����0��$0�����"�"� �00�J6@]X=50L; //����"����9�������0�bB�F���)*" &�=>��J6@]��&��! ��T���=���"&�-NXptr=&X; //����"!&�9I?5���$0�����"�"� �9lcd(“*Xptr = %L #c “,*Xptr);
//����������� "�01=">��TUG�������� &�=>� ���X 1tTg[W://� ��/ �������-�� &����=���� "� &����=�����d�"%�
sleep(2000); //� �������� "�����������X=100L; //�1�"!&����9�i�.BBTlcd(“*Xptr = %L #c “,*Xptr);
//������� ��� "�01=">��TUG�������� &�=>� ���9�������F9i.BBTN//� ��/ �������-�� &����=���� "� &����=�����d�"%�
sleep(2000); // �������� "�����������*Xptr=200L; //�1�"!&����9�i�<BBT�1"-1�"�����������-������lcd(“X =%L #c “,X); //�� "���� :"�&�- ������9���/����-��1=">��TUG����� "�while(1); //��0��1�����=
}
��� � ���E����&������" �0����-������/�&���*"������������ "�����/����������/ ����FG3HIJKLM36N�� &���0�����������23456789���/�������� "�����/����������/ ����FG3HIJKLM36N����/�&����"���*�=��*=� ��������%=�%"&��=�->�!):"����� =����� O;PQM23456789� !�:���*�=�&��/�:�=���R�
24������������� ������������������������������������ IPST-MicroBOX
��6������.��. CD��)����� !E=%FG=F%>(
9�������$$�%��&�/���'�����e(1#��������<��1#�9����������%��&#,%�/#���"#&��7��8����������/#�0����,��0��,������� � �,������:,1/#�0�1#�9�������������*��+)��'�9/#���'���:,�,�������;4���9�9��+�9������$$#(����� �������e(������(�.9�����,�����
struct name
{
type_1 variab_name_1;
type_2 variab_name_2;
..........................
type_n variab_name_n;
};
������ name ����� ;�*�+���� &��� ����%����+� ��<type_1....... type_n �������������� ;�*�+�variab_name_1........ variab_name_n�������� ;�*�+����
&�����#/�24�&��:���#�1#�9������%��&�/�����+(20�%���,/���%�"�#����� N���/�9�,/���"�#&��:���#�
9��#�������(�.9������%��&�/����������struct a //���������/��C)����������001��� �&���)����a�F����&�00N{
int i; //������� =�)*������� ���a�)����i =�)*" &�=>�����3@?int j; // ������ =�)*������� �� ���a�)����j�=�)*" &�=>�����3@?
};
struct a dat //�������d��-���e,/!&�dat����������1��� �&���=����0�a
��"##++(��(�.*,/#���0��$$��4���,�����struct a
{int i;int j;
uE84G //�������d��-���e,/!&�dat����������1��� �&���=����0�a
,������2/9/#���#/�24�&��:��i���(�j�1#� dat��)*,/,�����dat.i = 36; //����������"!& =�)*��3�!�jK?�=��������\^dat.j = 5; // ���������"!& =�)*��k�!�jK?�=��������b
���������� ������������������������������������ IPST-MicroBOX ��25
��"#2/9/#�����(�.9������%��&�/�7�/#������)��,%���:��9/��3&��2�)*,/�,�����struct a //���������/��C)����������001��� �&���)����K�F����&�00N{
int i;
int j;
}dat = {36,5};
//�������d��-���e,/!&�dat����������1��� �&���=����0�a//���&�=��0���"���!&��0 =�)*� ���dat�"&�-//� =�)*������� ���dat�F����iN�����\^���/ =�)*������� ���jK?�F����jN�����b//��=����0 dat.i = 36;���/�dat.ji�bl
���������� �� � ��&-&��� ;�*�+��--��� &��� �� ��#
#include <ipst.h> // ���%�0���������� �0 :0���"�O;PQstruct time // ��������/��C)����������001��� �&��)��� time F����&�00N{
int hour; // ������ =�)*�)��� hour )*" �� &�=>�����3@?int min; // ������ =�)*�)��� min )*" �� &�=>�����3@?int sec; // ������ =�)*�)��� sec )*" �� &�=>�����3@?
};struct time mcu_time;
// d��-��"���e,/������1��� �&�� time !&��0���������)��� mcu_time// "���� mcu_time ������������=� =�)*� 3 �������hour,min,sec
void main(void){
mcu_time.hour=16; // ���" &�=>�!& =�)*�-��- hour ��������1��� �&��)��� mcu_timemcu_time.min=36; // ���"��� &�=>�!& =�)*�-��- min ��������1��� �&��)��� mcu_timemcu_time.sec=12; // ���"��� &�=>�!& =�)*�-��- sec � ;�*�+���� &��� ����mcu_timelcd(“Time: %d:%d:%d “, mcu_time.hour, mcu_time.min, mcu_time.sec);
// �" �0���-����=�� "������&��� LCD
while(1); // �0��1�����=}
����������1=">��TUG����������������
��� � ���E����&������" �0����-������/�&���*"������������ "�����/����������/ ����FG3HIJKLM36N�� &���0�����������23456789���/�������� "�����/����������/ ����FG3HIJKLM36N����/�&����"���*�=��*=� ��������%=�%"&��=�->�!):"����� =����� O;PQM23456789� !�:���*�=�&��/�:�=���R�
26������������� ������������������������������������ IPST-MicroBOX
�#�+����9������%��&�/����2���#,����e(��/��$7#��9#��*,/,/��� �;4��7#��9#���$$9������%��&�/�����+��������2���#,����e(��/��&��2�)*�����#,�,�&1#�9������%��&�/����20�2���#,������e(�,���������"#�#����������e(1/#�0��,��������,����1/24��#,�,�&1#�&��:�1#�9������%��&�/��,-��3+(���#��#���9#���^j���'�9����"�#����������
struct a //���������/��C)����������001��� �&���)����K�F����&�00N{
int i;int j;
};
struct a *ptr; //�d��-��"���e,/������1��� �&���8�!&��0��������-������ptr//�"�����0����� �=��d����-������ptr� %�)��������1��� �&�����//�%"&��0���d��-��"���e,/=�����a�%"&
���������� �����&-&��� ;�*�+��--��� &��� �� ��#
#include <ipst.h> // ���%�0���������� �0 :0���" IPSTstruct team // ��������/��C)����������001��� �&���)��� team{
long l1; // ������)��� l1 �����������'+,� longlong l2; // ������)��� l2 �����������'+,� longint i; // ������)��� i �����������'+,� int
};
struct team team_a , *pteam; // d��-��"���e,/������1��� �&���team// !&��0������!=����)����team_a���/��-����� pteam
void main(void)
{
pteam = &team_a; // ���"!&��-����� pteam )����"�"� ������ team_apteam->l1 = 20L; // ���"��� l1 �������� team_a !)& pteam ������)����"�"� pteam->l2 = 142L; // ���"��� l2 �������� team_a !)& pteam ������)����"�"� pteam->i = 78; // ���"��� i �������� team_a !)& pteam ������)����"�"� lcd(“Team: %L:%L:%d “, team_a.l1,team_a.l2,team_a.i);
// �" �0���-����=�� "������&����TUG while(1); // �0��1�����=}
����������1=">��TUG���� ����������������
���������� ������������������������������������ IPST-MicroBOX ��27
� �!�"#�$%���&������������������
'()*+,����-.��/�����������
�!������0%����������� IPST-MicroBOX
����������� ����������������������������������� !������ ������"��#$%& '(���)*���"�+!*�� �,�)�-./�0���(!�/����!�1,�)23.24��(!�5/�4!�1��647�897�.!*����� !����:�������������� !�!��!����!�1�';<=>?@;>:�+!*�� ��������6*5�.�A��4B6���C6D��( !�����������,*(E��F���1� '�>�@GH=@�I� ;<=>?@;>:J� ������������.�(�����/��K1�47����'�=L?@�;��M�L;N�I�;<=>?@�;�:�47�����������,*����'O�@P�Q=�;<=>?@�;�:
���������� ������� ���������R��B�5�.��*���
�������� ���� � ������� ����� ����� ������� ����������������������������� ������� !�"#$%�&��%#�'!����� ����(!��'�&��%#�'!��) ������"#$%�&��*!��+�!�*�'"�� ,��) ����(�'�&��*!��+�!�*�'"�� ,�) �����(-�.�*!��+�!�*�'"�� ,� ) ������(-�.�*!��+�!�*�'"�� ,��) ������(-�.�*!��+�!�*�'"�� ,���������
28������������� ������������������������������������ IPST-MicroBOX
��������������������������
��� ���������int a = 12;
a = a + 3;
/��+�01,���2�)�34���*5�'�%,������ 6-%�2� &!��78%�39����-�:+�';�-�2�����+��<���-�%5�/��+�01*&�=(-,��34���>�=�-*&��2
��� ���������int a = 12;
a = a - 3;
/��+�01,���2�)�?���*5�'�%,������ 6-%�2� &!��78%�39����-�:+�';�-�2���(-�.�<���-�%5�/��+�01*&�=(-,��?���>�=�-*&��2
�������������� �����!����,��*�!*�����(������6*�����*,�)
ST��������� U� ��V�������W�(69������W�,�)��4*���XT���������Y� ��V�������W�(6�F�,�)��4 !9�����
��� ���������int x , y , z;
x = 10;
y = x/3;
z = x%3;
/��+�01,���@�)�?���A�B�)�3���*5�'�%,�
y = x/3;����y = 10/3���@�)�<��C5�%�%�+$'*&�����'6+��z = x%3;���z = 10%3���B�)�3�����*&����,�C���������
����"����# �$�%���������������%������������!86*,�)�-.����!K��8��,�*���*���
��� ���������int y = 5;
y++;
/��+�01,���@�)�D���*5�'�%,������ 6-%�@� &!��78%�4���6!� �:+�';�-�@�����+��3���-�%5�/��+�01*&�=(-,��D���>�=�-*&��@(+'%+$%5�:+�'� y++;��;�-/��+�01�� ,�%�+���y = y + 1;
���������� ������������������������������������ IPST-MicroBOX ��29
��� ���������int y = 5;
y - -;
/��+�01,���@�)�E
���*5�'�%,������ 6-%�@� &!��78%�4�6!� �:+�';�-�@���(-�.�3���-�%5�/��+�01*&�=(-,��E���>�=�-*&���@(+'%+$%5�:+�'� y - -; ;�-/��+�01�� ,�%�+� y = y - 1;
����&����# �$�%�����'���������%������'!K��8�,�8��(�8*5�.�6
y +=a; ��.244�/K1��� !���� y = y + a;
y -=a; ��.244�/K1��� !���� y = y - a;
��� ���������int x = 100;
x += 10;
/��+�01,��F�)�33G
����(����)��%����*'�+�������%���� '����������%����!'!K��8�,�8��(�8*5�.�6
y *=a; ��.244�/K1��� !����������y = y * a;y /=a; ��.244�/K1��� !����������y = y/a;y %=a; ��.244�/K1��� !��������� y = y%a;
��� ���������int x, y, z;
x = y = z = 120;
x *= 4;
y /= 4;
z %= 4;
/��+�01,��F�)�EHG�I�@�)�<G���A�B�)�G
30������������� ������������������������������������ IPST-MicroBOX
���������� ������,���$��$#��-������������7,����4B6�����244�/K19������9�!��* )!�5+97��(6��V��ZS[�R.�* )!�5+������V�9��*
'@>\=:��47��V��Z][��� )!�* )!�5+�,W9'^?LQ=:�����R��B�5�.��*���
��� !"#"$% ����
)) �*!��+�
J) = !�*!��+�
K ����!�
L %-�.��!�
K) ����!���,��*!��+�
L) %-�.��!���,��*!��+�
J = !;M!��NOP�
QQ ��A��RNS�
TT ��,���OU�
��� ��������&
V-��5��%(;�-2�)�3GW�)�EX�)�GFRG
�������� � ���������� ���������������������� �� ��!�������� " ���������� ��#$��%&'������������� �� ��(�������� )" ���������� ���������������������� �� ��!�����*�(+,(�)�!(��������� �-)�� ���������� ���������������������� �� ��!�������� �-)�" ���������� ������%&'������������� �� ��(
���������� ������������������������������������ IPST-MicroBOX ��31
��������./,��0�+�11�+�22��3��4����4�3��54���6�7�89:���#-�97����0�;<=>?����R��B�5�.��*���
'((�)*+$%,� $�-'((�)*+ '((�)*+���.�/
J� Y2�Z[ \]�[�3�J� \]�[ Y2�Z[�G�
:�̂7�!�������� ���.��.�*#/�0123�456��*�01��������� #7�8���1�9�������
:���#-�97����3��4����4�97�3��54����3��54���,�4�11;@<A?���B�5�.��*���'((�)*+$%,� $�-'((�)*+ '((�)*+���.�/
Y2�Z[�QQ�Y2�Z[ Y2�Z[�G�_2�Z[�QQ�\]�[ Y2�Z[�G�\]�[�QQ�Y2�Z[ Y2�Z[�G�\]�[�QQ�\]�[ \]�[�3�
:�7̂�!�������� ���.���,4:��*�01��������� �� ��%&'��;�.8�2<08�2;�=��;���#�>��?��� ��%&'�
:���#-�97����3��4����4�97�3��54����3��54���,�4�22;=B?���B�5�.��*���'((�)*+$%,� $�-'((�)*+ '((�)*+���.�/
_2�Z[�TT�Y2�Z[ Y2�Z[�G�_2�Z[�TT� \]�[ \]�[�3�P]�[�TT� Y2�Z[ \]�[�3�P]�[� TT� \]�[ \]�[�3�
:�7̂�!�������� ���.���5@��*�01��������� �� �������;�.8�2<08�2;�=��;���#�>��?��� ������
��� ��������0
V-��5��%(;�-2�)�3GW�)�EX�)�GFRG�������� � ���������� ���������������������� �� ��!�������� " ���������� ��#$��%&'������������� �� ��(�������� )" ���������� ���������������������� �� ��!�����*�(+,(�)�!(��������� �-)�� ���������� ���������������������� �� ��!�������� �-)�" ���������� ��#$��%&'������������� �� ��(
32������������� ������������������������������������ IPST-MicroBOX
��AV-��78%�������� -��� ���������� ��#$��%&'������������� �� ��(�������� -�"� ���������� ���������������������� �� ��!�������� -�)"������������ ��#$��%&'������������� �� ��(�������� -��-)�������������� ��#$��%&'������������� �� ��(�������� -��-)�"������������ ���������������������� �� ��!
��AV-��78%�������� -����AA��)"������������ �� �� %&'��(��������� ���-)����AA��)"������������ �� �������!��������� ���-)����AA�-��-)�������������� �� ��%&'��(�
��AV-��78%�������� -���� BB� �)"�� ���������� �� �� �����!��������� ���-)����BB��)"������������ �� �������!��������� ���-)����BB�-��-)�������������� �� �������!��������� �-�)"��BB�-��-)�������������� �� ��%&'��(�
��"��������� ������ ��;CDEFDGH�=IHJKEDLM?����7,����4B6������V�����7,�,�)�+.R_*���7������+!*+.!�34���8,�)(6+!*��647�����V�
5�.�(6� ZS[��� !� Z][� �,6�����`_)*����7,����4B6�������R��B�5�.��*���
�������� ����
` ��+�!�"�'��6"-� ��Q �����%(1�����6T ������1�����6a �����>���b&c����1�����6LL ��,��%��6=7*�'b-�.KK ��,��%��6=7*�'"��LL) ��,��%��6=7*�'b-�.��-�;�-�*!��+�KK) ��,��%��6=7*�'"����-�;�-�*!��+�Q) ��%(1��-�;�-�*!��+�T) ���1��-�;�-�*!��+�a) ��>���b&c����1��-�;�-�*!��+�
���������� ������������������������������������ IPST-MicroBOX ��33
:���#-�97����N���B�5�.��*���
$%$%,� '((�)*+���.�/
`�G 3
`�3 G
:�7̂�!�������� ���.��.�*#/�0123�C��*�01��������� �������.#7�8���1�9�������
:���#-�97����1����� ��%7� ����B�5�.��*���$%$%,� '((�)*+���.�/
G�Q�G GG�Q3 G3�Q�G G3�Q�3 3:�7̂�!�������� ���.���A�DEEE�88��E�8��*�01������ �� ��F(G�;�.8�2<08�2;�=��;���#�>��?��� ��F(G
:���#-�97����2����� ��%7� ��/!��B�5�.��*���$%$%,� '((�)*+���.�/
G�T�G GG�T�3 33�T�G 33�T�3 3
:�7̂�!�������� ���.���B�DEEE�88��E�8��*�01������ �� ��F!G�;�.8�2<08�2;�=��;���#�>��?��� ��!
:���#-�97����O����� ��%7� ����B�5�.��*���$%$%,� '((�)*+���.�/G�a�G GG�a3 33�a�G 33�a�3 G
:�̂7�!�������� ���.���H�DEEE�88��E�8��*�01��������� �� ��F(G�;�.#�>��?�97����;9���.��
34������������� ������������������������������������ IPST-MicroBOX
��� ���������1int x,y,result1,result2,result3,result4;
x = 0x9C;
y = 0x46;
C'��/��+�01"�'�3��result1 = x&y;�9��result2 = x|y;�<��result3 = x^y;�E��result4 = ~x;
#*��#�
�%,��'C���78%�����A*5������66!���6�C#'���7�'!�C����"d�%:�����78%��"d�%:�'�b#�'�>,�F�)�GF?e���GGGGGGGG3GG333GG��6+��7��fg\� &"%�(�78%�3D���6�@�)�GFED���GGGGGGGGG3GGG33G��6+��7��fg\� &"%�(�78%�3D���6�
�3�� ][Z��\3�)� �GGGGGGGG3GG333GG��Q� �GGGGGGGGG3GGG33G�GGGGGGGG3GG333GG
RNSGGGGGGGGG3GGG33G1111111111111�11 ��12111���%3��121�
�9�� ][Z��\9�)� �GGGGGGGG3GG333GG�� T� �GGGGGGGGG3GGG33G�GGGGGGGG3GG333GG
OUGGGGGGGGG3GGG33G11111111��1����1 ��121145��%3��1245
�<�� ][Z��\<�)� �GGGGGGGG3GG333GG��a� �GGGGGGGGG3GGG33G�GGGGGGGG3GG333GG
hOUGGGGGGGGG3GGG33G11111111��1��1�1 ��121146��%3��1246
�E�� ][Z��\E�)�`�GGGGGGGG3GG333GG� .��EE�8�1�9?�#I.E�8��������1��111�� �� 1277��
���������� ������������������������������������ IPST-MicroBOX ��35
��"�������6�7�� �9,7$)������4 )!����97�.!*�!�9����(���*���4 )!��.�8�6��.�����4 )!���)(���*� �-6�
dat = dat<<4;
;9�3J=��<;1������E�8�1�9?�����dat���#��K1�3�L����>�������� #7��01�.$E�21#7��dat��;9����0�9�*<;1������ �;9���� �dat<<4;
�� !dat = dat>>1;
;9�3J=�<;1������E�8�1�9?�����dat���#���2��!����>�������� #7��01�.$E�21#7��dat��;9����0�9�*<;1������ �;9����dat>>1;
��� ����������int dat, x1, x2;
dat = 0x93;
C'��/��+�01"�'
�3� x1 = dat<<1;
�9��x2 = dat<<2;
#*��#�
a?@�b�]cdA���]]]]]]]]S]]S]]SS�'���������@���+����V��Se����:dat 0000000010010011
X1 0000000100100110
X2 0000001001001100
�3��x1�,����'((�)*+8$$%!(3��"-#�9/��:(�dat�.;��</ ����%�=��CA=(-+!�)�(+(!MN 8��.�E���O��P�E��� MQL
�9��x2�,����'((�)*+8$$%!(3��"-#�9/��:(�x1�.;��</ ����%�=���%3�!;>"$%!(3��"-#�9/��:(�dat�.;��</ ����%�=��CA=(-
+M�)�(+(MLR 8��.�E���O��P�E��� STT
36������������� ������������������������������������ IPST-MicroBOX
��� ����������int a , b , c;
a = 0x7A;
b = 0x16;
c = 0xFD;
C'��/��+�01"�'�3��a &= 0x3C;�9��b |= 0x51;�<��c ^= 0xD0;
#*��#�
�3��C�����a &= 0x3C���>,����a = a & 0x3C��� �.�� �!��%5�!�"�'�2���,��GFiR��=7��%(1�+�GF<e���-�/��+�01*&�=(-%5�=7��>�*&��2��&��+$'�%#�'
�*&.�=(-�78% a = (0000000001111010) & (0000000000111100)
GGGGGGGGG3333G3GRNS
GGGGGGGGGG3333GG1111111111���111 ���1211�&��%3��12�&
�9��C�����b |= 0x51���>,����b = b |= 0x51��� �.�� �!��%5�!�"�'�W��,��GF3D��=7���1�+�GF43���-�/��+�01*&�=(-%5�=7��>�*&��W��&��+$'�%#�'
�*&.�=(-�78% b = (0000000000010110) |= (0000000001010001)
GGGGGGGGGGG3G33GOU
GGGGGGGGG3G3GGG3111111111�1�1��� ���1211����%3��12��
�<��C�� c ̂ = 0xD0j���>,����c = c ̂ = 0xD0��� �.�� �!��%5�!�"�'�X��,��GF_S��=7��>���b&c���1�+��GFSG���-�/��+�01*&�=(-%5�=7��>�*&��X��&��+$'�%#�'
�*&.�=(-�78% c = (0000000011111101) ^= (0000000011010000)
GGGGGGGG333333G3hOU
GGGGGGGG33G3GGGG1111111111�1��1� ���1211�4��%3��12�4
���������� ������������������������������������ IPST-MicroBOX ��37
� �!�"
������������ ������������������������������������������ ���!��� "����� � #$%&'( )� *+,����� ����-��!��������*./��*�/����01����22�3+� *.4�2���*��������!� �.5�� ������5�3�6� �26� *�2 7� � 6�5������������ �����8���+ ��2!���5���������!!� ���2!*�4�239������������1+�:;���������������������<
=>���������if
?>�������� if-else
@>���������switch
A>�������� for
B>���������while
C>�������� do-while
�����������
*+,�������������!�25� *+,���������������� � ���2!*�4�239� # DEFGHGDE)����� *+,� /�� 42*�-�
1+�!!��42if(Condition)
{
block
}
block������������ �������������������������������{ }� �����!��"#"��� ���"�$%�������� �����&'
������!��#��$�%���&���������� �!�����
�$'����������� IPST-MicroBOX
38������������� ������������������������������������ IPST-MicroBOX
0��6+ �� ����� � ���2!.!���� DEFGHGDE�� 42*�4�239�<*+,� /���-��*9��3+�����������5��IJDKL����0��*+,*�-���-��*�53+�������������251���23+�52��IJDKL�����0�����������IJDKL���*.�5��������*��5�� * �2����3����2����*� 4�2����5+M������5�-3��� � *��
if(i==4)
{ if(i==4)
y = 46; � y = 46;
}
���������� ��
unsigned char i , j ; // ������������ ���������������������������� !"##$i = 5; // �%���&�����'(�� �)*����� ij = 3; // �%���&�����'(�� �)*����� jif(i>=5) // ��+,*���-(*�.)�/ �" i ���������-*�0������#"�� 0%��%�,�(����12*�{
j = i +10; // �%�,�(�0�(�3i = 7; // �%�,�(�0�(�"
}
/*—————————result——————————————*/
j = 15
i = 7
/*——————————————————————————*/
!��(����������")*#"+���,-.����!����$($�! ����%���&/"if" ",����" ��%���&/��0�!$1�" �,$�2 i = 53&'����������0�����$1��('�4""!������$�$2������ ������"#"5�2"��� ������"6"����������(�������
�"��� ������"#"7 8"9":";#<"�"8"9"=;#<"�"8"9"#=
�"��� ������"6"7 :"9">"3��������?�($�4
���������� ������������������������������������ IPST-MicroBOX ��39
���������� ��
unsigned char i , j ; //"������������� ���������������������������� !"##$i = j = 2; //"�%���&�����'(�� �)*������4�1��5��� ������0���"�0�6��7�if(i==5) //"��+,*���-(*�.)��/ ��8��0������#��� 0%��%�,�(����12*�@
j = i +1; //"�%�,�(�0�(�3i = 14; //"�%�,�(�0�(�"
}
if(j==2) //"��+,*���-(*�.)��/ ��8��0������"��� 0%��%�,�(����12*�j = j+1; //"�%�,�(�0�(�9/*—————————result——————————————*/
j = 3
i = 2
/*——————————————————————————*/
!��(����������")*6"!2�������+���,-.����!����$($�! ����%���&/"if(i==5)",������������������������"����A�!��&������$5�2������ ������"#"5�2"6"����������5$�""(������%��+�����,���� ���"if(j==2)"!������$($�! ����%���&/�����������$�A�""5�2,����"��%���&/���������0�!$1�"�����'('������$5�2������ ������")"3��%���!�������� ���"if(j==2)"����� ���(��!����$($�! ����%���&/�,������ �������"&��!����0�('���'�'����$%�������"{ }��&'4
�"��� ������")7 8"9"8";#"�"8"9"6;"#"�"8"9")
:"9"6"3�,$�2&��,���� ����"��'�������5������":4
���!����A���(��5����"BCDE:F:CD"���!��!2��'��0��$2?����$��������'����$%�����������G1(H� ($.5�2($$�5�'�"��� ���$���'����$($�! ����������"�$%�"���/��(��5�$�I"����������0���%���&/&''��"����A
#J"�'�������(����/"�$%�(��5�$��%���&/������������&���������"<"��%���&/�������!2��0�!$1�"����$�$2������ �������������/����� ���":K"��A�I
6J"�'�������(����/"�$%�(��5�$��%���&/�������������������"<"��%���&/�������!2��0����!"&������$�$2������ �������������/����� ���":K"��A�I
40������������� ������������������������������������ IPST-MicroBOX
���������� �
unsigned char a , b; // �������������1��:��� ���������������������������� �/;��"##a = 10; // �%���&�����'(�� ��� a = 10b = 20; // �%���&�����'(�� ��� a = 20if(a>5 && b<=60) // / � a > 5 1� b <= 60 +����0%��%�,�(�0�(�3�1��"���12*�{
a = 100; // �%�,�(�0�(�3b = 200; // �%�,�(�0�(�"
}
if(b>100 || b==80) // / � b > 100 1� b = 80 +�0%��%�,�(����12*�{ // +�0%��%�,�(�0�(�9�1��<
a = a -10; // �%�,�(�0�(�9b = b -20; // �%�,�(�0�(�<
}
/*—————————result———————————*/
a = 90
b = 180
/*——————————————————————————*/
!��(����������")*)"��$($�! ����%���&/"if(a>5 && b<=60)",����"��%���&/��0�!$1�"�,$�2"L"9"#<�������"="!$1�"5�2"M"9"6<"�'������"N<"!$1�"����A�"!������$5�2���"��� ������"#"5�2"��� ������"6"����������5$�
�"��� ������"# a = 100;
�"��� ������"6 b = 200;
��%���&/(����"if(b>100 || b==80) ����$($�! ����%���&/�����������$�A�",����"��%���&/���������0�!$1�"�,$�2"M"9"6<<"�������"#<<"!$1�"3��0�!$1��,����$2?����������'+���,-.��0�!$1�5�'�4"����A�"!������$�/'����$2������ ������")"5�2"O"����������
�"��� ������") a = a -10P"�"L"9"#<<"*#<"�"L"9"Q<
�"��� ������"O b = b -20P"�"M"9"6<<"*6<"�"M"9"#R<
���������� ������������������������������������ IPST-MicroBOX ��41
����������� �����
*+,����������� ���2!*�4�239� #KDEFGHGDE)����� *+,� /�� 42*�-��:;�������� *�42�� ����25�����25����;��
1+�!!��42if(Condition)
{
block1 // 0%���,����6/ ���-(*�.)����=+�'�=
}
else
{
block2 // 0%���,����6/ ���-(*�.)����=�02+=
}
��� 1+�!!0��6+ �� ����� � ������.!���� DEFGHGDE��<*+,� /���-��*9��3+�����������5��IJDKL=����0��*+,*�-���-��3+�����������5��IJDKL?
���������� ��
char m = 2;
int x = 0;
if(m==1) // ��+,*��� m = 1 +�'���-*.��
x = 50; // / �=+�'�=
else
x = 80; // / �=�02+=
/*—————————result———————————*/
x = 80
/*——————————————————————————*/
!��(����������")*O"��$($�! ����%���&/"if(m==1)",����"��%���&/��0����!"�,$�2"S"9"6"����A�!���$2������ ���(���'��"else ������%���� ��� x = 80;"�"T"9"R<
42������������� ������������������������������������ IPST-MicroBOX
���������� ��char z = 10;
if(z>=5) // ��+,*��� z >= 5 +�'���-*.��{ // ��+,*�1 ��-(*�.)�����>+�'�=�+�0%��%�,�(�0�(�3�1��"
z += 15; // �%�,�(�0�(�3z = z%10; // �%�,�(�0�(�"
}else{
z+= 17; // �%�,�(�0�(�9z = z%4 ; // �%�,�(�0�(�<
}/*—————————result———————————*/
z = 5/*——————————————————————————*/
!��(����������")*="��$($�! ����%���&/"if(z>=5)"",����"��%���&/��0�!$1�"�,$�2"U"9"#<"�������"=!$1�"����A�"!������$�/'�&��$2������ ������"#"5�2"6"����������5$�
�"��� ������"# z += 15;"�"V"9"V";"#="�"V"9"#<";"#="�"V"9"6=�"��� ������"6 z = Z%10;�"U"9"6=W#<"�"U"9"="��0�+���,-. �'��
���������� ��char z = 10;
if(z<5) // ��+,*��� z < 5 +�'���-*.��{ // ��+,*�1 ��-(*�.)�����>+�'�=�+�0%��%�,�(�0�(�3�1��"
z += 15; // �%�,�(�0�(�3z = z%10; // �%�,�(�0�(�"
}else{
z+= 17; // �%�,�(�0�(�9z = z%4 ; // �%�,�(�0�(�<
}/*—————————result———————————*/
z = 3/*——————————————————————————*/
!��(����������")*N"��$($�! ����%���&/"if(z<5)"",����"��%���&/��0����!"�,$�2"U"9"#<"�'������"=!����0����!"����A�"!������$�/'�&��$2������ ������")"5�2"O"����������/�� ���"XYZX
�"��� ������") z += 17;"�"V"9"V";"#>"�"V"9"#<";"#>"�["V"9"6>�"��� ������"O z = Z%4;"�"U"9"6>WO"�"U"9")"��0�+���,-. �'��
���������� ������������������������������������ IPST-MicroBOX ��43
�����������������������
*+,���������������� � ���2!����+ � 42��������� *.4�2���5��� ����/������� ���!� KNOP������0������������+ � 42���������������� ���2!3��� ���!� KNOP� ��*�5�6+ �� ������� �2�����������FPQNRJH�������������������92��FPQNRJH�����0�����3������ �!����������FPQNRJH��-��������6+ �� �22������ ����������OSGHKT�������� 1+�!!������!�258�����<
switch(variable){
case const1 : block1break;
case const2 : block2break;
case const3 : block3break;
|||default : blockn
break;}
variable"�%�""(��5�$��������($�! ����%���&/
const""�%�""��������'��������(��5�$��������($�! ��"�'�($��������"!2&����������������A�
default "�%�""�$G�/����$��$���5�'�&��($����"\LZX"����"!2�/'������������� �����A"" ���&��!����0�('����� ��&�
���������� ��
unsigned char key = 5;
unsigned char j = 10;
switch(key)
{
case 1 : j = j +key;
break;
case 3 : j = j +key;
break;
case 5 : j = j +key; � 0%��%�,�(��12*���6break;
}
/*—————————result———————————*/
j = 15
/*——————————————————————————*/
44������������� ������������������������������������ IPST-MicroBOX
���������� �
unsigned char key = ‘b’ ;
unsigned char j = 0;
switch(key)
{
case ‘a’ :j = key;
break;
case ‘b’ :j = key; � 0%��%�,�(��12*���6break;
case ‘c’ :j = key;
break;
default : j = 0x00;
break;
}
/*—————————result———————————*/
j = ‘b’
/*——————————————————————————*/
���������� ��
*+,�������������� ������!!� 2!6�5�� � ���2!���*�4�239��:;����������� � 2!��� ���������������2�6�5�� 1+�!!*+,
for(initialize ; condition ; incremental)
{
block
}
?���� initialize"�%�"����$1��('���������!��(��5�$����������0���%���&/����$��$��
condition"�%�"��%���&/�����'����$($�! �����!2��'?�$5�$������� ��������������$%�&���'���0�!$1�!2����$������ �����������'���0����!!2�������0�]<^"!2&������$������ ����������
incremental"�%�"��� �������$�$2������(��5�$����������0���%���&/
���������� ������������������������������������ IPST-MicroBOX ��45
���������� �!
unsigned char i = 0 , dat = 3;
for(i=0;i<8;i++)
{
dat++;
}
/*————————————result———————————*/
dat = 11
/*—————————————————————————————*/
!��(����������")*Q" ���$��-1�����������/����� ���""for(i=0;i<8;i++)"����A
"��������#�"�%� i = 0"��'":"��0�(��5�$����$($�! ����%���&/
��������"�%�"i<8"�'����":"�'������"R"!2������ ����������"�'��������!2���!���������A
"$�%���"�%�"i++"�'������� ����������� $�!5�'�!2�,1�����":"/�A���������
�����%�"!2����$������ ������������A���"R"�$�A�"�%�"(�A�5(�":"9"<"���":"9">""5 ��������$������ ���"dat++;��A���"R"�$�A�"�����'����!����$�������� ���"KC_"� $�!5�'�"���/��"dat"!2�������0�"##"3�,$�2������$1��('����")4
���������� ��&
unsigned char i = 0 , dat = 3;
for(i=0;i<8;i+=2)
dat++;
/*————————————result———————————*/
dat = 7
/*—————————————————————————————*/
!��(����������")*#<" ���$��-1�����������/����� ���""KC_3:9<P:`RP:;964"����A"��������#�"�%�" i = 0"��'":"��0�(��5�$����$($�! ����%���&/��������"�%�""i<8"�'����":"�'������"R"!2������ ����������"�'��������!2���!���������A"$�%�����%�"i+=2"�'��$2������ ����������� $�!5�'�"!2�,1�����":"/�A��$�A��2"6"���
�����%�"����$�$2������ ������������A���"O"�$�A�"�%�"":"9"<"a"6"a"O"a"N""!������$�$2������ ���"dat++;��A���"O"�$�A�"�����'����!����$�������� ���"KC_"� $�!5�'�"���/��"ELF"!2�������0�">"3�,$�2������$1��('����")4
46������������� ������������������������������������ IPST-MicroBOX
���������� ���
unsigned char i = 0 , dat = 3;
for(i=10; i>=5; i--)
dat++;
/*————————————result———————————*/
dat = 9
/*—————————————————————————————*/
!��(����������")*##" ���$��-1�����������/����� ���" for(i=10; i>=5; i--)"����A
����$1��('�"�%�""i = 10"��'":"��0�(��5�$����$($�! ����%���&/
��%���&/"�%�""i>=5"�'����":"��������$%��������"="!2������ ����������"�'��'������!2���!���������A
��� ���"�%�"i - -"�'��$2������ ����������� $�!5�'�"!2����"i"����������
�����%�"����$�$2������ ������������A���"N"�$�A�"�%�"��%��":"9"#<a"Qa"Ra">a"N"5�2"="5 ����"����$�$2������ ���"dat++;"��A���"N"�$�A�"�����'����!����$�������� ���"KC_"� $�!5�'�"���/��"dat"!2�������0�"Q"3�,$�2������$1��('����")4
���������������
*+,�������������� ������!!� 2!6�5�� � ���2!���*�4�239� � 6�5���� 1+�!!*+,while(Condition){
block}
?���� Condition""�%�""��%���&/�����'����$($�! �����!2��'?�$5�$������� ��������������$%�&���'���0�!$1�"!2����$������ ����������"5(�������������"�'���0����!!2&������$�$2������ ����������"����
while(1){
block}
��0�����������$�$2������ ����������5��&��$�'!�"�,$�2��%���&/��0�!$1�(��������%���!�����(��5������%���&/"3\CDE:F:CD4"�������0�"b#]" ����������"��%���&/��0�!$1�"�������
5(��'���0�while(0){
block}
!2��0�"cd:YX"YCCe"���!2&������$�$2������ ������������A��/�"�,$�2��%���&/��0����!(��������%���!�����(��5������%���&/"3\CDE:F:CD4"�������0�"b<]" ����������"��%���&/��0����!"�������
���������� ������������������������������������ IPST-MicroBOX ��47
�$%��'���0�while(1);
!2�����&'���while(1){
>>>>>>>>>>>>>>
}
:;����<��2� 1+�!!��*��42���42� *�4�239*+,� /���2�*����������251���!���3��52�3+� �����������0��3+�*. ��3�����������251��5�!�-2�*�5��������� ���2!*�4�239���*2����*+,� /���2�*���
���������� ���
unsigned char count = 10 , j = 0;
while(count>0) // / ��count�������� �+�'�����0%��%�,�(����12*�{
count--; // 1&����count�1��3j++; // �?'(�����j�);6��3
}
/*————————————result———————————*/
j = 10
/*—————————————————————————————*/
!��(����������")*#6"��(���������A��'���/��"count"��0�(��($�! ����%���&/���"�������"<"�����$%�&��"�'����!2�/'�&������� ����������"5�2���$�A�����/'�&������� ����������/����� ���"while"!2����"count"��"#"���"5�2�,1�����"j"#"���"����A�����$�$2������ ������������A���"#<"�$�A�"�%�"��%��"count"9"#<a"Qa"Ra">a"Na"=a"Oa")a"6"5�2"#
���������� ��
unsigned char test = ‘a’, m = 0;while(test==’a’){
test = ‘b’; // �%�,�(�0�(�3m = 25; // �%�,�(�0�(�"
}while(test==’b’){
test = ‘a’; // �%�,�(�0�(�9m = 80; // �%�,�(�0�(�<
}/*————————————result———————————*/
test = ‘a’m = 80
/*—————————————————————————————*/
48������������� ������������������������������������ IPST-MicroBOX
!��(����������" )*#)"����$1��('�/��"test = ‘a’" ��%��?�$5�$�������!2,���� ���($�! ����%���&/while(test==’a’)"5�2,������%���&/��0�!$1�"!���$2������ �����������%�"��� ������"#"5�2"6
�"��� ������"# test = ‘b’;
�"��� ������"6 m = 25;
(��!����A���%������$���" FXZF" &�($�! ����%���&/"while(test==’a’)"����$�A�,����" &����0�!$1����(��&�"�,$�2!����$�$2������ ������"#"!�����!��"YCCe"&�,������� ���($�! ����%���&/"while(test==’b’)5�2,����"��%���&/��0�!$1�"!���/'�&��$2������ �����������%�"��� ������")"5�2"O
�"��� ������") test = ‘a’;
�"��� ������"O m = 80;
������������������
*+,�������������� ������!!� 2!���5�� � ���2!���*�4�239����5��������STGJP�������������������� � ������������!�-2���2�=�� �<�������;�� ���2!*�4�239����92��STGJP��� 1+�!!*+,
do{
block}while(Condition);
���������� ���
unsigned char dat = 0 , j = 0;do{
dat++; // �?'(�����dat�);6��3����}while(j != 0) // / �����j�.���0������ �+��) �.�0%��%�,�(����12*�"3��� ���""dat++;4/*————————————result———————————*/
dat = 1/*—————————————————————————————*/
!��(����������")*#O"!2��������$�A�5$����,���� ��� do-while"?�$5�$�!2�/'�&������� ���������������������$�$2������ ���"dat++"�����'"dat"�������0�"#"����"5�2!��($�! ������ j"&���������"<"!$1��$%�&��"�$��f���&��!$1�"!�������'���!����$�$2������ ���" do-while loop
5(��'���0�unsigned char dat = 0 , j = 0;
while(j != 0) // ��-(*��+,*�?��� j = 0"�2.�����0%��%�,�(����12*�1 {
dat++;
}/*————————————result———————————*/
dat = 0/*—————————————————————————————*/
���������� ������������������������������������ IPST-MicroBOX ��49
� �!�"�#$�����!��� ��%����� &'()� �!�����
�#$������������ *+,-./&012345�������� ��� � ������������������������������� �!�����"#��$����������%��&��'!�(�)���(!��
*�����+��',�)�-��.�/01234����������� ������������������������������� !"#$%&�'()��*'��+������,� -.�)�,�./��'.-,�.(�0����)�).����1�1�'���2��*'��+.)�.������ 3-. ��������.�'42��*'��+���5��6�7�8�����8�������.�'4�(�0��9:;�.������<�������1=��6��9>;�����.5�
����������� �� 1����5�87�� ' ?8��8��'84�.��(?+�'�' @(*''�� A�� ?8�B�5'�7�5�8�'�?� 1�)(C)D',��=�8.5�B�5������ .��,�� ��������� �������� !"#$%&��?�5��6�=�8� �����?0
���5617�� �������*����8!���%)9��������#��'�8�+�9�+%�(:��;-;"��!��+�<���"�;�<�"���"�=�"�;-;"��+���(&�����&*��������>?@ABCDE
��AB@A5�� �������*����8!���%)9�������'���,�"�)��+�FGH�I��#)�� B�5'������� ����.������E������F; GHIJK�EL
��J/K� �������*����8!���%)9�������'���,�+%��)�(*��&(�:��FLH� =�8.5�B�5������ ������1,� -.����� 1��-� F; GHIJK� #L
��@1�10� �������*����8!���%)9�������+��(��"����B�5������ ������.� -7M. �N�����FO&�;>�NL
��C5CJ1B� �������*����8!���%)9��������#����MM�N�8����!�B�5������ . �������PP'3�1�'���(�0���
����@A0� �������*����8!���%)9�������-��!���!��9)!���#��)��
��175K� �������*����8!���%)9�������-��!���!��9)!��!��!����;���MM�N���9�
��A0�CJ� �������*����8!���%)9�������-��!���!��9)!��!���������+%�(:����!�(
�����7�� ' ?(?+���'��'�?0�1@6�� ���86�D'8B�=M���� -��?8������ A��?���8��Q+�86�,'C��?8����RQ+7�5����. ?8��', 5��B�R?�? ��(?+�'���������������� ������ !"#$%&���5��=�8� ���86�D'8B�=M���� -� ��6�5/J7KA
50������������� ������������������������������������ IPST-MicroBOX
����'��?08��?7�� ' ?�,)+��.)��*'� ���' ��A+��.�����.��. �����,)�ST�A+�4��'()��BOKDOP6J�Q� �������";�"#�!��&(�:�)���898*��'���;��������RSOHDOP
��0TPU6J�Q� �������";�"#�!��&(�:�)���898*��'�����"�%�&V�;!�WXYZPU
��@A@�/6J�Q� �������";�"#�!���.G.W[LODOU�&(�:�)���)�(��#��O�'!���,A+���'���'��'���'�����?8B��.��1���(?+���7�5
�� �DD6J�Q� �������";�"#�!���W\?DD�&(�:�)���)�(��]���(<�*^�_���!�`
B��(�?0�*'���� '8�1��?8�(�0�����7�� ' ?����� HGUVW��,A+������5��6��5'�)B��' ��?8�=� �� �D'T'�>��*'� ���������' (*''������ �� !"#$%&
a�D������������!��9)!��!��_�%���<���"�;�<�"b���"�<�"a�D�D�� �������������#���#�-�!<���"�;�<�"
in_a���������#���#���MM�N�;-;"��-�!<���"�>
in_b���������#���#���MM�N�;-;"��-�!<���"�2
in_c���������#���#���MM�N�;-;"��-�!<���"�L
in_d���������#���#���MM�N�;-;"��-�!<���"�H
����������� �char in_a(x)
char in_b(x)
char in_c(x)
char in_d(x)
�������������������������� ���������������������������������������������
��������
�� ����!"#��$�%���&��$'%
���������� ���
char x=0; // "�(��)��*�"��x�!+&�!�,-���.//�+01 ������������������
x = in_b(2); // ��������������2 2��/ ��+��1��345��/�*!�,-���6*����*�"��x
���������� ������������������������������������ IPST-MicroBOX ��51
a�D�O�� �������������+�9�+%�(:���9��<���"���"�<�"out_a� �!������8�����MM�N�;-;"����9��<���"�>out_b� �!������8�����MM�N�;-;"����9��<���"�2out_c� �!������8�����MM�N�;-;"����9��<���"�Lout_d !������8�����MM�N�;-;"����9��<���"�H
����������� �out_a(char _bit,char _dat)
out_b(char _bit,char _dat)
out_c(char _bit,char _dat)
out_d(char _bit,char _dat)
����������
_bit �������������� ��������������������������������������� �������
��������
6�������&����
���������� ���!out_a(3,1); // �������(��-������+��1��378�!"#��$'%out_b(6,0); // �������(��-������+��1��349�!"#��$�%out_d(7,0); // �������(��-������+��1��3:��!"#��$�%
52������������� ������������������������������������ IPST-MicroBOX
a�D�c�� ������������!�����+%�(:���-;!_�%!��<���"���"�<�"set_a��_�%!�������-;!�dDe�*��+���MM�N_�$�+��<���"�>
set_b��_�%!�������-;!�dDe�*��+���MM�N_�$�+��<���"�2
set_c��_�%!�������-;!�dDe�*��+���MM�N_�$�+��<���"�L
set_d��_�%!�������-;!�dDe�*��+���MM�N_�$�+��<���"�H
clear_a�_�%!�������-;!�dPe�*��+���MM�N_�$�+��<���"�>
clear_b�_�%!�������-;!�dPe�*��+���MM�N_�$�+��<���"�2
clear_c�_�%!�������-;!�dPe�*��+���MM�N_�$�+��<���"�L
clear_d�_�%!�������-;!�dPe�*��+���MM�N_�$�+��<���"�H
����������� �set_a(x)
set_b(x)
set_b(x)
set_d(x)
clear_a(x)
clear_b(x)
clear_c(x)
clear_d(x)
����������
x��������������� ���������������������/� 2�����������������������
���������� ���"
set_c(6); // �������(��-������+��1��3;9�!"#��$'%clear_b(3); // �������(��-������+��1��348�!"#��$�%set_d(0); // �������(��-������+��1��3:��!"#��$'%
���������� ������������������������������������ IPST-MicroBOX ��53
a�D�a�� ������������!���+%�(:���-;!_�%!��<���"���"�<�"toggle_a� �_�%!�����!��!�����-;!*��+���MM�N_�$�+��<���"�>toggle_b �_�%!�����!��!�����-;!*��+���MM�N_�$�+��<���"�2toggle_c� �_�%!�����!��!�����-;!*��+���MM�N_�$�+��<���"�Ltoggle_d� �_�%!�����!��!�����-;!*��+���MM�N_�$�+��<���"�H
����������� �toggle_a(x)
toggle_b(x)
toggle_c(x)
toggle_d(x)
����������
x��������������� ����������������/�-/� 2�����������������������
���������� ����
toggle_a(2); // �/�-/� 2��+��1��375
toggle_d(4); // �/�-/� 2��+��1��3:<
a�O�������������#)��)��
a�O�D�� �!������JAA�*'� ���' �������'=�8� 1�'3B�����8�)��)�)�'(?����������� �
void sleep(unsigned int ms)
����������
ms� =>����������!*/������������*�=����*?�2//2*2����������6����������������9@A@8@��������
6�������&�������������� ���#
sleep(20); // ���*�!*/�"�(����5���2//2*2���sleep(1000); // ���*�!*/�"�(����'�*2���
54������������� ������������������������������������ IPST-MicroBOX
a�c�������������������#���#��8����!a�c�D�� �!������C5CJ1B
B�5��'���'�1�'���(?+�'��PP'3B�4���,� -.�X��?��'��1��?8�B��' �����PP'3�1�'��������)�).���YZ��).�(*'B�57�5��'�5��6����['��)��Z�@Q�Y2ZN\��(?8����� ����1�'����Z�@Q�]^
����������� �unsigned int analog(unsigned char channel)
����������channel�=>�������>����(��/��������������������������������-+��1��37������37�
���������&����!"#� ���B/�2 2��/�6�� ������"/������� ��C��B/�"/��������(��/��!"#��2 2��/ ���2�+D��������� C�? ���B/ (��*��/(!�?��'��-2�������������!"#�6"6���&���������� �����'�58�=��B" ��!/ E���2-���&����������8FF�=��B" ��!/ E���2-��
���������� ���$
int adc_val=0; // ��������*�"�������-!�,-����(��/�������6��adc_val = analog(2); // ��������(��/��>����5���������-+��1��375��/�*!�,-������*�"��adc_val
���������� ������������������������������������ IPST-MicroBOX ��55
a�c�O�� �!������f51QB�5�*'� ���' ��'���'�1�'���(?+�'��PP'3��,� -.��X<�RQ+��A+���� ��5'���.��.5'�('�
� ����'7�5����� ������1,� -.����� 1��-� F; GHIJK� #L������������ ���� ���� ���������������������������� ������������ !�"!��!��#�$%��"���������&'()*+,-./012��%"� �����������%"�����3��
����������� �#define knob() analog(7)
����������6���
���������&����!"#� ���B/�2 2��/�6�� ������"/������� ��C��B/�"/��������(��/��!"#��2 2��/ ��>����37��C�? ���B/��*��/(!�?��'��-2������!"#�6"6���&������������ �����'A�58
���������� ���%
int adc_val=0; // ��������*�"�������-!�,-����(��/�������6��adc_val = knob(); // ��������(��/�� ����*�������"��-���6��-��.�*� �����./
// �/(+��1�!���"�(���1�G:HIJKLMNHOP��/�*!�,-������*�"��adc_val
����&������������'(&�)��*���� +,-.����/���0��1(�/2�23���������31��
56������������� ������������������������������������ IPST-MicroBOX
a�a������������������-���)����������#��)��a�a�D�� �!��������@A06�C0�
B�5�*'������� )+�.5��' ������'��7(��� -� F��'���'B��' ����1@6����?8 -L����������� �
void timer_start(void)
a�a�O�� �!��������@A06�1B�5�*'� ���_��' ������'��7(��� -� F��'���'B��' ����1@6����?8 -L����������� �
void timer_stop(void)
a�a�c�� �!��������@A06C7AB�5�*'� ���8���' ������'��7(��� -��+��31� F��'���'B��' ����17��@6����?8 -L����������� �
void timer_pause(void)
a�a�a�� �!��������@A060A7@AB�5�*'� ��������'.����7(��� -����'��' �8��������'��+��31�'�M̀�-��+��timer_pause
F��'���'B��' ����1@6����.���=�8�,)+���'�'���)�L����������� �
void timer_resume(void)
a�a�U�� �!������@A/B�5��'���'���'(?+7(��� -���7�5B�����8�)��)�)�'(?����������� �
unsigned long msec()
��������!*/����-6��=����*?�2//2*2���� C�?>�2� ���B/!"#��--� KOQR
���������� ������������������������������������ IPST-MicroBOX ��57
a�a�E�� �!������A/B�5��'���'���'(?+7(��� -���7�5B�����8�)�'(?����������� �
unsigned long sec()
��������!*/����-6��=����*?*2���� C�?>�2� ���B/!"#��--� KOQR
���������� ���4
void main() // ����������{
timer_start(); // ���� �� ���������������������������while(1) // �������������{
lcd(“Time: %l sec “,sec());// ����������� �����!�����"���# ��"��� ��$%&'}
}
5&���������6������������ #�����!����"(�)������ �(��*������# �*���)+����������)#���$,'-./0123-45$�������*��������$6-7849:;$��)�*������# �*���)+����������)#���$,'-./0123-45$�"(�)����� ���+�������$ ��<���������� �����!�� �=� �����#�����$ >?@A36-7849:;$ ���������������)��������B��
�1(�����(��7��/���0��1(�/2�23���������31���89:;<=>?�:@A��5&����/���0�'�B�����B��2�2��*2��C:[email protected]
�/���0��1(�/2�23���������31��
58������������� ������������������������������������ IPST-MicroBOX
a�U������������������'���,�*���FGH�"�)��+�I��#)��'�8�FGH�'���,��g����!a�U�D�!�������("#�*��h����')��
B��' (�����*'��+�?0�1.5��*'��� �������� !"#$%&��'.����5'������ ����.������E������F��� �;���EL
FYL���A+��.���'8�5��6��a��).�'�,� -.�>������ �������� !"#$%&���5'������.����%b������ ����.������E������;���E
FNL�.���'8�'������$E������ �� !"#$%&���5'������.���;�c��E������ �;���EF\L�.���'8�'������$\������ �� !"#$%&���5'������.���;�c��\������ �;���EFEL�.���'8�'������$N������ �� !"#$%&���5'������.���;�c��N������ �;���EF]L�.���'8�'������$Y������ �� !"#$%&���5'������.���;�c��Y������ �;���E
���
���
���
���
���
���
����
��� ��
��� ����
���
��
��
���
���
���
���
���
���
��
��
�����������
��
�����
�����
���
��
����
������
���
��
��
���
���
���
���
���
���
���
� ����
� � � � �
������ ������
!��
�� "
� �!"
��
����
����
������ ������� ������� ������
�����
�������
����� �
��������
������������ �������������������
��������� ���������������������
���� �
!���� ��
��� ��!
����
�� ��������
�!#�$�
��
!���% ���
�������
a�U�O�� �!������AB@A5�������WGR.Gi?B�5�����5��6�(?+�9:;�.������<���������� ����.������E������F��� �;���EL����������� �
void segment(unsigned int val)
����������val������������������ ���B/������������./ ���B/��ST:���*!/ �����*��<��/���>�*� ���B/
�!"#�6"6���&���������������UUUU������� ���B/��������*���� (���� ���*��!"#��N�N�N�N
���������� ������������������������������������ IPST-MicroBOX ��59
���������� ���G
segment(2549); // �# ����������$CDEF$�"�$%G'$�����$H$#���
���������� ��� Hint i=0;while(1){
sleep(1000); // ���������$I$�����"segment(i++); // �# �������������$i$�"�$%G'$�����$H$#���$+�����+������$i
}
a�U�c�� �!������AB@A5�6K1�B�5��������Fd#U�H# eU�f�dHL����9:;�.������<�����
����������� �void segment_dot(unsigned char _dot_val)
����������_dot_val ���������������������� �� D��VJ���������=������./�C�?����!"#�6"6���&�
'�A5A�8���&��<�C�?�/����'� (��- ����� *��&�
a�U�a�� �!������AB@A5�61TTB�5�_��' �����5��6����9:;�.������<�����
����������� �void segment_off(void)
a�U�U�� �!������JAKgB�5�*'� ���������' .)�/������9:;������a��������� ����.������E�����
����������� �void led8(unsigned char dat)
����������dat��������������� ���B/!+&��*-�D�����2�W��- ���ST:�����,�&�� ���B/�X�-2� ��+��1��;
a�U�DP�� �!������JAKg61TTB�5�*'���B�5�9:;��86�B��@'�1���� ��A+�,)�' 3'B� 6����7�.-�5��6�
����������� �void led8_off()
60������������� ������������������������������������ IPST-MicroBOX
a�E�����������+��(��"�����"��a�E�D�!�������("#�*��h����')��
�' (�����*'��+�?0.5��*'��� �������� !"#$%&�.�������� ������.� -7M. F��� �O&�;>�NL
1)�*��������������
�������? �� D�����3:5� ���.�*� ��YHZ[O4\]�! ����- D��:^_'7� ���.�*� � �-��!���1
�������? �� D�����3:8� ���.�*� ��YHZ[O4\]�! ����- D��:^_'4� ���.�*� � �-��!���1
�������? �� D�����3:<� ���.�*� ��YHZ[O4\]�! ����- D�����3`Y'T� ���.�*� � �-��!���1
�������!���16a������! ��� D�����\bc'� ���.�*� � �-��!���1
�������/�� ��?6a������-��!���1�����! ��� D����6a!/�?� ���.�*� � �-��!���1�def���&��� =>� �� D����6a!/�?� ���.�*� ��YHZ[O4\]��,6��
1)�*��������������!�������? �� D�����3:�� ���.�*� ��YHZ[O4\]�! ����- D�����:^_57� ���.�*� � �-��!���1
�������? �� D�����3:9� ���.�*� ��YHZ[O4\]�! ����- D�����:^_54� ���.�*� � �-��!���1
�������? �� D�����3:@� ���.�*� ��YHZ[O4\]�! ����- D�����3`Y5T� ���.�*� � �-��!���1
�������!���16a������! ��� D�����\bc5� ���.�*� � �-��!���1���
���
���
���
���
���
��
��
��� ����
���
��
��
���
���
���
���
���
���
��
��
�����������
��
�����
�����
���
��
����������
���
��
��
���
���
���
���
���
���
���
� ����
��
��
�
�
��
��
�
�#
�
����
����
�# �
��
����������
�& ��&
��
���
�
��������
�����
��������
�����
���
��
�������
!�'��(������
���������� ������������������������������������ IPST-MicroBOX ��61
a�E�O�� �!������@1�10B�5�*'� ��������.� -7M. ����������� �
void motor(char _channel,int _power)
����������_channel� =>�������>��� ����!���1�������� �-_power�=>��������(��-��� ��?+/�����=�������!���16a��������=�>�*��N'�������'��
�������������_power�!"#�-*��G'�����'��P����=����!���1��D�6"=��2)����������������������_power�!"#�/-�GN'�����N'��P����=����!���1��D�6"=��2)��� �����*�=��������������_power�=��!"#������!���1 (�?D���D��G��(���*���=����!-����!���1�*�!�?�=>�ag��1>���motor_stop (��-B��1�*���P
���������� ���
motor(1,60); // ���������=���$I$ ��!����$JKL$�������#��#� ................
motor(1,-60); // ���������=���$I$ ��!����$JKL$�������#��#� ���M����������������� ��� !
motor(2,100); // ���������=���$C$ ��!����$IKKL$,#��#� 5
a�E�c�� �!������@1�106�1B�5�*'� ���8���' ������.� -
����������� �void motor_stop(char _channel)
����������
_channel���������������>��� ����!���1���������?D�� !�&�
_channel�������!"#��'��&��*�I(��5���������� �����-JK
_channel�������!"#��5��&��*�I(��5���������� �����-JK!
_channel�������!"#��7SS��&��*�I(��5����������7�1������
���������� ��� "motor_stop(1); //��?D���� �-��!���1>����'motor_stop(2); //��?D���� �-��!���1>����5motor_stop(ALL); //��?D���� �-��!���1�����5�>����G����>����'��/(�5P
62������������� ������������������������������������ IPST-MicroBOX
a�I������������);"���)���(�������',�)�-�'���,�'�8<���"���!��8����j�H�JCkZ�1la�I�D�!�������("#�*��h����')��
������������ ������������������������������ !"#��$� ������������%�%�&�'�(��)�����'� *��������+�,-./01� 2� =�8����*'��+�?0�1��'���'�'���).�-��.)�����8����\�.��(?+.)�.�0�86������ �; GHIJK� #�RQ+�*'����A+�������gY2��gN���1��g\
���
���
���
���
���
���
��� ���
��� ���
�����
���
��
��
���
���
���
���
���
���
��
��
��� ��� ��� �
��
��� ��
�����
���
��
��
�� �����
���
��
��
���
���
���
���
���
���
���
� ����
��� ��� ��� �
���
��
��
���
���
���
���
���
���
���
������
���
���
���
���
���
��� ��� ���
�
���
���
� � �� � �
���� � � ���
�
� ��
������������� ��� ��� ������������������������������� ���!�"#$%&'
�(���)��*)��+�,+-���
, +.��/01�2�������3��4� ��5�+��+��6��-.) �78���9�
1"$#:;<="> ���������
78���9�7�+�8�7�?��������@�?��*�
78���9�A����B"CD>EFG��-.)+����)��
a�I�O�� �������������#���#��m��8�);"���?�5�8����\�M̀�-��+��A�
sw1()� _�%�������"�)-����m��8!��!��);"���WnDsw2()� _�%�������"�)-����m��8!��!��);"���WnOsw3()� _�%�������"�)-����m��8!��!��);"���Wnc
����������� �!"#���C��ag��1>��������-�������/� 2� �� �+��1�����*� �! ����-�*2�>1
��������!�&��*2�>1�B���� (�&����!"#��$�%!�&��*2�>16���B���� (�&����!"#��$'%
���������� ������������������������������������ IPST-MicroBOX ��63
���������� ��� �
void main() // C"������/��{
while(1) // *���-6���B� -{
if(sw1()==0) // ��* ��-*����*2�>1�h`'��B�����&�6��{
lcd(“sw1 active!”); // ���� ���*��*���1����L�(�-�C��B/�S;:sleep(500); // ���*�!*/�!+&����� ���*��
}
else // ������-�����*2�>16���B���{
lcd(“#c”); // !�/?�1 ���*���C��B/�S;:}
}
}
a�I�c�� �������������#���#��m��8�);"��
�?�5�8����\�M̀�-��+��A�
sw1_press()�_�%�������"�)-����m��8!��!��);"���WnD�_���!oN8!����-�!)#�-8(�!��!��);"���WnD
sw2_press()�_�%�������"�)-����m��8!��!��);"���WnO�_���!oN8!����-�!)#�-8(�!��!��);"���WnO
sw3_press()�_�%�������"�)-����m��8!��!��);"���Wnc�_���!oN8!����-�!)#�-8(�!��!��);"���Wnc
����������� �!"#���C��ag��1>��������-*���* ��-������*2�>1=�i
����������6���
64������������� ������������������������������������ IPST-MicroBOX
���������� ��� #void main() // C"������/��{
int i=0; // "�(���)��*�"�!�,-��������-lcd(“Press sw2 to run#c”); // ���� ���*��� ��*���=�����*2�>1�h`5
// !+&�! ���B��(--�����-���sw2_press(); // �� ��*�� (�������*2�>1�h`5
// �� (��(���������-��������6"while(1) // *���-6���B� -{
lcd(“Count: %d “,i++); // ������������- ����*�"��H��C��B/�S;:sleep(1000); // ���*�!*/�"�(����'�*2���
}
}
���������� ������������������������������������ IPST-MicroBOX ��65
a�g������������������'���,�+%��)�(*��&(�:��FLH�'���DEpO���',�)�-�'���,�'�8<���"���!��8����� jH�JCkZ�1la�g�D�!�������("#�*��h����')��
B��' (�����*'��+�?0�1.5��*'��� �������� !"#$%&�.�������� ������1,� -.����� 1��-�F��� �; GHIJK� #L�=�8����*'��+�?0�1��?8���'7�����8�=��6��9>;���'�Yh�.�����T �N�� (��(?+.)�.�0����� �; GHIJK� #
���
���
���
���
���
���
��� ���
��� ���
�����
���
��
��
���
���
���
���
���
���
��
��
��� ��� ��� �
��
��� ��
�����
���
��
��
�� �����
���
��
��
���
���
���
���
���
���
���
� ����
��� ��� ��� �
���
��
��
���
���
���
���
���
���
���
������
���
���
���
���
���
��� ��� ���
�
���
���
� � �� � �
���� � � ���
�
� ������������� �� ���������� ����� ���������������
� !"#$%�& ���������
��������'������()��*�+���,�('�-*
,� �-�.�'��.����'����/����������
�������0� ��1�23&456������7.���.�
66������������� ������������������������������������ IPST-MicroBOX
a�g�O�� �!������J/K������FLHB�5�����5���'�(?+=��6��9>;���'��Yh�.�����T �N�� (������������� �
void lcd(char *p,...)
����������p�=>��������/D�� ���*��������������./�C��B/�S;:�C�?�������������B"�--�������
���/��j�1+2!)j!+&���*�����./��� ���B/��*!/ �B"�--�&�i����6������*�1������ ���)����kZ���&��k; =>���-����������./��*���j��'���*kV���&��k: =>���-����������./!/ E���2-��������N85A�9X�����d85A�9�kK���&��kS =>���-����������./��*!/ E���2-��������N5A'<�A<X8A9<X����
d5A'<�A<X8A9<�kl���&��kF =>���-���!+&�����./ ���B/�-- ���*� �2�
G�����)�2?��8��/��PmZ �?1������!+&����!�/?�1 ���*����������./=���-���6"mQ �?1������+2!)j!+&������� ���*��6"�����-������� 5
��������6�������&����
�������� ������� �)������������������� ���#�����"��)������(�N$��O)�(�����# �*������� ����*� +�� � �
���������� ��� $
lcd(“Hello LCD”); //��# ��������$PQ004$%&'$�"��� ��$%&'.//�+01�C��B/�S;:��!"#���������������
���������� ��� %lcd(“abcdefghijklmnopqrstuvwxyz”);
//��# ����������<�����������R�����$IJ$��$����)��S ���)���# �!����� �"�$C$���
.//�+01�C��B/�S;:�!"#��������� ����������
����������
���������� ������������������������������������ IPST-MicroBOX ��67
���������� ��� 4
lcd(“Value: %d unit “,518); //��# �������������������������$,DIT5$�"��� ��$%&'
.//�+01�C��B/�S;:�!"#������
���!�"#$�����
���������� ��� G
lcd(“Value: %d “,analog(4)); //���������)������"�=���$E$,+����$?UE5$���# ��"��� ��$%&'
.//�+01�C��B/�S;:�!"#������
���!����
C�?�������&����������6��C�?�� ������������������'A�58
���������� ���!Hchar c_test=’j’;
lcd(“abcd%cxyz”,c_test); //��# �����R�$VWX$��������������<��N
.//�+01�C��B/�S;:�!"#������
��������
���������� ���!
lcd(“Value: %f “,125.450); //��# �����������������������������M��!�$Y$���
.//�+01�C��B/�S;:�!"#������
���!�#%"&'"(
���������� ���!!lcd(“count1: %d #ncount2: %d”,12,48);
//����� ���*����*���-�5������*-�D���/(�?1�mQ�!+&�������=���/D�� ���*���������?�mQ//� (�B�������������./-�������5���&�-�����/���
.//�+01�C��B/�S;:�!"#�����������#!�#%
�����%!�'$
68������������� ������������������������������������ IPST-MicroBOX
a�q���������������������b�#�+%�(:�,#��<���"���!�(��',�)�-�'���,�'�8<���"���!��8����� jH�JCkZ�1la�q�D�!�������("#�*��h����')��
B��' (�����*'��+�?0�1.5��*'��� �������� !"#$%&�.�������� �; GHIJK� #���1.���'8��5'(?+���.����:b�X9��%b������� �; GHIJK� #����,� -.���� ��b��N\N������,)��.� -
�' ��A+��.��������,)��.� -�'�' @(*'7�5� N����T31�A�
YV�.����5'���,� -.���� ��b��N\N�=�8. �=�8B�5�'8�>&�E�F����', 5�������� ������1,� -.����� 1��-��5�L
NV�.�����,� -.�i�$�=�8�'�.�������PP'3,� -.�i�$�����,� -.���� ��B�� 3?�?0B�5(*'�' �����'8�'�'����=� �� ��'�,� -.���� ����+��A������'�=� �� ��� j�B�5����'8>&�E�('k̀l���m�=��6��' -�F���m�=( S�,(-L�����'��� A+�=� �� ����5��*'�'.����5'������.������� ������1,� -.����� 1��-�(��, 5�������0�B�5�_�=� �� ��X^b��"#nV�����(*'�' ��=� �� ��5�8
���������
����������� ����������������������������� !����"���#$�� !��$%� &'$� �()(*+�&�,���� !-&�&(�� !��$%� &
���� ������� !��$%� & ��+�&�,���� !./�� �
�������� !����" ��+�&�,���� !
������
���
���
���
���
���
���
��� ���
��� ���
����
���
��
��
���
���
���
���
���
���
��
��
��� ��� ��� �
��
��� ��
�����
���
��
��
�� �����
���
��
��
���
���
���
���
���
���
���
� ����
��� ��� ��� �
���
��
��
���
���
���
���
���
���
���
��� �
����
���
���
��
��
�� �� �
�
���
���
� � �� � �
���� � � ���
�
� ��
���������� ������������������������������������ IPST-MicroBOX ��69
a�q�O�� �!������7C0�B�5���5��6��'8���� 1���('�� D'�����=��6�� iXb�� B�7�=� ���=( ���� -
X��onJYh������ �� !"#$%&��=�8�?��. '� j�B��' @�'8(���5��6�� )+�.5�(?+�p2hZZ��)..���)�'(?
����������� �void uart(char *p,...)
����������
J� =>�������-�������/D�� ���*����������������6"?��+��1���D��� �����+2*!���1� C�?�������������B"�--����������/��j�1+2!)j!+&���*�����./��� ���B/��*!/ �B"�--�&�i����6�����
�*�1������ ���)����
kZ���&��k; =>���-����������./��*���j��'���*
kV���&��k: =>���-����������./!/ E���2-��������N85A�9X�����d85A�9�
kK���&��kS =>���-����������./!/ E���2-�������� N5A'<�A<X8A9<X����d5A'<�A<X8A9<�
kl���&��kF =>���-���!+&�����./ ���B/�-- ���*� �2��G�)�2?��8��/��P
n[ �?1������������=�� ���*��>2�6"����������? ��-�����
nQ �?1������+2!)j!+&�������=�� ���*�� ���-�����=���
�������� ������� �)������������������� ���#����$��O)�(�����# �*����*� +�� � �
a�q�c�� �!������7C0�6A�6QC7KB�5�*'�����. '���� A���. '� j�B��' �A+��' �5��6�������,)��.� -
����������� �void uart_set_baud(unsigned int baud)
����������
oLpV� =>���������������-��=�����&���� ���B/��D�����-���+2*!���1
������6��������������������-�������(�����"� =��)������$ FZJKK$�����������"
���������� ���!"
uart_set_baud(4800); //������������-��=�����&���� ���B/!"#��<AX���-2����*2���
70������������� ������������������������������������ IPST-MicroBOX
��6�7������8������������9:';1�-;1<&=>?'q�!�&�!"r�C"������sMJt[�ct[fHQLK� ("���u��������������>&����!>&�������(-D>&�=�>����vLft�w��/�*�/2��\x
5q�!/&��+��1���D���������-!>&�������-C"������sMJt[�ct[fHQLK� ����*�?���!"#��;\Y'���/�*�/2�"Dy��\x
8q��������������E��=�����&���� ���B/�����B"�C�?������!"#��U9���-2����*2����X�-2� ���B/�'�-2��?D��6���-2�+��2��� � !�&���������/�*���"Dy��\x� ("���u���������������/�� ���sMJt[�ct[fHQLK�+����������-����2�����&���� ���B/
�������������������������� ������������������������������������� �!"�#���$�� %&����' (�)��* ����!#�� $��������+���!��� �%&#�� $���������������,�$%����!�%--�'#�� $�./0� ����#�� $������������' &����1��!�������2�!�����&&�/33�4/56789�:;6<�:6;=795>�����+$��$ �%&�*!�!,��?7@6;0AB���$��$%C!�*!�!,����!*����#�� $�������!" � 4D7E:98FG7;>� H������* ����!#�� $�����#���� !����%&���������!*�)%!"�#���$��
���������� ������������������������������������ IPST-MicroBOX ��71
a�q�a�� �!������7C0�6BA�fAk
B�5 ���5��6�(?+�'�'�,� -.���� ��'��' �A+��' �5��6����� �������,)��.� -
����������� �char uart_getkey(void)
����������6�������&����
���������� (�&����!"#��$�%�!�&�?��6��������-��� �(=�i�! ����?��z����- ��C��B/�&���� ���B/��D���
� � !�&�������-��� �(! ����?��C��B/�&���� ���B/��D���� (�&����������-��� �(����i ��ag��1>��
���������� ���!�
void main() // ����������{
while(1) // �������������{
if(uart_getkey()==’a’) // ���������� ��[��"!�$\1]$���S��� ��<����{
lcd(“Key a Active!”); // �# �������������� �����"���� ��[��"!�$ \1]sleep(1000); // ����������# ����������)��^$I$�����"
}
else
{
lcd(“#c”); // ���"!����������"����# �*������ ��$%&'}
}
}
��������$$�����"!� =����_�̀��=��$uart �+<��#����������������!�+������������)_�̀��=��$uart_getkey�+<����������R�) N�(�$ ������ ��<�������a� ����#<��#���������)������� ��#<��#��������������� �S������ ��b�$FZJKK$�����������"$��������������$T$���$��)��� =�������+����"(� !�������$,��b�����(����5$��<���"�����"!� =����_�̀��=�� ������$cd��S<���b������� ��<�������a� ����S��!�� �����������B���"���!� =����� !�����$�+<��� ����c�c��� ������"!����������$�����<��*��+e�������������������"�!�������������� ����#<��#���������a#����S��� �� !��"!�������� ������_�̀��=��$uart_set_baud$� !*��+e��������d�Sd� ��!���$ ��<�������� ����#<��#��#���d(�$ ���#��*���)���������S������ ����#<��#�������� ��!
72������������� ������������������������������������ IPST-MicroBOX
���
���
���
���
���
���
����
��� ��
��� ����
���
��
��
���
���
���
���
���
���
��
��
�����������
��
�����
�����
���
��
����������
���
��
��
���
���
���
���
���
���
���
� ����
�� �� �
������������ ��������������������
a�DP�����������!����;����9�a�DP�D�!�������("#�*��h����')��
B��' (��������*'��+�?0�1.5��*'��� �*'=,��q8=R�FO&���:Xr:bL�.����5'������ ������������ !"#$%&�(?+���.��,� -.B�4
a�DP�D�� �!������QAAbeep_a�����!!����;����9��)�(m���OPPP\r�*��+���MM�N_�$�����DP�(;��;);��*�-�!<���"�>
beep_b�����!!����;����9��)�(m���OPPP\r�*��+���MM�N_�$�����DP�(;��;);��*�-�!<���"�2
beep_c�����!!����;����9��)�(m���OPPP\r�*��+���MM�N_�$�����DP�(;��;);��*�-�!<���"�L
beep_d�����!!����;����9��)�(m���OPPP\r�*��+���MM�N_�$�����DP�(;��;);��*�-�!<���"�H
����������� �void beep_a(char ch)
void beep_b(char ch)
void beep_c(char ch)
void beep_d(char ch)
����������ch��������������� ����������������/�-/� 2�����������������������
���������� ������������������������������������ IPST-MicroBOX ��73
a�DP�O�� �!������175Ksound_a������������!!����;����9�*��+���MM�N_�$�-�!<���"�>sound_b������������!!����;����9�*��+���MM�N_�$�-�!<���"�2sound_c������������!!����;����9�*��+���MM�N_�$�-�!<���"�Lsound_d������������!!����;����9�*��+���MM�N_�$�-�!<���"�H
����������� �void sound_a(char ch,int freq,int time)
void sound_b(char ch,int freq,int time)
void sound_c(char ch,int freq,int time)
void sound_d(char ch,int freq,int time)
����������ch��������������� ����������������/�-/� 2�����������������������freq����������������*���������!�?�time���������������>�*�!*/�=�������!�2�!�?�!"#� ���*�!�,�!��� ����q'��2//2*2���
���������� ���!$
beep_d(2); //������ �#"!�����S"�$CKKKPf$���$IK$����������"�����+����$?UCsound_b(4,800,500); //������ �#"!�����S"�$TKK$Pf$���$DK$����������"�����+����$?E
74������������� ������������������������������������ IPST-MicroBOX
���������� ������������������������������������ IPST-MicroBOX ��75
� �!�"�#������$%������&'()*+����#,��-
������������� ����� ���������������� ����������� ��!"#��#$��% �&'���(�# �&)*� +,�$#�%- . �/��� (�)�01#�2���%��#��3456�7�89:;<=>��� ��2 ��+�- ��������� ����������?�@#������ ���2������A�#�0)��@��,B�C� �@�% #� �&'���(�� % �!����)�#)�# ��� � ����$D#D2 �#)��� ��?"�&)*� +,�$#�%���� % �!���C�����#�0������� ���2���(�2 �)E��F& ��+�%2D���?�@#������ �����������)E�(%��� ,�����+,��CG#D������ # �&)*� #G���)E���E�&'����� ���+,�$#�%$��02@��(�# ���H( ���)&� #���������,B�,��2 �%�,���H�IH- &
��#�(�'�C ## �����#�0�� ������� ����������$��# �����#�0������� ���2��- ��������� ��� �������$��@��)�%�#�12%��������� ����)�# ��� � ����2@��'��J�����2 ���C��#&��%K@����% &���%#)�K�%&������L�MNOP��)��$#2�QR����S���9�MT��S���UV�W��S�8�X�Y���$�����U�:���+�%�� ����������K@��� �)���E
������������ ���
�A�#�0)��������C1��"2- ������ ����E�,B�#�12%����A�#�0)������0�K� �@Z� �KZHD[ �D��
�������������������
�� (�)�K� �@ZK2 � #���������D)@������#� (�
����������� �double sqrt(double x)
����������
x������������ ��������������� �����
��������
������ ����������
76������������� ������������������������������������ IPST-MicroBOX
��������������������� (�)�K� �@ZK2 �Y\]Y�^�_�`ab_bc����������� �
double exp(double x)
����������x�������������
���������������������
���������������� !"�#�� (�)�K� �@ZK2 ��# �HI %d ��H������������ �
double log10(double x)
����������x����������� ����������������������� !�"��#
�������������������$%&��
����$����������� !"�� (�)�K� �@ZK2 ��# �HI %d �I��%0 DH(�'�� VM����������� �
double log(double x)
����������x����������� ����������������������� !�"��� '���
�������������������$(��
���������� ������������������������������������ IPST-MicroBOX ��77
�����������������!%K� �@ZK2 ����##� �)������������ �
double pow(double x,double y)
����������x�������!�"y������'�)������
��������������������*
����&������������'(K� �@ZK2 � ��MY�� �D��+#Z%HDH���D)@������#� (������������ �
double sin(double x)
����������x����������� ����������������+,(��-��� �."�/01"���/"
������������+,(�������
����)�����������*!�K� �@ZK2 � 8:��MY�� �D��+#Z%HDH���D)@������#� (������������ �
double cos(double x)
����������x����������� ����������������2%+,(��-��� �."�/01"���/"
������������2%+,(�������
78������������� ������������������������������������ IPST-MicroBOX
����+����������� �(K� �@ZK2 ��RMTYM���� �D��+#Z%HDH���D)@������#� (������������ �
double tan(double x)
����������x������������ ����������������34(&�(3� �."�/01"���/"
������������34(&�(3������
����,�������������'(K� �@ZK2 �N98���MY�� �D��+#Z%HDH���D)@������#� (������������ �
double asin(double x)
����������x������������ ����������������452+,(�� �."�/01"���/"
������������452+,(��������.����+,(67 8�9
�����#������������*!�K� �@ZK2 �N98�8:��MY�� �D��+#Z%HDH���D)@������#� (������������ �
double acos(double x)
����������x������������ ����������������2%+,(�� �."�/01"���/"
������������4522%+,(��������.����2%+67 8�9
���������� ������������������������������������ IPST-MicroBOX ��79
������������������ �(K� �@ZK2 �N98��RMTYM��� �D��+#Z%HDH���D)@������#� (������������ �
double atan(double x)
����������x������������ ����������������34(&�(3� �."�/01"���/"
������������45234(&�(3�������.����34(67 8�9
������������������ �(�K� �@ZK2 �N98��RMTYM��� �D��+#Z%HDH����[.�2@����#� (������������ �
double atan2(double x,double y)
����������x������������:;y��������������"
������������<52�34(&�(3������=*�.����34(67 8�=*9
������������������'(�K� �@ZK2 ��X�Y9W:V�8���MY����D)@������#� (������������ �
double sinh(double x)
����������x������������ ����������������>*?�5@%$,2�+,(�
������������>*?�5@%$,2�+,(�������
80������������� ������������������������������������ IPST-MicroBOX
�����$�����������*!��K� �@ZK2 ��X�Y9W:V�8�8:��MY����D)@������#� (������������ �
double cosh(double x)
����������x������������ ����������������>*?�5@%$,2�2%+,(�
������������>*?�5@%$,2�2%+,(�������
����������������� �(�K� �@ZK2 ��X�Y9W:V�8��RMTYM�����D)@������#� (������������ �
double tanh(double x)
����������x������������ ����������������>*?�5@%$,2�34(&�(3
������������>*?�5@%$,2�34(&�(3������
�����&�����������*�' K� �@ZK2 �@�# �,A�[.� E��������[�H�%����������� �double ceil(double x)
����������x������������ :"�/ ��"�� ����"A
����������� ��B��C�����0D�:;��)"�����
���������� ������������������������������������ IPST-MicroBOX ��81
�����)�����������- !!�K� �@ZK2 �@�# �,A�[.���������[�H�%����������� �
double floor(double x)
����������x������������ :"�/ ��"�� ����"A
����������� ��B��C�����0D�:;�������
�����+�����������-�!.�,B��A�#�0)��( ��&'���� �[.�������[�H�%���K2 ����������� �
double fmod(double x,double y)
����������x��������:;y����������"
��������:;C�����.�������=*
�����,������������!.-K� �@ZC� �@��DG%$���[.�������[�H�%�&'��$�#��K�,��#������������� �
double modf(double x,double * y)
����������x����� �� :"�/ ���������E/�����0�F��#y�����01"��'�):; ��B��C��E/�����0�F��#�����
��������C��""�G ������8E��/����01"'"����� H��I%J@$�9
82������������� ������������������������������������ IPST-MicroBOX
����������� �'("�����C1#�12%����A�#�0)������0���# �C)# ��#���@#)�� ��)#���(�'��D�H���- . �/
����������������� ��*��K��( �)#���D)@�� ��1- ���� ��)#������#� (������������ �
char *strrchr(const char *s, int c)
����������c����������F ���������.�K�/L"��/�����F�+� ���H����."�s�������/�����F �����."�
����������"���E�������������F�2�E�����B ��#CF��"����MNOO
����������������� �*��K��( �)#���D)@$�#�1- ���� ��)#������#� (������������ �
char *strchr(char *s, int c)
����������c����������F ���������.�K�/L"��/�����F�+� ���H����."�s������/�����F �����."�
����������"���E�������������F�2�E�����B ��#CF��"����MNOO
����������������� �*� D2�� ��)#������ �@�#)������������ �
char *strcat(char *p1, char *p2)
����������p1�������/�����F'P�."��p2�������/�����F'P�.���
����������"���E���������?7� Q�/B����/�����FL. � �������)"C����������/��/�����F�?R
���������� ������������������������������������ IPST-MicroBOX ��83
����$������������ �(*� D2�� ��)#������ �@�#)�D %C� �@�D)@���#� (������������ �
char *strncat(char *p1, char *p2, int n)
����������p1�������/�����F'P�."��p2�������/�����F'P�.���n�������� ���F#PC��""�������F ���������L.�"�� ����
����������"���E���������?7� Q�/B����/�����FL. � �������)"C����������/��/�����F�?R
����������������� �*�/K)��#� ��)#�������������� �
char *strcpy(char *p1, char *p2)
����������p1�������'�)��/�����F0��/ ��p2�������/�����F ���������������
����������"���E���������?7�Q�/B����/�����FL. �C�������������/�����F�?R�B0/���?7
����&������������ �(*�/K)��#� ��)#���+����1C� D)@�)#������D���# �K)��#����������� �
char *strncpy(char *p1, char *p2, int n)
����������p1�������'�)��/�����F0��/ ��p2�������/�����F ���������������n�������� ���F#PC��""�������F ���������������
����������"���E���������?7�Q�/B����/�����FL. �C�������������/�����F�?R�B0/���?7
84������������� ������������������������������������ IPST-MicroBOX
����)������������ �*���,���������� ��)#�������������� �
int strcmp(char *p1, char *p2)
����������p1�������'�)��/�����F'P�E��p2�������'�)��/�����F'P� �����
����������������F ��'�)Q�/�?7�E�F�?R�. ��"��" P�0�F���CF��"���01"�S�E����������#�����F ��'�)Q�/�?7T?R
CF��"���01"���#��E������?7U?R�CF��"���01"����#
����+������������ �(*���,���������� ��)#������� % �!#� (�C� �@�D)@�)#������D���# ��,��������������������� �
int strncmp(char *p1, char *p2 ,int n)
����������p1�������'�)��/�����F'P�E��p2�������'�)��/�����F'P� �����n�������� ���F#PC��""�������F ���������L.�"�� �0��/# �/#
����������������F ��'�)Q�/�?7�E�F�?R� . ��"��" P�0�F������.��#�(���E��CF��"���01"�S�E����������#
�����F ��'�)Q�/�?7T?R�CF��"���01"���#��E������?7U?R�CF��"���01"����#
����,������������ � �(D�@C���K@ %� @���� ��)#�������������� �
int strlen(char *p1)
����������p1������'�)��/�����F ��"�� ���C��#
����������"����� /������/�����F
���������� ������������������������������������ IPST-MicroBOX ��85
����������� . '0���A�#�0)��������C1��"2- ������ ����E�,B�#�12%����A�#�0)������0�$,�����%"��",$��D2 �J�$��� �
�2@��� (�)�K� �@Z� �KZHD[ �D��
����������������� !'$,��� ��)#���]$��#�Ec,�,B����C� �@��DG%0�H� �M������������ �
int atoi(const char *s)
����������s�������/�����F ���������E0��B001"��C��""�G
����������C��""�G '"��� ,(3� ��B��C�����E0��
����������������� ! $,��� ��)#���]$��#�Ec,�,B����C� �@��DG%0�H� V:MT����������� �
int atol(const char *s)
����������s�������/�����F ���������E0��B001"��C��""�G
����������C��""�G '"��� $%(&� ��B��C�����E0��
����������������� !-$,��� ��)#���� ]$��#�Ec�,�,B�����[�H�%����������� �
double atof(const char *s)
����������s�������/�����F ���������E0��B001"�� :"�/
���������� :"�/ ��B��C�����E0��
86������������� ������������������������������������ IPST-MicroBOX
����$������������ � !.$,��� ��)#���]$��#�Ec,�,B�����[�H�%����������� �
double strtod(const char *s,char **endptr)
����������s�������/�����F ���������E0��B001"�� :"�/ endptr�������'�)�G#���E."�����������#���01"��E0���/"�����
��������01"�� :"�/ ������E0��01"B0�/���� #H�A�CF��"����MNOO����# � ����(I?35�E�����B �� #H�A�.���E0��B �
B��CF��"E����� ������������# �/����(I?35
����������������� � ! �� (�)�$,��� ��)#���]$��#�Ec,�,B����C� �@��DG%0�H� V:MT����������� �
long strtol(const char *s,char **endptr,int base)
����������s�������/�����F ���������E0��B001"��C��"���G '"��� $%(&endptr�������'�)�G#���E."�����������#���01"��E0���/"�����base�����!�" ��CF���."�L"���E0��'�"�RV�WV�7S�.����7X�01"��"
��������01"��C��""�G '"��� $%(& ������E0��01"B0�/���� #H�A�CF��"����MNOO����# � ����(I?35�E�����B �� #H�A�.���E0��B �
B��CF��"E����� ������������# �/����(I?35
���������� ������������������������������������ IPST-MicroBOX ��87
����&������������ � !1 $,��� ��)#����]$��#�Ec�,�,B����C� �@��DG%0�H�eM��TMYU�V:MT����������� �
long strtoul(const char *s,char **endptr,int base)
����������s�������/�����F ���������E0��B001"��C��""�G '"��� $%(&endptr�������'�)�G#���E."�����������#���01"��E0���/"�����base�����!�" ��CF���."�L"���E0��'�"�RV�WV�7S�.����7X�01"��"
��������01"��C��""�G '"���J(+,&(�I� $%(&
������E0��01"B0�/���� #H�A�CF��"����MNOO����# � ����(I?35�E�����B �� #H�A�.���E0��B �B��CF��"E����� ������������# �/����(I?35
����)�����������' !�$,�����C� �@��DG%0�H� �M��,�,B�� ��)#�������������� �
char *itoa(int val, char *s, int radix)
����������val������������ ���������"��B0E0��s������F�/�.�����/"����� ��"�� ��G#�����/�����F ��B��C�����E0��radix�����!�" ��CF���."�L"���E0��'�"�RV�WV�7S�.����7X�01"��"
����������"���E����������/�����FC�����E0��
88������������� ������������������������������������ IPST-MicroBOX
����+�����������1 !�$,�����C� �@��DG%0�H�eM��TMYU��M��,�,B�� ��)#�������������� �
char *utoa(unsigned int val, char *s, int radix)
����������val������������ ���������"��B0E0��s������F�/�.�����/"����� ��"�� ��G#�����/�����F ��B��C�����E0��radix�����!�" ��CF���."�L"���E0��'�"�RV�WV�7S�.���7X�01"��"
����������"���E����������/�����FC�����E0��
����,����������� !�$,�����C� �@��DG%0�H� V:MT�,�,B�� ��)#�������������� �char *ltoa(long val, char *s, int radix)
����������val������������ ���������"��B0E0��s������F�/�.�����/"����� ��"�� ��G#�����/�����F ��B��C�����E0��radix�����!�" ��CF���."�L"���E0��'�"�RV�WV�7S�.����7X�01"��"
����������"���E����������/�����FC�����E0��
�����#�����������1 !�$,�����C� �@��DG%0�H�eM��TMYU� V:MT�,�,B�� ��)#�������������� �char *ultoa(unsigned long val, char *s, int radix)
����������val������������ ���������"��B0E0��s������F�/�.�����/"����� ��"�� ��G#�����/�����F ��B��C�����E0��radix����!�" ��CF���."�L"���E0��'�"�RV�WV�7S�.����7X�01"��"
����������"���E����������/�����FC�����E0��
���������� ������������������������������������ IPST-MicroBOX ��89
�����������������. !� �-$,������[�H�%,�,B�� ��)#������",$���[-]dd.dd +�����U�K'�D)@���d ��H������������ �
char *dtostrf(double val, char width, char prec, char *s)
����������val������������ ���������"��B0E0��width�����C��"".���������� �)�. �L"���E������8�� B�����CF�/�/� 0��#L.�L�����/�9prec�����C��"".������ :"�/ L"���E0��s�����F�/�.�����/"����� ��"�� ��G#�����/�����F ��B��C�����E0��
����������"���E����������/�����FC�����E0��
�����������������. !� ��$,������[�H�%,�,B�� ��)#������",$���[-]dd.dde±dd +������U�K'��D)@���d ��H�
$���Y�K'�����d ��H�����##� �)��@��±dd��������
RYSSZSS�CF�H�E0��01"�RZY�[SY����������� �
char *dtostre(double val, char *s, unsigned char prec,unsigned char flags);
����������val����������� ���������"��B0E0��s������F�/�.�����/"����� ��"�� ��G#�����/�����F ��B��C�����E0��prec� L'��F#PC��"".������ :"�/ L"���E0��flags� L'����."��H0E##������. �/L"���E0��
������������� ��������������������������� !"
����������01"���#�CF�"'�������7�'���E "���E���������. �/��� ��01"#�"�)"�E�����01"����#�GCFL��������. �/�#���"."���� 0���
����#�$%&'������ �������������������(�)��� !"
����������01"���#�CFB ��"'�������7�'���E "���E���������. �/��� ��01"#�"�)"�E�����01"����#�GCFL��������. �/�#���"."���� 0���
����������"���E����������/�����FC�����E0��
90������������� ������������������������������������ IPST-MicroBOX
�������������������(.�12%K2 D)@���02@�D)E�$D2�f�! ��g_S`h`����������� �
int rand()
����������C��""�G '"��� ,(3� ��B��C������P�
�����$��������������(.#� (�K2 D)E�D����# ��12%����A�#�0)��� 9RMU����������� �
void srand(unsigned int seed)
����������seed����."������)���"L"����P�
�������������������(.!��12%K2 D)@���02@�D)E�$D2�f�! ��_Sa�`S�bgSh�`����������� �
long random()
����������C��""�G '"��� $%(&� ��B��C������P�
�����&��������������(.!�#� (�K2 D)E�D����# ��12%����A�#�0)��� 9RMU:Q
����������� �void srandom(unsigned long seed)
����������
seed����."������)���"L"����P�
���������� ������������������������������������ IPST-MicroBOX ��91
��$�������* /�����A�#�0)��������C1��"2- ������ ����E�,B�#�12%����A�#�0)������0�D�@C����$��$,���)#���D2 �J
��$�������������'�� (1�D�@C���K2 ����)#���@2 �,B��)#����% 0H#- ����iNj�! ��ikjS�iRj�! ��iljS�ifj�! ��imj�(�'�%2����������� �
int isalnum(int c)
����������c������� H������F ��"�� ���C��#
����������"���01"�\7]� ��� ��������F�2�01"� �'��K�/L"�^<_�����^`_V�^4_�����^a_V�^S_�����^b_��"���01"�\S]����B �L'�
��$�������������'�� ���D�@C���K2 ����)#���@2 �,B��)#����% 0H#- ����iNj�! ��ikj�(�'��iRj�! ��ilj(�'�%2����������� �
int isalpha(int c)
����������2������� H������F ��"�� ���C��#
����������"���01"�\7]� ��� ��������F�2�01"� �'��K�/L"�^<_�����^`_�.����^4_�����^a_��"���01"�\S]����B �L'�
��$�������������'���*''D�@C���@2 �,B��()�$��#�E�]%�K2 D)E�$D2�f\_f�! ��f\`nc�(�'�%2����������� �
int isascii(int c)
����������c������� H������F ��"�� ���C��#
����������"���01"�\7]� ��� ����2�01"�.��E����)�E�F��"���01"�\S]����B �L'�
92������������� ������������������������������������ IPST-MicroBOX
��$�$�����������'�.'"' D�@C���@2 �,B��)#����% 0H#- �����ifj�! ��imj�(�'�%2����������� �
int isdigit(int c)
����������c������� H������F ��"�� ���C��#
����������"���01"�\7]� ��� ��������F�2�01"� �'��K�/L"�^S_�����^b_��"���01"�\S]����B �L'�
��$�������������'�1����D�@C���@2 �,B��)#����% 0H#- ����iNj�! ��ikj�]�)#.�D)@&H%&��(o2c(�'�%2����������� �
int isupper(int c)
����������c������� H������F ��"�� ���C��#
����������"���01"�\7]� ��� ��������F�2�01"� �'��K�/L"�^<_�����^`_��"���01"�\S]����B �L'�
��$�&�����������'� !%��D�@C���@2 �,B��)#����% 0H#- ����iRj�! ��ilj�]�)#.�D)@&H%&���G#c(�'�%2����������� �int islower(int c)
����������c������� H������F ��"�� ���C��#
����������"���01"�\7]� ��� ��������F�2�01"� �'��K�/L"�^4_�����^a_��"���01"�\S]����B �L'�
���������� ������������������������������������ IPST-MicroBOX ��93
��$�)�����������'��.'"' D�@C���@2 �,B��)#����% 0H#- ����iNj�! ��ikjS�iRj�! ��ilj�(�'��ifj�! ��imj�(�'�%2�]�� � �
�(%'��#)�� ��RVMeQc����������� �
int isxdigit(int c)
����������c������� H������F ��"�� ���C��#
����������"���01"�\7]� ��� ��������F�2�01"� �'��K�/L"�^<_�����^`_V�^4_�����^a_�.����^S_�����^b_��"���01"�\S]����B �L'�
��$�+�����������'����*�D�@C���@2 �,B��)#����% 0H#- ����f\fm�! ��f\fp�(�'��f\_f�� ��#GK'��02��@2 ��(�'�%2����������� �int isspace(int c)
����������c������� H������F ��"�� ���C��#
����������"���01"�\7]� ��� ��������F�2�01"� �'��K�/L"�S�Sb�����S�Sc�.����S�RS��"���01"�\S]����B �L'�
��$�,�����������'�*( � D�@C���@2 �,B��)#����% 0H#- ����f\ff�! ��f\`q�(�'�%2����������� �int iscntrl(int c)
����������c������� H������F ��"�� ���C��#
����������"���01"�\7]� ��� ��������F�2�01"� �'��K�/L"�S�SS�����S�de��"���01"�\S]����B �L'�
94������������� ������������������������������������ IPST-MicroBOX
��$��#�����������'���'( D�@C���@2 �,B��)#����% 0H#- ����f\_f�! ��f\`q�(�'�%2����������� �
int isprint(int c)
����������c������� H������F ��"�� ���C��#
����������"���01"�\7]� ��� ��������F�2�01"� �'��K�/L"�S�RS�����S�de��"���01"�\S]����B �L'�
��$��������������'��1(* D�@C���@2 �,B��)#����% 0H#����K�'���(% �@��KD��(�'�%2�� ��,��#���@�� �K�'���
(% ���%H+K����]rcS��K�'���(% �K�%% �]Sc�$���K�'���(% �0 ��,�]sc����������� �
int ispunct(int c)
����������c������� H������F ��"�� ���C��#
����������"���01"�\7]� ��� ��������F01"������. �/�����"�E�F��"���01"�\S]����B �L'�
����������� .'!���A�#�0)��������C1��"2- ������ ����E�,B�#�12%����A�#�0)��$,����@����%"���1#�%�� (�)�
DHD2�#)��H�&1Dt�� D�&1D��������� �H�+%"��'��� ����%"�?2 �&���D��1#�%(�'��uNP6�]?"�&)*� � % �!����#�0�� ��A�#�0)�����C)�D���%% �(�- ������ ����������(�'�����#+�D��C #�eR9����� ��C���@#��# ��0�� �% ##@2 � ��#�Z������H�%D��&)*� +,�$#�%c
�A�#�0)���2��(� �J�A�#�0)��- ���� ��U�:���C��(�?��)&I�K�� �#)������� ��� ��UV�W���$����9�MT����� � ��2@%#)�
�� (�)��A�#�0)������2 ���C��������� ����EK'�� ��9�M�v�� ���0���# �$,��� ��)#����,B��",$��D2 �J�%�� �������+���1,)���E
���������� ������������������������������������ IPST-MicroBOX ��95
�������������������'( -$,��� ��)#������",$��D2 �J����������� �int sprintf(char *s, const char *format, ...)
����������s������F�/�.�����/"����� ��"�� ��G#�����/�����F ��B��C�����E0��format����� �H0E##��/�����F ����������-��� ��.��#����#������B0"�)
���������� ��������
f2 L'���#������E����������F�7���fI L'���#�������E##�,(3�!�"��#f� L'���#�������E##�,(3�!�"��#.�f? L'���#�������E##�,(3�!�"��#.�8Q�/ ����gh��S��"��."��9fi L'���#�������E## :"�/ �H0E##f� L'���#�������E## :"�/ �H0E##f+ L'���#�����/�����F
...�������"���."��F�� "��L.��� ��"����#�.��#����#L"��"� i%5j43
��������C��""�����F ��E0��B�� �)�. �
96������������� ������������������������������������ IPST-MicroBOX