[LinuxFocus-icon]
��ҳ  |  վ����ͼ  |  ����  |  ����

���� | �����ڿ� | ���� | ����LF
This document is available in: English  Castellano  ChineseGB  Deutsch  Francais  Italiano  Russian  Turkce  

[Photo of the Author]
by Guido Socher (homepage)

��������:

Guidoϲ��Linux������Ϊͨ���������ھ�ϵͳ��DZ�������κ��˶����Բ������С�


Ŀ¼:

 

��Ƭ���ɿص�ֱ����Դ

[Illustration]

ժҪ:

��ƪ�������ҵĵ���ƪ�й�AT90S4433��Ƭ�������·����� LinuxFocus�ϡ��ҽ������Ķ������Ĺ�ȥ�Ĺ���ATMEL��Ƭ�����̵����£�

  1. ���ν�����װ��ʹ��AVR�������������������Ĺ̼���������
    2002��3��, ʹ��GCC����AVR��Ƭ������
  2. �����������Լ���ӡ�ư壺
    2002��5��, һ��Linux��������Lcd��������
  3. ��������һ��ֱ����Դ�����䣺
    2002��9��, һ������Lcd��ʾ��RS232�ӿڵ�1Hz-100MhzƵ�ʼ�
�����Ĺ�������һ����Ҫ�Ķ�����һ���ȶ��ɿ���ֱ����Դ�� ����ƪ����������Ҫ��һ��������ֱ����Դ�� ���ǵ�Ƭ���ɿصġ�����һ��Lcd��ʾ�������Դ�����Linux������ͨ��RS232���ڷ������������� �����Ƶĺܰ���

��ƪ���»���ʾ��Ƭ�������εĶ��Ŷ��ա����ɲ��Ǽ򵥵�һ����·��
����������һ���򵥵�ֱ����Դ��ô�����Կ�һ�� ���򵥵�ֱ����Դ�� �������򵥵�ֱ����Դ��LinuxFocus ���ᵽ�ĵ��������Ѿ������ˡ����ǣ�����Linux����������մ�ߡ�
��ʹ��������һ�����򵥵�ֱ����Դ���Ϳ����ˣ���ҲҪ��һ�����£������Զ�����Ƭ��������Ȥ�ķ��档



 

����

������Ƭ���ɿص�ֱ����Դ����һ���򵥵ĵ�·���������ܱ�֤���õ���ʱ�� ��û�У��������ڵġ������ȶ��ɿ��������ڼ�������Ҳ�Ǻ���Ȥ�ģ� ��Ϊ����ѧ��������û��һ��ģ/��ת��оƬ�����������β���һ��ģ��ֱ����Դ��

����Ҫ�ܶ���Ԫ�����������Ƕ������������������Ѳ��ࡣ
 

����Ҫʲô��

������Ԫ���嵥 ���г�����������Ҫ��Ԫ��������Ҳ����������ԭ��ͼ���ҵ�Ԫ����������ֵ��
���ǵĵ�Դ��3���汾�����˱�ѹ����һ�����費һ���⣬�����ϻ���һ���仯�� ���������⣬���Ķ�һ����
  1. 0-16V ��������2.2A
    ��һ��15V 2.5A��ѹ��
  2. 0-24V ��������2.2A
    ��һ��24V 2.5A��ѹ��
  3. 0-30V ��������3A
    ��һ��30V 3A��ѹ��
ע�⣺�������������е�·�嶼��Ҫ����һ��9V, 100mA��ѹ����  

��·ͼ��ӡ�ư�

��ʹ��eagle ��Linux�汾������ԭ��ͼ��ӡ�ư��ġ�eagle�ļ�Ҳ������tar.gz�����������ˡ� �����������º���ָ���ĵط���������

��·��Ϊ2���֡�һ����Ҫ�IJ��ֺ���һ���ֿ�����Դ�������� ���������Կ������������ĵ�·ԭ��ͼ������ͨ���������ӵ�һ����

����·ͼ(�����ɷŴ�):
[main schematic]

�ӽ��ߵ�ѹ���ֵĵ�·ͼ(�����ɷŴ�):
[power part schematic]
�����ھ���������һ������(�����ɷŴ�):
[push buttons schematic]

����·�壬����ͼ(�����ɷŴ�):
[board]


�������Ӻ��ʺ�ҵ�����Ӱ����ߡ���ɫ�IJ���Ҫ����ʴ���ġ���ɫ�ı�ʾ���ߡ� ���������������������ף�����Ҫ̫��ȷ�ġ��������ڰ��ϲ������̵��ߣ���ɫ�ģ��� ��������eagle�Ͽɲ��ɡ�

�ڸ�ѹ��·��ֻ�к��ٵ�Ԫ��������������һ�����������������ְ����кܶ��Ĺ��ף��� �����͵�Դ��ͨ��JP2��JP3��ͷ���������ӡ� ����ע�⵽�����ĵ������ӵ���ֱ����Դ�������� ��Ҳ��������Ҫ2����ѹ����ԭ����һ�����ڵ�Դ���ϣ�һ���Ǻ͵�Ƭ�����˷���һ�𣩡�  

����ԭ��

��һ��������ԭ��ͼ�����Կ��������߼��Ϸ�Ϊ2�����֣�һ�������ڵ�·ͼ�б��� ���������ơ�����һ�����ֱ��С���ѹ���ơ���������2�������Ŀ��ƻ�·�� һ����·����������ѹ��һ·��������0.275ŷķ�ĵ����ϣ�ѹ�����ڵ����� ��2������ͨ��������D2��D3����ϵ����һ������Щ�������ڵ�·�е����þ������ֵ�·�еĻ���һ���� ��������������ô�������Ƶ�·�ή�͵�ѹֱ��ij���޶�ֵ���������ڵ��������������£� ��ѹ���Ʋ��ֻ���������������ֱ����ѹ��

�������߼��dz����ģ���Ϊ������T3ͨ��R19������+5V�� ��������û��D2��D3�������˷ŵ�·���ڣ������Եõ������������� ���Ƶ�·��ͨ����СT3������ѹ����С�ɽӵأ�������������ѹ�ġ�

��ѹ���ƻ�·ͨ������IC6B��5�ŵĵ�ƽ��ʵ�ֵ�ѹ�����仰������ ��5�ĵ�ѹ������R15��R10��R16�����ķŴ�ϵ���˵�ѹ������ ��������Ҳ��һ������ͬ������R30�ϵ�ѹ����������������������

Ϊ�˰�������ѹ���ߵ���������ij����ֵ��������Ҫ����2�����ĵ�ѹ ��IC6B��5��R30�ϵ�ѹ�����������ǵ�Ƭ��Ҫ������.... ���ǣ���Ƭ����ô����������һ��ֱ����Դ�أ�����ͼ��
[pwm]

���ῴ��һ�������ź����α���һ��ֱ���źŵġ� ���������㣬��Ҫ�ѣ����壩�ź�ͨ��һ����ֹƵ�����ź�Ƶ��1/100 �����߱�100���󣩵ĵ�ͨ�˲����� �������ǵĵ�Ƭ��������4Mhz����������ôһ����ͨ�˲������������ġ� ��ʹ����ʹ�����������źţ������Կ��Եõ���С��khz���źŲ����˲��������ɺ�С��

��ͼƬ�Ϸ����·��м��ĵ�·ͼ���ֽ����������ȵ��ơ� ͨ���ı������ij������ǿ��Կ����˲�������ֱ����ѹ��

���������ǿ���ʹ�������źŲ���������ֱ����ѹ��

AT90S4433��Ƭ����2���ڲ��ļ�������һ��16λ����һ��8λ���� 16λ�ļ�������PWM���������ȵ��ƣ��������� ���ڵ�Ƭ���ڲ���Ӳ��ʵ����10bit�����������ȵ��ơ� 8λ��û�е������ǿ���ʹ������ģ��ʵ�֡������ٶȻ��ǹ��졣 ����ʹ��16λ�ļ�������ʵ�ֵ�ѹ���ƣ�����ʵ��10λ���ȣ�1023�ȷ�������ѹ�� 8λ�������������Ƶ���������8λ���ȣ�����255�ȷ�1��3000mA�ĵ����� ����˵���Եõ�12mA�����߸��٣��ĵ����������ڵ���������˵���㹻�ˡ�

����ʣ�µIJ����ǵ�Դ��Ӧ���֣��ο���ѹ���֣�7805�����������Dzο��㣩 ���б�֤�����ص�Դʱ����Դ���ֲ��������֡�  

����

��Ƭ���������漰���ܶ෽�棬�����Դ�ԭ�ȵ������еõ���Щ��Ϣ������rs232���ڣ� lcd��ʾ���ж�ģʽ�ļ��������������Կ�������ҳ�棺
linuxdcp.c.

�������ǹ�ע����������PWM���������ȵ��ƣ��� ������PWM�У��õ��˱���ipwm_phase�ͱ���ipwm_h�� ����ʹ8λ�ļ������������ж�ģʽ�£�ÿ���ж��������жϴ������� ��SIGNAL(SIG_OVERFLOW0)���ᱻ���á����жϴ�����������Ǽ�������ipwm_phase �������Dz���1����0��֮�������������������ܼ򵥡�

���������ӵ������������㶮��Щ����������Ҫ�Ķ�4433���ֲᣨ�������IJο�����

4433��8λ�ĵ�Ƭ���������ļ����������ޡ������û�������ѹ��С�ľ�ȷ���������� ��Ҫ24λ�ij����ͳ˷���

���ǵĵ�Դ��7��������6���������������͵�ѹ��С����һ�������ǡ��������� ʹ�ô�������ʱ������������ʱͣ����Դ��ͬʱ���ڵ�ѹ�͵��������ޡ� ��Щ������״̬���������б����������ˡ�����ignorebutton���ڰ���ȥ���� ������ָ��������ʱ���������������ġ����Ǹо������ģ����ǵ�Ƭ�����кܿ죬 ���������������أ�������...��Щ״̬�ģ� ����ignorebutton������һ��ֵ��ȥ����������ȥ�����ˡ�  

����ӡ�ư�

���壺
[main board]
��Դ��Ӧ���֡�ľ�ߣ��ײ����Ϸ���ǰ��ʹ���˱�����Ƭ��
[box]
ǰ����
[front]
����������һ��postscript�ļ�linuxDCpower.ps��������·���õġ� �Ҹ��˸о����ĺ����е�С��������ǿ���Ƽ�������֮ǰ�Ѻ���Ū���� ������������������ǰ���������ҵ��� 2002��5�£� linux��������Lcdǰ������
��ô����һ�����˵��Ǻÿ��ĵ�Դ���������Կ��� "2002��9�£� ����LCD��ʾ��RS232�ӿڵ�1Hz-100MhzƵ�ʼ�"�� �����Կ��������ĺ��Ӻ�ǰ������ͼƬ�������ɷŴ���  

����

���κεĵ�·һ�����������ú󣬲�Ҫֱ�����ӵ�Դ����Ӧ��һ��һ���IJ������� �������źá������������ҵ�������·ʱ�Ĵ�����
  1. ������·��������Ԫ����װ�뵫�Dz�Ҫ��ICоƬװ�������ϡ�
  2. ��һ��9���ĵ��أ��������ӵ�·ͼ�б�ע��AC_POWER����ͷ�Ľ�2�͸������ӽ�1�� ��һ����ѹ��������max232�Ľ�8�ͽ�16֮���ĺ͵�Ƭ����7�ͽ�8�ĵ�ѹ�� ���˷������ᷢ����������Դ�ﵽ9����
  3. ��9������1�Ž�������2�Ӹ�������һ���˷ŵĸ���Դ���ᷢ���Ǹ�9�������ӡ�
  4. ����ǰ���IJ���ͨ���ˣ���Դ������ͨ���ˡ������� �Ϳ��԰�max232�͵�Ƭ��оƬ�嵽�������ˡ�
  5. �ٴ�ʹ��9���������ӡ���������5����Դ���й�Ӧ�ˡ� ���ӱ�����һ���Ӷ˼��������ڣ�һ�����ӵ������ϵı��̲�����
    ���������������ص�ַ���ο����� ����������Ŀ¼���Ҽ��룺
    make avr_led_lcd_test.hex
    make testload
    make ttydevinit

    �������������ڰ����������ˡ�lcd�ϻ���ʾ��hello������ɫ��led����˸�� �����������˴��ڵ����ļ������ϣ������Կ�����ok����ӡ����Ļ�ϡ� ��ʹ��ttydevinit��ʼ�����ڣ������ô���1�� ����cat /dev/ttyS0������ʹ�ô���2������cat /dev/ttyS1����
  6. ������װ��Դ���ֵ��Dz�Ҫװ����ѹ���� ��9���������ӵ���ѹ�����ĵط��� �������ӵļ��ԣ���4700uF�ĵ����ܻᱻ��ѹ��9���� �õ�ѹ����һ�¡�
  7. ���еIJ��Զ�ͨ��������������һ�����ߡ� Ȼ�������ӱ�ѹ�����ϵ硣 ��Ϊ�˷�û�в嵽��������������õ���Դ��������������ѹ�� ��һ����������Ҫע�ⲻҪ��·�������յ�·���ģ� ��Ϊû�ж�·������
  8. �ϵ硣���˷Ų嵽��������ӱ��̵��£��ϵ磬���룺
    make
    make load
  9. ������Դ��Ӧ���������еĹ��ܡ�ע�����DZ��̵������ӵ�ʱ���� ������ѹ��һ���½������������õ���ȷ�����������͵�ѹ�Ļ��� ��Ҫ��������
 

�����������Լ��ĵ�Դģ��

���ῴ�����������ᵽ��3����ѡ���������������õı�ѹ���� Ĭ�ϵ���16V, 2.2A�ġ� �������仯����Ҫ�༭�ļ�linuxdcp.c ������:
MAX_U��IMINSTEP��MAX_I�� ��������������3A�������������ں���set_i�������Ըı��̶ȡ� �����кܺõ�ע�������Կ�����Щ����Ӧ���޸ġ�

��������һЩ�����ĵ�Դģ����ͼƬ���������е��Ѿ����Ǻ����á� ��Щʱ����ֵ��Ͷ�ʣ���Ϊ�����õĵ�Դ���Ǻܳ��õġ�

[front view]

[top view]
 

����ʹ������

��������ֱ����Դ�Ǻܼ򵥵ġ�����4�����������ڵ�ѹ�� ����2����ÿ��һ���ϵ�/�µ�1������2����ÿ��һ���ϵ�/�µ�0.1���� ����������Ҳ����ʹ��2�����������ڡ����ǵ������ڲ������Եġ� ����С�ĵ���ֵ��ÿ��һ�¿��Ե���50mA������200mAʱ���� ÿ��һ�¿��Ե���100mA������1A��200mA�� �����ӣ�������ʹ��2�������������������̡�
��������������ʱ�ص���Դʱ�����´�����ʱ���ð��趨ֵ���趨һ�顣
��ɫ��led��ֱ����Դ�ﵽ����ʱ���������ڴ���ʱ����˸��
ʹ��rs232����ascii����������ȫ����������Դ�� ����������ʱ��Ч�ģ�

u=X ���õ�ѹ (����: u=105 ���õ�ѹΪ 10.5��)
i=Xmax ������������ (���磺i=500 ���õ���������500mA)
s=1 or s=0 ������
u=? or i=? or s=? ��ӡ��ǰ���á� ����������ʹ��Դͨ�����ڷ������������ַ�����
u: 50 s:0 i: 100 l:0
u: 50����ʾ����5���ص�ѹ�� s:0 ��ʾû�д����� i: 100 ��100mA�� l:0����ʾ��ѹ����û�дﵽ��

ʹ��ascii�ַ���������Ϊ��Դдһ��ͼ�ν����ˡ� Ϊ��ʹ��rs232��������ʹ������������ttydevinit��ʼ������ ������ 2002�꣬Ƶ�ʼ����������������ġ�

������������ԭ��ͼ����2����ѹ�������߼���ƽ�ĵ������ӵ�����ֱ�������ϡ� ����������û�������ģ���Ϊ2����ѹ�������˵�ѹ�� ������Ҫ����������Ϊ�˷ŵķ�����·����Ҫ���������ġ� ����ע��: ����ζ������RS232�ĵ��������ӵ�ֱ���������ϵģ� ���仰˵���������������ֹ���ʱ���� �㲻����ʹ��RS232�������ӵ����ĵط����������ļ������ĵ��ߡ� �ڵ�Դ����һ����RS232�������ӵ�ֱ���������������Ǹ������⡣ ������ʹ�õ��ǵ��ع����ıʼDZ����ߵ�Դ���ֺ�RS232����û������ʱ�� ���Dz������ɶ�·�ġ� ��Ҫ�����������Ż��������ﵽ250mAֱ����Դ���������ޣ� ��ɫ��led���������㷸���ˡ� ��ʹ�㷸�˴���Ҳ�㲻�����ļ������ġ�

 

������ȫ

������·�и���ѹ�����ӵ�������Դ�ϣ�230������110������Ҫ�������Ǹ����ң��� ����ҪҪ��֤һ���ľ�Ե��������û�кͽ�����Դ�ĵ�·���������� ��ô��Ҫ����һ���о�������������һ�β���֮ǰ���������ĵ�·�ľ�Ե�Ͱ�ȫ��  

Ӳ���������ĵ���

Ϊ��Դд�������Ѿ�Ϊ������ѹ�͵���У׼���ˡ� �㼸���������κεĸĶ��Ϳ����ˡ�Ӳ���ĵ���Ҳ�����漰�� 7805��R15��R10��R16��R38��R30��R26�� Ҳֻ����Щ���ֿ���Ӱ����ѹ�͵����������� ��������У���ĸ���һ�㣬�������޸��������߸ı�����ֵ�� ��Ҫע�Ⲣ�ڵı�������Ӱ��������������������ʱҪ����ȥ���� ���������������ں���set_u��set_i�趨�������кܺõ�ע��linuxdcp.c  

�ο�

 

����ƪ���·�������

ÿƪ���¶��и��Եķ���ҳ�档������ҳ����������ύ���ۣ�Ҳ���Բ鿴�������ߵ����ۣ�
 ����ҳ�� 

��ҳ��LinuxFocus�༭��ά��
© Guido Socher, FDL
LinuxFocus.org

����������LinuxFocus������������������
������Ϣ:
en --> -- : Guido Socher (homepage)
en --> zh: Zhangcz

2003-04-06, generated by lfparser version 2.25