
                     COFFEE-HOWTO -- Linux 󿧷
                                       
ߣGeorgatos Photis < [1]gef@ceid.upatras.gr>
ߣCC < [2]ccemail@21cn.com>

   v0.5, 15 January 1998 ڣ5 June 2000
     _________________________________________________________________
   
   Իܲ󿧷ȣLinux ȷʵ
   һ㣬Ŀζɿڣ
     _________________________________________________________________
   
   ںܳһʱڣ֪õ󿧷..... Ҫ
   ѣܳʱڵǰ档Ϊÿ˶֪ϱ̻
   
   
   ҪõƿȻȻơͨζ
    һ ON/OFF رƿȻԴ
   
1. ѡ

     * 1.1 French
     * 1.2 Nescaffe
     * 1.3 frappe
     * 1.4 freddo
     * 1.5 cappuccino ()
     * 1.6 espresso
       
2. ·

     * 2.1 ӵȡ0-5VԴ
     * 2.2 ü̵·
     * 2.3 ˫բܵ· #1
     * 2.4 ˫բܵ· #2
       
3. 

     * 3.1 
     * 3.2 豸
     * 3.3 ͨ Internet 
       
4. ״

5. չ

6. ο

7. 

     * 7.1 
     * 7.2 ĵά
     * 7.3 Ȩ
     * 7.4 ٰ
     _________________________________________________________________
   
   ںܳһʱڣ֪õ󿧷..... Ҫ
   ѣܳʱڵǰ档Ϊÿ˶֪ϱ̻
   
   
   ҪõƿȻȻơͨζ
    һ ON/OFF رƿȻԴ
   
1. ѡ

1.1 French

   ڲҪܶϣֿڳԱкУںܶҵһ
   ѵĿζʹڶĳԱڱдŵʱС
   Щ һеͷСʱдģٸӣƫֿ
   Windows  賿5:00дģЧԱ֤
   
1.2 Nescaffe

   Nescaffe һֱȽŨҵĿȣɿȡǡˮˮƶɡ
   ͨ 1 ׿Ⱥ 1 ǣټһˮһ䣬Ҫ֤ˮ
    ģһˮ㹻ȣͰǵ룬ټӵţζܸһ㡣 
   һЩȿȻ򵥵ĶѾַö......
   
1.3 frappe

   ᵽĿȵһб֡ ʵϣÿȻҪһ
   ˮͱ顣
   
1.4 freddo

   Ƚѣһ Coffee-Faq ο
   
1.5 cappuccino ()

1.6 espresso()

2. ·

   ܵͼ:
   
--------- 0-5V  --------- ~220V   ----------------
|  PC   |===>===|ӻ·|========|     Ȼ   |
---------       ---------         ----------------

   ǵ뷨ǴӵһƵѹȻ̵ͨ˫բܵ·
   ĵӻ·
   
   ѡһ̵·һĿȻʴ200 W 
   һ˫բܵ·
   
   гĵ·ٱԹһΣʹԼееĺ 
   Եѧһû飬㲻ӦЩҪȻһĽ...
   
    220V ѹĲӦ÷ǳСģһӦһʵı˿
   
2.1 ӵȡ0-5VԴ

   һӵԲȡ0-5VԴӣ
   
       DB-25           -----     10 - ACKӦ
                   |   |      9 - D7
        ͼ           |   |                            2 - D0
                         v   v                           v    1 -˲

       ____________________________________________________________
      /                                                            \
      \     13  12  11  10   9   8   7   6   5   4   3   2   1     /
       \                                                          /
        \     25  24  23  22  21  20  19  18  17  16  15  14     /
         \______________________________________________________/

    1 ˲ (߼)
   
    2-9 ߵźţͨһ OUTB Ÿڵ·
   
    10 Ӧź( ACK )ƣԲһжźŸ CPU
   
   
    18-25 ·ˣǵ ( GND ) 
   
   ϸ˵:
   
<=   DB25    Cent   ź          Ĵ
=>  pin     pin               λ      ע
------  ----    ----    --------        ---     -----------------------------
=>       1       1      -˲           C0-     õλ > 0.5us 
=>       2       2      0         D0      СЧ
=>       3       3      1         D1      ...
=>       4       4      2         D2      ...
=>       5       5      3         D3      ...
=>       6       6      4         D4      ...
=>       7       7      5         D5      ...
=>       8       8      6         D6      ...
=>       9       9      7         D7      Ч
<=      10      10      -Ӧ           S6+ IRQ Ӧ󣬵λ 5us
<=      11      11      +æ             S7-     æ//ʱλ
<=      12      12      +ֽ           S5+     ֽʱλ
<=      13      13      +ѡ         S4+     ѡӡʱλ
=>      14      14      -Զע       C1-     λʱԶעһ
<=      15      32      -           S3+     //ֽʱλ
=>      16      31      -ʼ         C2+     õλ > 50us ʼ
=>      17      36      -ѡ           C3-     õλѡӡ
==      18-25   19-30,  

2.2 ü̵·

   򵥵ĵ·:
   

                             Vcc
                              |
                              +------+
                              |    __|__
                           ̵   /^\   1N4002
                             Ȧ  /---\
                              |      |
                              +------+
                              |
                           | /
                 4.7K    B |/  C
    ݽ>-\/\/\/\/---|        NPN : BC547A or 2N2222A
                           |\  E
                           | V
                             |
    ڵ  >--------------+
                             |
                           ӵ

   Vcc ѡӦͬѡ̵ͺŵĵѹһ( ͨ 5V  12V )
   ̵ĹӦɿȻĹʾ
   
   Ʊ֮ͨٷü̵Ȼ÷伫( E  ) 漯
   ( C  ) Ӽ̵һľΪܱƫˣ
   ǵõһĿȡ:-)ܡ1N4002ԱܱⱻӼ̵
   ĵջа㲻ܻܺܿڣұ
   ջ
   
2.3 ˫բܵ· #1

   ֻҪһ򵥵ĵ·ѡĦ MOC301[012] ˫բ
   ͨõ SC141D ˫բһʹáֵ·иŵ
   ҪĵԴ
   
   ΪǸӦƵĵ·:
   

        270     1 +-------+ 6    180
  +5v -VAVAVA-----+       +----VAVAVA-----+-------------- Line Hot
                2 |  MOC  |               |
  TTL in ---------+ 3012  +nc            VA  SC141D
                  |       | 4           / |
                nc+       +------------/  |
                  +-------+               +----\/\/\/---- Line Neutral
                                                LOAD

   ʹ 220V ѹMOC3021 ܸá ԸӦú·
    ĦӦֲ AN-780. ȻһǷǸԸأһ
   ˭֪Ļʲô.....
   
2.4 ˫բܵ· #2

+5VDC
|    180                      180            2.2k
+---/\/\/\----+-----+   +----/\/\/-+--/\/\/\---+-------> 120V
              |    1|   |6         |           |         Hot
              |    +=====+         |           | MT1
              |    | MC  | ˫բ|          +-+
              |    | 3032| |        G | | ˫բ
              |    +=====+         |         /| |
              \    2|   |4         |        / +-+
       2N3904  |----+   |          |        |  | MT2
              /     |   +--------- | -------+  |
             V      \              |        |  |
             |      /              |        \  |
             |      \ 43    .01u  ---   10k /  |
             |      /       500V  ---       \  |
             |      |              |        /  |
             +------+              |        |  |            Neutral
             |                     +--------+--+---o    o--> 120V
             /                                      load
 >-/\/\--|  2N3904
             \
              V
              |
             ---
            ///
Ӧ 220V ı׼ֵ

   ·:
   
   MC3032 ǹ˫բ 180 ŷķĵ趨˹ķ
   ܵĵҪԵӶõһĵ
    15 mA
   
   ע㲻ûиص²Ե·˽Դ˫բܲ
   лҲнԴ͸ص²ļлע
    .01u ĵҪﵽ 500V ѹ
   
3. 

3.1 

   õһ¹ܵĿִг
     * ͨ ioperm 磬ioperm ( BASE, range , 1)ںˣõ
       I/O ַռʹȨ;
     * ͨһָ磬 outb(1, BASE ) 趨ڵѹΪ 0-5V
     * ȴ㹻ʱÿãʱбȡһܺõ
       飻
     * Ȼ out(0, BASE) ָصȻ
     * ڽ֮ǰӦ黹 I/O ַʹȨ ioperm(BASE,range,0)
       
   ı /dev/lp0 ĻַΪ 0x3bc /dev/lp1 Ϊ 0x378 /dev/lp2 Ϊ 0x278
   Χ( range ) Ϊ 8 
   
   ʹ setuid ãΪÿû Linux 󿧷
   ˣ
   
3.2 豸

   ο [3]kernel hacker's guide, װһ豸 (it could even be
   user space i think). ģ(module)ʽ룬ԺÿθµʱҲ
   ò±ںˡ Ȼ:
   
echo cappuccino >/dev/coffee

   1 Ӻͻһȿȣע /dev/coffee ҪúʵȨޣ忴
   Ƿֻóû󿧷ˡ
   
   ַиŵòڵ ACK ʵִӿȻķ֧֡
   һܵĿȻʱжһ¡
   
   ҵ
   
3.3 ͨ Internet 

   Ѿ C ϣֻдһ CGI űͿԿؿ
   ˡ 㻹Ưҳһô󿧷ȣȻٰҵ
   apache .....
   
4. ״

     * ˷
     * 
     * ʧ
     *   cardiac arhythmia
     * θ
     * Ҳ
       
5. չ

   ǵ뷨:
     * ᵽеӲԱ书ܣֿ֧,
       beaf, applepies, ȵ.
     * 8̨Ȼһ̨Ѿ˵ʱܺȵȣȻ
       еײ
     * ƽ߿ƿȻԺ󷢲
     * ܵԶ㻹ӦټһЩ·ͼװã
       Կˮ¶ȡƷʵȵȡ
     * ڲԶĽǻ SNMP ܡ
     * 115Kbps ĴڿȻ
       
6. ο

     * [4]http://daisy.uwaterloo.ca/~alopez-o/caffaq.html ǻ
       Coffee-FAQ
     * [5]http://lonestar.texas.net/~andrew/f_pc_.htm ܶASCIIʽĵ·
        Щǹڲڵġ
     * [6]http://shell.rmi.net/~hisys/parport.html ڲڵģʲô
       ֪ȴʵĶ
     * [7]http://sunsite.unc.edu/LDP/HOWTO/mini/IO-Port-Programming 
       Linux  I/O ˿ڱ̵ġ
     * [8]http://www.redhat.com:8080/HyperNews/get/khg.html дԼ
       豸ɣ
     * [9]http://www.hut.fi/Misc/Electronics/circuits/parallel_output.htm
       l Tomi Engdahl ҳԱؿ
     * [10]http://www.yahoo.com/Computers_and_Internet/Internet/
       Entertainment/Interesting_Devices_Connected_to_the_Net/Coffee_Mach
       ines/ ȻߣûвԵġ
     * [11]http://www.cs.su.oz.au/~bob/coffee.html ֿȻֻṩ
       cappuccino Ӧ!
     * [12]http://einstein.et.tudelft.nl/~janssen/ ԺĿȡ
     * http://circe.chinalake.navy.mil/cgi-bin/spion/snapit.cgi
     * http://www.cl.cam.ac.uk/coffee/coffee.html
     * http://www.menet.umn.edu/coffeecam/
       
7. 

7.1 

   ĵϣдģϣ Linux ûһ Linux Ƿ 
   󿧷ȵۻ⡣Ư Linux ־ magaz Ϲĵ
   [13]http://www.linux.gr/magaz. ע⣬־ϣĵġ
   
7.2 ĵά

   ҽ [14]Georgatos Photis, ںܳһʱڶ Patras ѧ
   Ϣѧϵѧͨһĵҳάĺæ
   HOWTO κҶᴦҲȵ̫ˡ
   
7.3 Ȩ

   The casual copyright with everything you get with linux... To find it,
   you'll have to read all of them and count the most common. Otherwise,
   no, you can't copy it.
   
7.4 ٰ

     * [15]Christofer Colombus.  Cristobal Colonǵһѿȴ
       ޴ŷ޵ˣ1492
     * Kostas Lialiambis һ˵ Linux ˿ȵˣ
     * Panagiotis Vrionis, Yannakopoulos Haralambos, ҺܶȤ
       ϡ

References

   1. mailto:gef@ceid.upatras.gr?subject=COFFEE-HOWTO
   2. mailto:ccemail@21cn.com?subject=COFFEE-HOWTO
   3. http://www.redhat.com:8080/HyperNews/get/khg.html
   4. http://daisy.uwaterloo.ca/~alopez-o/caffaq.html
   5. http://lonestar.texas.net/~andrew/f_pc_.htm
   6. http://shell.rmi.net/~hisys/parport.html
   7. http://sunsite.unc.edu/LDP/HOWTO/mini/IO-Port-Programming
   8. http://www.redhat.com:8080/HyperNews/get/khg.html
   9. http://www.hut.fi/Misc/Electronics/circuits/parallel_output.html
  10. http://www.yahoo.com/Computers_and_Internet/Internet/Entertainment/Interesting_Devices_Connected_to_the_Net/Coffee_Machines/
  11. http://www.cs.su.oz.au/~bob/coffee.html
  12. http://einstein.et.tudelft.nl/~janssen/
  13. http://www.linux.gr/magaz
  14. http://www.ceid.upatras.gr/~gef
  15. http://sunsite.unc.edu/expo/1492.exhibit/c-Columbus/columbus.html
