�x���x�� ������©��^������O(sh��)Ӌ


©��^�����һ�N���ڱ����o(h��)��·©�����_(d��)���O(sh��)��ֵ���Д౻���o(h��)��·����Դ�ı��o(h��)�b�ã������ϵ�y(t��ng)�������dz���Ҫ�����ã��DZ��C��늿ɿ��ԵĻ��A(ch��)���S����Ӽ��g(sh��)��Ӌ��C(j��)���g(sh��)�İl(f��)չ�����ϵ�y(t��ng)���^늱��o(h��)ͻ���˂��y(t��ng)�Ĕ�(sh��)��ʽ���o(h��)�^��������F(xi��n)����̎��������ĵ����ܱ��o(h��)�^���[1-2]����������PIC18F6585�͆�Ƭ�C(j��)�O(sh��)Ӌ��һ��������©��^������������\�ࡢ����ӛ䛡���(sh��)��(j��)ͨ�ŵȶ�N���ܣ�����Ϸ����ṩ�������Ҿ����^�ߵĿɿ��ԡ�
1 PICϵ�І�Ƭ�C(j��)���c(di��n)
PIC18F6585����Microchip��˾�_�l(f��)�����ƺ����a(ch��n)��PICϵ�І�Ƭ�C(j��)��ԓϵ�І�Ƭ�C(j��)�ļ��g(sh��)���ܾ�������(y��u)�c(di��n)[3]:
��1�������Y(ji��)��(g��u)��PICϵ�І�Ƭ�C(j��)�ڼܘ�(g��u)�ϲ������c����ͬ�Ĺ����Y(ji��)��(g��u)����оƬ��(n��i)������(sh��)��(j��)������ָ������x�����Ҳ��ò�ͬ�Č��ȣ����ڌ�(sh��)�F(xi��n)ָ����ȡ����ˮ���I(y��)��ȫ��ָ��Ć��ֹ�(ji��)���������ڻ����Ķ����������CPU��(zh��)��ָ����ٶȣ����ܴ_����(sh��)��(j��)�İ�ȫ�ԡ�
��2������ָ���RISC�����g(sh��)��ָ��ϵ�y(t��ng)ֻ��35�lָ����W(xu��)��(x��)��ӛ�������⣬Ҳ�o����ľ�������x���{(di��o)ԇ���ġ�����������*�ı��������^�W(xu��)���á�
��3����ַ��ʽ���Ρ�ֻ�мĴ����g�ӌ�ַ��������(sh��)��ַ��ֱ�ӌ�ַ��λ��ַ4�N��ַ��ʽ�����^���������c���ա�
��4���\(y��n)���ٶȸߡ����ڲ����˹����Y(ji��)��(g��u)��ָ����xȡ�͈�(zh��)�в�����ˮ���I(y��)��ʽ��ʹ���\(y��n)���ٶȴ����ߡ�PICϵ�І�Ƭ�C(j��)���\(y��n)���ٶ��h(yu��n)�h(yu��n)����������ͬ�n�εĆ�Ƭ�C(j��)��������8 bit��Ƭ�C(j��)�У�PICϵ�І�Ƭ�C(j��)��Ŀǰ�������\(y��n)���ٶ�zui���Ʒ�N֮һ��
��5�����ĘO�͡���I/O���(q��)��ؓ(f��)�d�����^��(qi��ng)��ÿ���˿�ݔ���ݔ�������zui��ֵ���_(d��)25 mA����ֱ���(q��)��LED����������^�����
��6�� PIC18F6585оƬ����ADC��I2C��SPI���п����˿ڵȣ���������·���������_�l(f��)���㣬����C�Z�Ծ��̣��������ԏ�(qi��ng)�����c(di��n)��
2 �^���Ӳ���Y(ji��)��(g��u)�c����ԭ��
��1��Ӳ���Y(ji��)��(g��u)
©��^�����CPU�в�����PIC18F6585оƬ��©���̖�ęz�y�������������������ɣ����Ɍ��z�y���ı����o(h��)��·��©�����D(zhu��n)�Q�ɺ������Ľ���늉���̖����ͨ�^��̖�������Ŵ�͞V���õ�һ��ֱ��늉����������(y��ng)�Ŀ����·���(q��)�ӈ�(zh��)�л�·���Ԍ�(sh��)�F(xi��n)�Дౣ�o(h��)��·����Դ�Ŀ���Ŀ�ġ���(sh��)�F(xi��n)�^���ǣ���̖�z�y→�V��→�����Ŵ�→�����·→�(q��)�ӈ�(zh��)�л�·→�Д౻���o(h��)��·�Դ����Ӳ���Y(ji��)��(g��u)��D��D1��ʾ��
�D1�и����ֹ��ܷքe�飺
�����������������·�����b�õ�������������ø����ܵ���Ī�Ͻ������Fо�Ĵ��Բ��ϣ��Դ_�����������ݔ����һ���ķ�����(n��i)�������õľ��ԡ�
����̖̎����Ӱ�ϵ�y(t��ng)�ɿ��Ե�������Ҫ�Ǿ�·���l�攵(sh��)���C��������ʱ��·����һ�M��Դ��ͨ�V������ԓ�V������Ҫ�Vȥ����C������������Ȼ���M(j��n)�н�ֱ��׃�Q̎�����Դ_��©��^��������_������
��CPU���@�DZ��b�õĺ��IJ�����PIC18F6585��Ҫ����FLASHROM��RAM��TM2RX��A/D�D(zhu��n)�Q������ͨ�ŵȣ�������ϵ�y(t��ng)��*̎���Ԫ��ϵ�y(t��ng)��ȡָ���Дࡢ��(zh��)�ж�������ɡ����С�A/D�D(zhu��n)�Q����10 bit�D(zhu��n)�Q����20 MHz���l�r����һ���D(zhu��n)�Q�r�g��16μs;FlashROM��RAM��惦���g���Á���ų���͔�(sh��)��(j��)��
�ܔ�(sh��)�a�@ʾ��������·����(sh��)�a�@ʾ�Á��@ʾ��·©�����ϵ�y(t��ng)���l���ӕr�r�g����Ҫ�ɔ�(sh��)�a�(q��)���·��LED��(sh��)�@��(g��u)�ɣ���(zh��)�л�·��Ҫ��led/'' target=''_blank''>��늸��x���^����(q��)���·��(g��u)�ɡ�
�ݴ���ͨ�Žӿ��·������MAXIM��˾��MAX422�U(ku��)չ������ͨ�ſڡ�
���˙C(j��)�ӿ��·���˙C(j��)�ӿ��·��Ҫ��ɱ��o(h��)����ֵ��ϵ�y(t��ng)�ӕr���l�r�g���O(sh��)����
���Դ�·�����Ƭ�C(j��)ϵ�y(t��ng)�ṩ�����Դ��������һ�M����x�Դ��
��2���^�������ԭ��
ϵ�y(t��ng)�_�C(j��)�\(y��n)�к�ϵ�y(t��ng)�O(sh��)��TMR0���r�Д࣬ÿ2 ms�a(ch��n)��һ�ζ��r�Д���̖����Ƭ�C(j��)푑�(y��ng)�@���Д���̖���D(zhu��n)���Д�̎���ӳ����Д�̎���ӳ����Д���RB���Д࣬߀��TMR0�Д࣬Ȼ��քe�{(di��o)�ö��r�Д� A/D̎���ӳ�����I�P̎���ӳ���ϵ�y(t��ng)��A/D�D(zhu��n)�Q�Y(ji��)���c�A(y��)��������ֵ���^�������������ֵ���t�M(j��n)�����l���¹ʈ�̎�������нY(ji��)�������������@ʾ��
3 ܛ���O(sh��)Ӌ
3.1 ܛ���O(sh��)Ӌ���̈D
����Ƭ�C(j��)ϵ�y(t��ng)����20 MHz���l��ÿ1 ms�M(j��n)��һ�ζ��r�Д�̎����ܛ���Y(ji��)��(g��u)���Ρ�ܛ���O(sh��)Ӌ����������RB���Д����(w��)�ӳ����r�з���(w��)�ӳ���A/D�D(zhu��n)�Q�ӳ���(sh��)��(j��)̎���ӳ����@ʾ�ӳ�����C�Z���M(j��n)���O(sh��)Ӌ��
��1��ϵ�y(t��ng)��������Ҫ���ϵ�y(t��ng)�Ķ˿ڡ����r����A/D�D(zhu��n)�Q����������׃�����������ij�ʼ��������ͬ�r���©���ѭ�h(hu��n)�@ʾ���������������̈D��D2��ʾ��
��2���Д����(w��)�ӳ�����Ҫ����(j��)INTCON�Ĵ�����T0IFλ�Ĕ�(sh��)��(j��)�Д�TMR0�Ƿ������������t�D(zhu��n)��TMR0�Д�����ӳ���;����(j��)INTCON�Ĵ�����RBIFλ�Ĕ�(sh��)��(j��)�Д�RB�Ƿ���ݔ��׃������׃���t�D(zhu��n)���I�P�Д�����ӳ����Д����(w��)����������D3��ʾ��
��3�����r�Д����(w��)�ӳ���A/D�D(zhu��n)�Q�ӳ�����Ҫ���A/D�D(zhu��n)�Q�΄�(w��)��1 ms�M(j��n)��1��̎����ÿ���B�m(x��)6�βɘӣ��ɘӽY(ji��)�������(n��i)���Ԫ�����r�Д����(w��)�ӳ���������D4��ʾ��A/D�D(zhu��n)�Q�ӳ���������D5��ʾ��
��4����(sh��)��(j��)̎���ӳ�����Ҫ��ɔ�(sh��)�֞V�������ϵ�y(t��ng)���ɔ_���ܣ���A/D�D(zhu��n)�Q��(sh��)��(j��)ƽ��ֵ���M(j��n)�Д�(sh��)��(j��)���^���_���Ƿ����l�c�ȡ���(sh��)��(j��)̎���ӳ���������D6��ʾ��
��5���I�P̎���ӳ�����Ҫ���˙C(j��)��Ԓ�ṩһ��ͨ���������O(sh��)�ñ��o(h��)�ı��o(h��)����ֵ���ӕr���l�r�g�ȡ�
3.2 �����O(sh��)Ӌ
�������C�Z���O(sh��)Ӌ������o��A/D�D(zhu��n)�Q�ӳ���͔�(sh��)��(j��)̎���ӳ����еĺ����Z��[4]��
��1��A/D�D(zhu��n)�Q�ӳ���
void DataConv�� ��
{ int num;
PORT-D=1; //����A/D�D(zhu��n)�Q
for��num=0;num++;num=6�� //�ɘ�6�Δ�(sh��)��(j��)
{ Delay����;
adresult[num]=AD; //����A/D�D(zhu��n)�Q�Y(ji��)����adresult[]
}
PORT-D=0; //ֹͣA/D�D(zhu��n)�Q
}
��2����(sh��)��(j��)̎���ӳ���
void DataDeal�� ��
{ int i;
result=0; //����A/D�D(zhu��n)�Qzui�K��(sh��)ֵ
for��i=0;i++;i=6��result=result+adresult[i];
//��A/D�D(zhu��n)�Q�Y(ji��)���M(j��n)�Д�(sh��)�֞V��
result=result/6;
if��result>=raluemax��result<=raluemin�� Alarm�� ��;
//���ɘ�ֵ���ڽo����zui��ֵ��С�ڽo����zuiСֵ���t�����M(j��n)�й���̎��
Display�� ��; //����(sh��)��(j��)�M(j��n)�Ќ�(sh��)�r�@ʾ
}
�O(sh��)Ӌ�������^��������h(yu��n)�h(yu��n)��(y��u)�ڂ��y(t��ng)���^����a(ch��n)Ʒ���O(sh��)Ӌϵ�y(t��ng)��PIC18F6585��Ƭ�C(j��)����Ę�(g��u)��һ����(sh��)�r
��(sh��)��(j��)�ɼ�ϵ�y(t��ng)���Ɍ��ɼ��Ĕ�(sh��)��(j��)�M(j��n)�Ќ�(sh��)�r�������\(y��n)���̎�����@�ø��N��ͬ�ı��o(h��)���ԣ������ģ��x���Ժ�����Ժá����y�����O(ji��n)�غͱ��o(h��)��һ������ͨ�^ͨ�Žӿ��cӋ��C(j��)(li��n)�W(w��ng)��(g��u)�����ܻ��ıO(ji��n)�ر��o(h��)�c��Ϣ����ϵ�y(t��ng)�������^�ߵĹ��I(y��)ʹ�Ãrֵ��