Tietokone audio rajapinta Langallisen puhelinverkossa
Colin Fahey

Tietokoneella voi tehdä äänellä puheluihin käyttämällä mitä tahansa modeemin ja yksinkertaisella kytkennällä.
1. Johdanto
Tässä asiakirjassa kuvataan, kuinka voit käyttää mitä tahansa tavanomaisen modeemin ja yksinkertainen piiri antaa minkä tahansa henkilökohtaisen tietokoneen (PC), minkä tahansa käyttöjärjestelmä, kyky paikka puhelut, johon voi liittyä puheen vuorovaikutusta.
Tavallinen modeemi käytetään aktivoida puhelin langallinen menemällä "pois koukku," ja myöhemmin vapauttaa puhelin langallinen "menemällä-koukku (jumittui up)."
Yksinkertainen sähkö-piiri on käytetty antamaan audio-laitteen, kuten äänikortti tai äänen käyttöliittymä on henkilökohtainen tietokone (PC), pääsy audio-signaalien puhelin kaapelin avulla.
Näin ollen henkilökohtainen tietokone (PC) voi aloittaa liittymän puhelinnumero ja sitten odottaa ihmisen tai atk-järjestelmän vastata, ja sitten aloittaa keskustelun, joka perustuu puheen tai muita ääniä.
Tämä asiakirja on tarkoitettu harrastajat ovat kiinnostuneita oppimisen muutamia asioita sähkö vaatimukset ja protokolla vuorovaikutukseen kanssa Central Office (CO) on langallinen kytketty puhelinverkkoon, että Yhdysvallat (US).
On olemassa monia tekniikoita, joiden avulla ihmiset voivat vuorovaikutuksessa äänellä perustuvat järjestelmät kautta puhelimet.
On olemassa monia kaupallisia tuotteita ja palveluja tarjotaan hoitaa kaiken liittyvät puhelin vuorovaikutusta yritysten tietokantaan.
Se on melko helppo löytää laitteisto käsitellä monia puhelujen yhden numeron.
Puhelintekniikka on laajentunut Internet, protokollia, kuten "Voice over Internet Protocol" (VoIP).
Tietokoneet kaikkialla Internetissä voidaan määrittää vuorovaikutuksessa VoIP kautta puheentunnistus ja puhesynteesi.
Nämä tietokoneet voi valinnaisesti seurata äänellä keskustelu flowcharts ilmaistaan XML tekstitiedostoja (Voice XML).
Tämä asiakirja ei ole mitään tekemistä sen kanssa mitään näistä käytännön ratkaisuja automatisoimalla äänellä vuorovaikutusta yrityksen tai organisaation.
Tämä asiakirja on tarkoitettu viihde-harrastajat, joilla on pienet budjetit.
2. Vastuuvapaus
Rakentaa piiritekniikan, ja yhdyslinjat, joka puhelinverkossa liittyy monia riskejä.
Olet vastuussa tutustuttaessa kaikki lait, vaaroja ja riskejä, joita voidaan soveltaa.
Seuraavassa on luettelo joistakin asioista, jotka sinun tulee harkita, jos olet kiinnostunut rakentamisesta ja testaamisesta piiri samanlainen kuin esillä tässä artikkelissa:
1. Kaikki tiedot sähkö-ominaisuudet, puhelin-palvelu on voimassa vain, että Yhdysvallat (US).
2. Ringing jännite puhelin-johdot (90 volttia) voi vahingoittaa ihmisiä.
Lightning tai laskenut teho johdot voi aiheuttaa jännitteitä puhelin-johdot, jotka voivat vahingoittaa ihmisiä.
3. Olet vastuussa kaikista vahingoista, puhelin yritys piirejä aiheuttamat käytöstä luvattoman laitteiden teidän kotona tai toimistossa.
4. Recording puhelinkeskustelujen ilman nimenomaista hyväksyntää kaikkien osapuolten on vastoin lakia.
(... Paitsi jos olet hallitusta! Muuten, niin kuin he sanovat, eikä niillä!)
5. Olet vastuussa mistään vahingoista tietokoneeseen aiheuttanut liittämällä oma ohjauspiirit tietokoneeseen.
6. Et voi myydä mitä tahansa tuotteita, jotka on tarkoitettu käytettäväksi puhelin-verkkoon ilman hyväksyntää, FCC.
Tämä asiakirja on ainoastaan kuvaus minun henkilökohtaiset kokemukset.
Olet vastuussa tutustuttaessa lait ja vaarat asiantuntevat lähteet.
3. Puhelin audio-interface circuit
Tarkoituksena rata kuvataan tässä osiossa on mahdollistaa tavanomaisen äänen tallennus-ja toisto laitteita, kuten äänikortti tai audio-porttiin henkilökohtainen tietokone (PC), lähettää ja vastaanottaa audio yli perinteisten maa-wire (Lähiverkko) puhelimitse yhteydessä.
Puhelinnumero johtojen ja audio-laitteet eivät ole suoraan kytketty; kytkentäkohtaan on vain muuntajat.
Molemmin puolin ja käyttöliittymä on suojattava liialliselta jännitteet.
Signaalit ovat rajoitettu vain taajuusalueella (kaistaa) liittyvät puhelin-audio (300 Hz, 3500 Hz).
Piiri on vain "passiiviset" komponentit; kaikissa ajotilanteissa jännitteet ovat ulkoisia.
Piiri on käytettävä yhdessä modeemi, puhelin-tai muiden piiri kykenee menossa "pois koukulla" (tuo vastustus vaijerin niin pieni, osoittavat, että Keski-Office (CO) että langallinen on käytössä).
Olisi triviaalia lisätä "off koukku" näkökohta tähän kiertoon, mutta ottaa virtapiirin kaikilla on jo suuri este monille harrastajat.

Ulkonäkö on koottu piiri

Ulkonäkö on piirilevy

Kaaviomaiset, puhelin-audio-interface circuit
Voit rakentaa laitetta lähes täsmälleen sellaisena kuin se näkyy edellä, jos teet seuraavat investoinnit:
1. Varmista, että sinulla on perus-työkalut: Ruuvaimet, soldering iron, veitsi;
2. Käy Radio Shack, Ostaminen Alla lueteltujen $ 29 verojen jälkeen;
3. Käy kaikki laitteisto-varasto, ostot kaksi mutteria, pultit, pesurit, $ 1.
4. Vietä noin neljä tuntia rakentaa rata sen mukaan, kaavamaisia;
Jos sinulla ei ole kokemusta rakennuksen elektronisia piirejä, juottamiseen, porataan reikiä, ja sähkö-mittaukset, älä tee tämä ensimmäinen hanke!
Ainoa henkilö, jotka olisi pyrittävä rakentamaan tämän piiri on henkilö, jotka jo tietävät varmasti, että hän voi rakentaa sitä!
4. Radio Shack: arjen elektroniikkaliikkeestä
Radio Shack on viihde-elektroniikan yritys, jolla on myymälöitä ympäri maailmaa. Seuraavassa on linkki heidän Internet-sivuilta:
Niiden Internet-sivusto henkilö voi löytää linkin nimeltä "Electronic Components", mikä johtaa niiden luetteloomme elektronisten komponenttien ja vastaavat asiakirjat.
Henkilö voi löytää hintoja osissa.
Henkilö voi saada luettelon lähimmän myymälän paikoissa, ja karttoja.
Osia voi tilata verkossa.
Olen päättänyt rakentaa minun yksinkertainen piiri käyttäen Radio Shack osissa, koska tämä tarkoittaa, että kukaan muukaan tässä maailmassa voi helposti jäljentää töissäni.
Lisäksi kaikki osa tarjoamia Radio Shack on käytännössä taattu on saatavilla useita vuosia alhaiseen hintaan.
Seuraavassa on luettelo Radio Shack osat I käytetään rakentaa piiri, jonka luetteloomme numerot:
| Qty | Description | Serial # | Price | Total |
| 1 | Project Enclosure (6"x3"x2") | #270-1805 | $ 3.79 | $ 3.79 |
| 1 | Surface Mount Modular Jack (RJ11/RJ14) | #279-0202 | $ 4.99 | $ 4.99 |
| 1 | 3-Conductor Stereo 1/8th" Phone Jack (Pkg.2) | #274-0249 | $ 2.99 | $ 2.99 |
| 1 | Component PC Board (71x94mm), 750 holes | #276-0158 | $ 2.99 | $ 2.99 |
| 2 | Audio Isolation Transformer (1:1) | #273-1374 | $ 3.99 | $ 5.98 |
| 2 | Metalized-Film Capacitor 1.0uF, 250WVDC | #272-1055 | $ 1.49 | $ 2.98 |
| 1 | 2.2K ohm 1/2W 5% Carbon Film Resistor (Pkg.5) | #271-1121 | $ 0.99 | $ 0.99 |
| 2 | 1N4733A, 5.1V, 1.0W Zener Diode (Pkg.2) | #276-0565 | $ 0.99 | $ 1.98 |
SUBTOTAL: $26.69
TAX: $ 2.07 (California 7.75% sales tax)
TOTAL: $28.76
5. Ace Hardware: ei-niin-arjen laitteisto tallentaa
I tarvitaan pultteja, pesurit, ja pähkinät kiinnittää puhelin jack, muovi tapauksessa minun kiertoon.
Kävin Ace Hardware, mutta en olisi voinut mennyt Home Depot, tai ehkä jopa supermarket, löytää samankaltaisia osia.
| Qty | Description | Price | Total |
| 2 | Bolt No.8-32 4.2mm-32 | $ 0.17 | $ 0.34 |
| 2 | Washer No.8 | $ 0.10 | $ 0.20 |
| 2 | Nuts No.8-32 2" | $ 0.10 | $ 0.20 |
SUBTOTAL: $0.74
TAX: $0.06 (California 7.75% sales tax)
TOTAL: $0.80
6. Työkalut ja tarvikkeet
Seuraavassa taulukossa esitetään joitakin kohtia I tarvitaan rakentamisen ja käytön rata:
| Soldering iron | $ 5.00 (approx) |
| Solder | $ 3.00 (approx) |
| Precision knife | $ 3.99 |
| Wires | $ 1.00 (approx) |
| Telephone extension cord #279-0374 | $ 5.79 |
| Male-Male mini-phono 6' extension cord (qty.2) | $ 3.00 (approx) |
| Four-wire 3-way coupler (RJ11/RJ14) #279-0447 | $ 4.99 |
7. Kommentit kiertoon
En ole sähkö-insinööri.
Olen tutkinut eri puhelin-piirejä (ks. viittaukset lueteltujen lähellä loppua tämä artikkeli), ja uuttaa eri elementtejä, jotka tukevat oman suunnittelun tavoitteita.
Jos olivat todella epätoivoisia, ja riskinä on teidän PC ei ollut tekijä, voit liittää puhelimen johto sointilähteenne sataman käyttäen vain pari kondensaattoria!
Tämä on erittäin huono ajatus, sillä soittoäänen jännite, ja mahdollinen satunnaisesti jännitteen huippua, puhelin-johtojen välityksellä, voi vahingoittaa suojaamattomia laitteita.
The Zener diodit minun piiri oikosulun liiallisen jännitteet.
Huomaa, että he joutuvat vastakkaisiin suuntiin niin, että tietyn sovellettu jännite jonkin napaisuus, yksi Zenerdiodi on valmis tekemään nykyistä normaalisti, ja toinen on valmis, käännetyn-erittely olisi jännite ylittää sen luokituksen (esim. 5.1 V) .
Ainoastaan silloin, kun jännite ylittää käännettyyn jakautuminen jännitettä yhtenä Zener diodit aikoo parin viime kädessä mahdollistaa nykyistä sujuvuutta, mikä oikosulkuun lankoja, joihin pari diodit on kytketty.
Huomaa että tämä toimii riippumatta siitä, missä signaalit ovat peräisin.
Vaihtovirta (AC) signaaleja puhelin langallinen, jotka ovat enemmän sitten 5,8 volttia ( 5.1 V + 0.7 V ) jälkeen kulkee muuntaja on leikattu.
Direct Current (DC) tai vaihtovirta (AC) audio signaaleja audio lähde, ei puhelin-johtojen välityksellä, on myös leikattu 5.8 Volts.
Joten, jokainen osapuoli, puhelin yritys-ja audio-laitteet, on suojattava liialliselta jännitteet tulevat toiselle osapuolelle.
Laite on oikeastaan pari samanlaisia piirejä. Joko ääniliitin voidaan käyttää panos-tai tulosindikaattoreita.
Pohjimmiltaan molemmat audio-signaalit on kytketty yhden puhelin-signaalia.
8. Käyttäminen modeemina mennä "pois koukku"
8.1 Sen tarkoituksena on modeemi
Sen tarkoituksena on modeemi tässä järjestelmässä on luoda sähkö ehdolla, että puhelin-palveluntarjoaja ei tunnista kuin pyyntö tulee aktiivinen osallistuja, puhelin-verkkoon.
Tämä pyyntö on "menossa pois koukku," viittaus alkuperäiseen puhelin malleja, että tarvitaan käyttäjän hissiin puhuja tai laitemyynti pois koukulla.
Aktivointiaste pyyntö on lähes välittömästi myönnetty, sekunnin murto-osassa.
Kun vaijerin tulee aktiivinen, kaikki muut näkökohdat puhelinpalveluiden voidaan toteuttaa äänisignaaleja.
Vaikka lähettävälle puhelinnumerot "(soitto)" voidaan tehdä pelaamalla äänitiedostoja ( *.WAV, *.MP3 ), kirjataan audio (DAT, audio CD, nauha), tai ohjelmisto äänen synteesi (sin() toiminnot), modeemi on luontainen kyky suoriutua tästä tehtävästä.
On kuitenkin syytä ymmärtää, että ainoa tarkoitus modeemi on pyytänyt aktivointi puhelimitse wire.
Jos henkilö on vaihtoehtoinen menetelmä simuloida off koukku ehto (eli yksinkertaisesti laskemalla vastuksen koko puhelin-wire), modeemi ei vaadita.
Kuitenkin modeemi on erittäin edullinen, commonplace, ja kätevä laite hoitaa tätä tehtävää.
Järjestelmä on kuvattu tässä artiklassa ei vaadi modeemin kanssa äänen tallennus tai toisto valmiudet, joskus kutsutaan "ääni-modeemi."
Kuitenkin toisessa osassa tämä artikkeli I keskustelemaan mahdollisuudesta käyttää ääni-modeemi, joka tarjoaa vaihtoehdon käyttämällä mukautettua sähkö-piiri.
8.2 Tyypillisiä modeemi
Olen päätynyt käyttämään ulkoisen modeemin valmistamia Hayes kutsutaan "Accura", V.92 fax-modeemin kanssa vastaaja valmiudet.
Kaikki modeemi voidaan käyttää järjestelmän kuvattu tässä artikkelissa.
Halusin ulkoisen modeemin yksinkertaisesti, koska se on helppo liittää mihin tahansa tietokoneeseen, ja voin tuoda se to a friend's house käyttää niiden kannettavan tietokoneen tai tietokoneesta.
Vaikka se tuskin on tärkeä, olen myös harkinnut, että ehkä Basic Stamp 2 tietokone voisi käyttää RS-232 modeemi.
Varoitus: Serial satamissa (RS-232) satamissa, kuten PS/2 satamissa, ollaan poistamassa, ja USB on uusi standardi.
Ulkoinen USB modeemi voidaan usein saada ohjelmisto, kuin jos se olisi legacy "COM" sataman laitteen laiteajureille, että mukana tulee modeemi.
Siellä on pieni USB/RS-232 adapteri (~$30), joita voidaan käyttää yhteyden nykyajan läppäreistä ja PC: llä RS-232 laitteita.
Tällainen adapteri on vastaava laiteajuri matkia jälkipolville sarjaportti liitäntä (esim. "COM" laite).

Hayes ulkoisen modeemin: laatikko

Hayes ulkoisen modeemin
8.3 Modem komentoja
Kun modeemi on ensimmäisen kerran otettu käyttöön, se tulee valtio nimeltä "komento-tilassa."
Jos modeemin onnistuneesti liitetään kauko-modeemi tai kauko-faksi-laitteen yli puhelinverkon johtojen välityksellä, se tulee valtio nimeltä "Data Mode."
Kuitenkin, että järjestelmä on kuvattu tässä asiakirjassa ei käytä modeemi luoda "Data Mode" yhteydessä kauko-laite, joten modeemi tulee aina olla "komento-tilassa."
Kun komento-tilassa, modeemi hyväksyy commands-muodossa plain ASCII merkkiä.
Merkit ovat vaihtaneet keskenään modeemi ja tietokoneen yli sarjakaapelin kautta tai laitteen kuljettaja, joka tekee sisäinen kortti (esim. PCI kortti) saatavilla kuin sarjatuotantona laitteeseen.
Kummassakin tapauksessa, ohjelmien käyttö API vaatii pääsyä serial laitteet (esim. "COM1" tai "/dev/modem").
Yksi tärkeä osa-modeemi komentoja kutsutaan "AT" (ay-tee) komentoja, ja nämä komennot kaikki alkaa kirjaimilla "at" (tai "AT").
Kuten modeemit kehittynyt, luettelo komentoja laajennettu, tarjoamalla yhä esoteric ominaisuuksia. Järjestelmä on kuvattu tässä artikkelissa vain edellyttää kykyä ottaa modeemin "pois koukku" ja myöhemmin palata modeemi, joka "on koukussa." Kyky dial numeroa, ja valinnaisesti päälle puhuja seuranta puhelun, ovat hyödyllisiä toimintoja, mutta eivät ole välttämättömiä. Seuraavassa taulukossa luetellaan modeemi komentoja voidaan todennäköisesti käyttää järjestelmän kanssa on kuvattu tässä artikkelissa:
| Action | Command |
| On-Hook ("Hang Up") | ATH [zero] [return] |
| Off-Hook ("Pick Up") | ATH [one] [return] |
| "Dial" Digits | ATDT [digits,#,*] ; [return] |
| "Dial" Digit | ATDT [digit,#,*] ; [return] |
| Speaker Off | ATM [zero] [return] |
| Speaker On | ATM [two] [return] |
Seuraavassa taulukossa esitetään hypoteettinen jono komentoja käytetään paikka puhelinsoiton, vuorovaikutuksessa automatisoitu järjestelmä, joka käyttää "touch sävyjä" (DTMF), ja sitten lopettaa puhelun "(jumittui up):"
| Command | Action |
| ATM 2 [return] | Speaker On |
| ATH 1 [return] | Off-Hook ("Pick Up") |
| ATDT 5551212 ; [return] | "Dial" 5551212 |
| ATDT 3 ; [return] | "Press" 3 |
| ATDT # ; [return] | "Press" Pound (#) |
| ATDT * ; [return] | "Press" Star (*) |
| ATH 0 [return] | On-Hook ("Hang Up") |
| ATM 0 [return] | Speaker Off |
8.4 AT komento asettaa
The "AT komento sarja on toteutettu lähes kaikki modeemit, jotka ovat olemassa.
Tämä sarja komentoja oli alun perin täytäntöön Hayes modeemit.
Useimmat modeemit ovat luokiteltu "Hayes yhteensopivia, koska ne pannaan täytäntöön joukko AT komentoja.
Kaikki AT komennot on aloitettava kanssa AT-etuliitettä, jota seurasi komento kirjeellä, ja päättyi kanssa ENTER(*) avain.
(*...ENTER, CARRIAGE RETURN, CR, RETURN, '\r', 13, 0xd, Control-M, ^M)
Tiloissa on sallittu komento string lisätä komentoriville luettavuutta, mutta ei oteta modeemin aikana komennon suorituksen.
Kaikki komennot voidaan kirjoittaa joko isoja tai pienempi, mutta ei koskaan sekaisin.
A-komento ilman parametreja pidetään täsmennetään sama komento, jonka parametrin 0 (nolla).
Seuraavassa on tiivistetty luettelo AT komentoja.
A lisätietoja täydellinen ja yksityiskohtainen luettelo voidaan helposti löytyvät Internet-haun käyttämällä avainsanoja "at modeemi komentoja.
| Cmd | Action |
| A | Answer incoming call |
| D | 0-9, A-D, # and * (e.g., AT T D 5551212*#) |
| P | Pulse dial |
| T | Tone dial |
| W | Wait for second dial tone |
| , | Pause |
| @ | Wait for 5 secs of silence |
| ! | Flash (very brief on-hook) |
| ; | Return to command mode after dialing |
| E0 | Command echo disabled |
| E1 | Command echo enabled |
| F0 | Autoscan mode |
| F1 | 300 bps connection only |
| F3 | V.23 connection only |
| F4 | 1200 bps connection only |
| F5 | 2400 bps connection only |
| F6 | 4800 bps connection only |
| F7 | 7200 bps connection only |
| F8 | 9600 bps connection only |
| F9 | 12000 bps connection only |
| F10 | 14400 bps connection only |
| H0 | Modem on-hook (hang up) |
| H1 | Modem off-hook (pick up) |
| I0 | Product code |
| I1 | Checksum code |
| I2 | ROM test |
| I3 | Firmware and device ID |
| L0 | Low speaker volume |
| L1 | Low speaker volume |
| L2 | Medium speaker volume |
| L3 | High speaker volume |
| M0 | Speaker off |
| M1 | Speaker on until carrier detect |
| M2 | Speaker on |
| M3 | Speaker off during dialing, on until carrier detected |
| N0 | Connect only at DTE rate |
| N1 | Auto rate negotiation |
| O0 | Return to data mode |
| O1 | Initiate an equalizer retrain and return to data mode |
| P | Pulse dial |
| Q0 | Result codes enabled |
| Q1 | Result codes disabled |
| T | Tone dial |
| V0 | Numeric responses |
| V1 | Text responses |
| W0 | Report DTE speed only |
| W1 | Report wire speed, error correction protocol, and DTE speed |
| W2 | Report DCE speed only |
| X0 | Hayes Smartmodem 300 compatible responses/blind dialing |
| X1 | Same as X0 plus all CONNECT responses/blind dialing |
| X2 | Same as X1 plus dial tone detection |
| X3 | Same as X1 plus busy signal detection/blind dialing |
| X4 | All responses and dial tone and busy signal detection |
| Y0 | Long space disconnect disabled |
| Y1 | Long space disconnect enabled |
| Z0 | Reset and recall user profile 0 |
8.5 Testaus-modeemi
Tässä jaksossa kuvataan menetelmiä nopeasti tarkastaa kyky hallita modeemi kytketty tietokoneeseen.
Ensimmäinen menetelmä soveltuu Windows 98/NT/Me/2K/XP.
Perusajatuksena on aloittaa "sarjaportin viestinnän" ohjelmisto, joka löytyy lähes kaikista normaaliasennuksen, Windows käyttöjärjestelmä: "HyperTerminal".
Windows 98 : "C:\Program Files\Accessories\HyperTerminal\Hypertrm.exe"
Windows 2000\XP: "C:\Program Files\Windows NT\hypertrm.exe"
(Double-lainausmerkit osoittanut edellä ovat tarpeen, kun tehdään pikanäppäimet tai jos täytäntöönpanovaltion osoitteesta komento nopeasti, koska tiedostojen polkunimiä sisältää välilyöntejä.)
HyperTerminal voidaan käynnistää, command prompt tai valitsemalla valikosta.
Under Windows 2000\XP, esimerkiksi ohjelmisto-linkki löytyy lopussa seuraavan polun valikot:
Start -> Programs -> Accessories -> Communications -> HyperTerminal -> HyperTerminal
Menu hierarkia johtava alkaen Start valikosta HyperTerminal
Kun käynnistät HyperTerminal useita valintaikkunoissa näkyvän:
HyperTerminal dialogs:
1. Connection Description: Anna mielivaltainen nimi;
2. Connect To: Valitse porttiin, joka on modeemin (esim. COM1);
3. COM1 Properties: Bit rate for välistä viestintää PC ja modeemi jne.
I eritellyt alhaisella nopeudella (2400 bittiä sekunnissa) välillä PC ja modeemi yksinkertaisesti siksi, että tämä on todennäköisesti toimimaan kaikin modeemi, joka ei ole virallisesti antiikkisen.
Se on yleinen modernin modeemit kommunikoida kanssa PC hinnalla noin 115200 bittiä sekunnissa, jopa silloin, kun data rate, puhelin-wire on niin alhainen kuin 9600 bittiä sekunnissa.
Seuraava kuva osoittaa yksinkertaisella modeemi istunto käyttäen HyperTerminal:

Using HyperTerminal yrittää käyttää eri modeemia komentoja
Tämä toteaa edellä näytä helppo tapa testata modeemin kanssa Windows käyttöjärjestelmä.
On olemassa lukuisia muita "serial viestinnän" ohjelmistoja varten Windows ja Linux.
For Linux (tai UNIX vaihtoehdot) voit tehdä jotain vastaavaa, "echo atm2 > /dev/modem"-komentoriville, tai fp = fopen( "/dev/modem", "w" ); seurasi julkilausumat, kuten fprintf( fp, "atm2" ); on yksinkertainen C ohjelmaan.
8.6 Lähdekoodi valvoa modeemi
The C/C++ tietokone-koodi näkyy alla osoittaa lähettämällä teksti komentoja modeemi.
Vaikka tietokone-koodi näkyy alla on, että Windows käyttöjärjestelmä, ajatukset ovat helposti yleistynyt muissa käyttöjärjestelmissä.
#include < windows.h >
HANDLE hCom = ((HANDLE)(0));
int main()
{
DCB dcb;
unsigned long int n = 0;
char * str = "COM1";
hCom = CreateFile( str, (GENERIC_READ ¦ GENERIC_WRITE),
0, NULL, OPEN_EXISTING, 0, NULL );
GetCommState ( hCom, (&(dcb)) );
dcb.BaudRate = CBR_9600;
dcb.ByteSize = 8;
dcb.Parity = NOPARITY;
dcb.StopBits = ONESTOPBIT;
SetCommState ( hCom, (&(dcb)) );
WriteFile( hCom, "ATM2\r", strlen("ATM2\r"), (&(n)), 0 );
FlushFileBuffers( hCom );
Sleep(1000);
WriteFile( hCom, "ATH1\r", strlen("ATH1\r"), (&(n)), 0 );
FlushFileBuffers( hCom );
Sleep(1000);
WriteFile( hCom, "ATDT5551212;\r", strlen("ATDT5551212;\r"), (&(n)), 0 );
FlushFileBuffers( hCom );
Sleep(3000);
WriteFile( hCom, "ATH0\r", strlen("ATH0\r"), (&(n)), 0 );
FlushFileBuffers( hCom );
Sleep(1000);
WriteFile( hCom, "ATM0\r", strlen("ATM0\r"), (&(n)), 0 );
FlushFileBuffers( hCom );
Sleep(1000);
CloseHandle( hCom );
return(0);
}
Ohjelmisto edellä pääset järjestysnumero viestintä-portti (eli "COM1"), ja me oletamme, modeemi on kytketty kyseiseen porttiin.
Ohjelmisto lähettää teksti komentoja modeemi, jos haluat tehdä seuraavia asioita:
1. Ota sisäinen kaiutin ("ATM2\r");
2. Take the telephone wire "off koukulla" ("ATH1\r");
3. Dial puhelinnumero ("ATDT5551212;\r");
4. Laita puhelin langallinen "takaisin koukulla" ("ATH0\r");
5. Turn off the sisäinen kaiutin ("ATM0\r").
Esimerkkinä tietokone koodin edellä osoittaa joitakin asiaan liittyviä Windows API toimintoja.
Kuitenkin esimerkiksi atk-koodi on hyvin joustamaton, eikä tarkistaa mahdolliset virheet.
The Sleep() funktio invocations varmistettava, että modeemi on aika täydellinen komennot ennen etenee, seuraava komento.
Ihannetapauksessa meillä olisi tarkistaa tekstin vastauksia modeemin (esim. "OK" tai "ERROR").
8.7 Modem valvonta C++ class (Windows käyttöjärjestelmä)
Seuraavat ZIP arkistotiedosto sisältää C++ class soveltuvat valvoa modeemin kautta Windows käyttöjärjestelmä.
Se on pohjimmiltaan enemmän elaborate versio mielenosoituksen koodi esitelty edellä.
Also, C++ class ylireagoi modeemin toiminnallisuus siten, että siirtämistä muiden alustojen (esim. Linux) on tehty helpompaa.
A Microsoft Visual C++ 6.0 projekti tiedosto on mukana lähdekoodi, joten kukaan voi rakentaa ja suorittaa koodia heti testata.
Mutta kaikki, mitä tarvitset ovat ne kaksi asiaa lähdetiedostot ( modem_control.cpp, modem_control.h ) käyttää koodin oma ohjelmisto.
9. Käyttäen interface
9.1 Käyttämällä sen yhdistämistä tietokoneella

Kokoonpano käyttää omassa kokeiluja
Liitä jakotislauskolonnin, puhelin-johdinliitäntä, yksi haara menee modeemin ja muiden sivukonttori aikoo puhelin interface circuit.
Liitä kahden äänen langat, virtapiiri, "Mikrofonitulo" ja "puhujan tuotos" äänikortin tai audio-pistorasiat, henkilökohtainen tietokone tai muut äänitiedostot laitteesta.
Käyttäminen modeemina koodi kuvattu toisaalla tässä artikkelissa voit käyttää modeemin "piristyvän puhelin-ja puhelin-numerot."
Sitten tietokone voi tallentaa ja toisto äänen joka halutulla tavalla.
Modeemi-koodi voidaan sitten käyttää "jumittui jopa puhelimitse" lopettaa puhelun.
Olet vastuussa ilmoituksen soittajien, jos aiot kirjata mitään osaa puhelun.
(... Paitsi jos olet hallitusta! Muuten, niin kuin he sanovat, eikä niillä!)
9.2 Using käyttöliittymän kanssa audio-laitteet
Liitä jakotislauskolonnin, puhelin-johdinliitäntä, yksi haara menee tavallinen puhelin-ja muiden sivukonttori aikoo puhelin interface circuit.
Liitä joko audio-signaalin rata, joka Mikrofonitulo vahvistimen tai tallennuslaitteeseen.
Liitä tuloste jokin laite, joka tuottaa matalan amplitudin audio (esim. +/-1.0 volttia) joko audio socket-rata.
Älä liitä audio tuotos stereovahvistimena, virtapiiri, koska jännitteet ovat erittäin todennäköisesti hyvin liiallisena puhelin-ääni.
Stereo vahvistimet on yleensä erityinen tuotokset (esim. RCA liittimet) lähettämällä tuotoksen audio muita erilaisia audio-laitteet, jotka hyväksyvät äänen sisäänmeno (esim. VCR, kasettiasema, televisio jne.); näitä matalajännitteisen lähdöt ovat sopivia käytettäväksi saatavilla olevien piiri on kuvattu tässä artikkelissa.
Näin ollen kukaan voi hyväksyä tai paikka vaatii käyttämällä puhelin-ja tallentaa ja toistaa äänen käytön aikana puhelimitse.
Olet vastuussa ilmoituksen soittajien, jos aiot kirjata mitään osaa puhelun.
(... Paitsi jos olet hallitusta! Muuten, niin kuin he sanovat, eikä niillä!)
10. Puhelin verkon käsitteitä
10.1 Opinto-viittaukset
Toiminta puhelin-järjestelmä on sen jälkeen tämän artiklan soveltamisalan piiriin.
Consult viittaukset lopussa tämän artiklan jonkin verran tietoa tästä aiheesta.
Olen kuitenkin keskustella mielenkiintoista korostaa tässä osiossa.
10.2 Perustiedot sähkö näkökohdat
10.2.1 Puhelin-tai modeemin "päälle koukku" valtion
On olemassa kaksi tavoitetta, joka johti puhelin-suunnittelu:
(1) A-puhelin olisi sähköllä "näkymättömiä" Direct Current (DC), aivan kuten avoimen piirille tai katkaisua, kun se on päällä koukussa tilassa;
(2) The vaihtovirta (AC) huippua käyttää puhelinta rengas olisi hyväksyttävä se, puhelimet,-koukku tilaa, jotta ne renkaaseen.
Molemmat tavoitteet on saavutettu ottaa puhelin on suunniteltu siten, että ei-polarized capacitor (tai kaksi) on puhelin ainoa yhteys puhelimitse langallinen kun on-koukku.
Näin ollen Direct Current (DC) ei voi kulkea läpi, ja vaihtovirralla (AC) soittoäänen signaali voi kulkea läpi kelloja tai soittoäänen kiertoon.
Kun mitattiin DC vastustus puhelin,-koukku, se ylitti 40 Megaohms.
Kun mitattiin DC vastustus modeemina on-koukku, se myös ylitti 40 Megaohms.
The DC jännite toimittamat puhelinyhtiö havaita minkäänlaista vastarintaa johtuu puhelimet ovat off-koukku on joskus raportoitu 48 Volts.
I mitataan +23.02 Volts (DC), jossa pyysin "punainen johto" on positiivinen, ja "vihreä johtojen" päällä.
Huomaa, että tämä DC jännite putoaa dramaattisesti, kun puhelin on pois-koukku, I mitattu +7.17 Volts (DC) kun puhelin oli off-koukku.
Ringing jännite on raportoitu olevan 90 Volts (16-60 Hz vaihtovirta), joka voi startle tai vahingoittaa ihmisiä tietyissä olosuhteissa.
10.2.2 Puhelin-tai modeemin "off koukku" valtion
Puhelimet ja Modeemit pyynnöstä käyttää puhelin langallinen vähentämällä omia DC sähkö vastarintaa.
Tämä ehto on havaittu puhelinnumero palveluntarjoajan ja vaijerin tulee aktiivinen.
Kun mitattiin DC vastustus puhelin-off-koukku, se oli noin 6.83 Megaohms.
Kun mitattiin DC vastustus modeemina off-koukku, se oli lähes täsmälleen 1.500 Megaohms.
Muistaa, että molemmat näistä laitteista oli vastustuskyky, joka ylitti 40 Megaohms kun on-koukku.
Kiinnostavaa kyllä, tämä vastustuskyky on melko korkea, lähellä ihmisen: n sähkö-resistenssi, kun koskematta langasta, kuivaa kädet.
Esimerkiksi, jos minun pitää langallinen minun vasempaan käteen, ja langallinen minun oikean käden, suhteellisen kuiva käsiin, voin saada vastarintaa niin alhainen kuin 0.5 Megaohms puristamalla tiukasti, johtoja.
Squeezing hyvin kevyesti antaa minulle suurempi DC vastus, noin 1.5 Megaohms, joka on ilmeisesti vielä niin pieni, kerro puhelin yritys, että olen puhelimitse.
(Älä koskaan kosketa puhelin langat!)
Näin ollen voidaan simuloida ottaa puhelimitse tai modeemin off-koukku vain ottamalla käyttöön 1 Megaohm vastus koko puhelin-kaapelin avulla.
Yksi voi tehdä tätä kautta kiertoon, jossa rele valvonnassa satamassa on tietokone (RS-232, parallel port, USB jne.), mutta modeemi on kätevä, edullinen ja monipuolinen vaihtoehto mukautetun viestissa kiertoon.
Kuten edellä mainittiin, puhelin yritys pitää Direct Current (DC) mahdollisia erotus (jännite) koko puhelin johto havaitsemaan puhelimet menevät off-koukkuun ja palaavat on-koukku.
I mitattuna tämä jännite kuin +23.02 Volts (DC) for-koukku, ja +7.17 Volts (DC)-off-koukku.
10.3 Äänisignaaleja
Kun puhelin off-koukku valtion, "dial sävy" vaikuttaa vaihtovirralla (AC) Root-Mean-Square (RMS) jännitettä 0.139 Volts AC.
Koko signaali on puolueellinen, joka merkittävästi DC jännite noin +5 Volts DC; I mitattu +7.17 Volts DC aikana kokeilua.
The audio-signaalit ovat hyvin pieniä poikkeamia (vain muutama prosentti) ympärillä DC jännitteellä.
Tämä tarkoittaa esimerkiksi sitä, että äänisignaaleja eivät vaihtele noin nolla jännite, äänisignaaleja koskaan tee nykyisestä sujuvuutta vastakkaiseen suuntaan puhelin kaapelin avulla.
On käynyt ilmi, että minun puhelin interface circuit Muuntaa 0.139 VAC signaalin noin 0.030 VAC (eli 30 mV AC) käyttöön, audio-laitteet (esim. Mikrofonitulo, äänikortti).
10.4 Audio kaistanleveys
Ensisijainen tehtävä puhelin-järjestelmä on mahdollistaa äänen välistä viestintää ihmisiin.
Seuraavassa kaaviossa näkyy keskimääräinen spektrin energian muutaman sekunnin puheen ääni.

Keskimääräiset spektrinen energia (desibelin asteikko) usean sekunnin puheen koko ääni-valikoima (20 Hz, 20 kHz). Pysty-asteikko on desibeliä, joten jopa vaatimaton lasku tästä kuviosta käy ilmi, dramaattinen lasku Sound Energy.
The desibelin laajuuden vuoksi kaaviossa edellä tarkoittaa, että matalammat arvot kuvion ovat tosiasiallisesti tilaukset suuruusluokkaa vähemmän siitä, että korkea-arvoista annetun kaavion.
On ilmeistä, että huomattava osa kaikista energia puheen ääni on vuonna välikausi osoitteesta 0 Hz, 4000 Hz.
Ihminen voi luotettavasti ymmärtää puheen silloinkin, kun kaikki äänen energia ulkopuolella intervalli 300 Hz, 3000 Hz on poistettu.
Kuitenkin subjektiivinen vaikutus rajoittaa audio energiaa tällä alueella on se, että äänet ääni muffled ja puute niveltyminen.
The hiuksenhieno ero 'F' ja 'S' on helposti menetetty yli puhelimitse.
Puhelinnumero järjestelmän Yhdysvallat on ääni-kanava, että vain harjoittaa taajuuksien välillä 0 Hz, 4000 Hz.
Kuitenkin äänellä passband on rajoitettu valikoima 300 Hz, 3000 Hz, ja siellä on nopeasti kasvava keventämällä äänellä energia ulkopuolella tämän bändin.

Voice kaistanleveys ( 300 Hz - 3000 Hz )-Voice Channel ( 0 Hz - 4000 Hz ), puhelin-järjestelmä, Yhdysvallat
Seuraava kuva on spektrinen plot usean sekunnin tyypillinen kirjataan puhelinkeskustelun.

Spektraalijakauma plot usean sekunnin tyypillinen kirjataan puhelinkeskustelun (mies ääni)
Vaikka taajuus päätöslauselma on suhteellisen pieni, vaikutus on rajoitettu kaistanleveys, puhelin-järjestelmä on ilmeinen.
Kokeellista tutkimusta varten, audio-ominaisuudet, puhelin-järjestelmä voidaan simuloidun kanssa graafisen taajuuskorjaimen tai kaistanpäästösuotimen suodattimen ääni editointiin ohjelmistopaketin, yksinkertaisesti suodattamalla pois kaikki alle 350 Hz ja kaiken edellä 3500 Hz.
10.5 Tärkeä äänen taajuudet
"Kosketusnäyttö sävyjä" käytetään "dial numerot" ja vuorovaikutuksessa automatisoituja järjestelmiä kutsutaan Dual-Tone Multi-Frequency (DTMF) signaaleja.
Nämä sävyt voidaan saavuttaa vain lisäämällä siihen kaksi sine aaltoja yhdessä asianmukaisen taajuuksia, kuten käy ilmi seuraavasta matriisin taajuudet.
Huomaa, että vähintään pitää, kun lähettämällä DTMF ääni on 50 milliseconds, vähimmäismäärän ja release aika (silent ero DTMF kuulostaa) on 50 milliseconds.
Using viivästykset 200 milliseconds olisi todennäköisesti luotettavia.
The "dial tone, kiireinen viesti," ja "ring back-ääniä" on myös määritelty taajuus yhdistelmiä, Yhdysvallat:
11. Vaihtoehtoinen puhelinnumero interface menetelmät
Olen sijoittanut $30 ja neljä tuntia rakentaa rata, jotta henkilökohtainen tietokone voi lähettää ja vastaanottaa audio-signaalien yli puhelin-kaapelin avulla.
Tämä edellyttää cetain sellaista asiantuntemusta ja laitteita.
Lisäksi, paitsi jos olet valmis menemään sisään liiketoiminnan valmistus tämän kiertoon, et voi luoda tuote (halvat ääni-mail tai siihen vastaamista kone), joka edellyttää tätä liittymää.
Helpoin, edullinen vaihtoehto laitteisto menetelmän I kuvattu tässä artikkelissa on käyttää ohjelmistoja menetelmä saada äänensä valmiudet "ääni-modeemi."
Minun on kuitenkin sanottava, että verrattuna käyttämällä mukautettua piirinä, jossa käytetään ääni-modeemin kanssa erityisiä ohjelmisto on todennäköisesti hyvin alusta-ja yleensä erittäin tuskallista ohjelma, konfiguroida ja käyttää.
Hyödyn (olettaen että on ääni-modeemi) on, että tämä olisi puhdas ohjelmiston ratkaisu.
Jos käytät äänen modeemi ja erityisiä ohjelmistoja, järjestelmä voisi olla niinkin yksinkertainen asia kuin Seuraavassa kaaviossa.

Käyttäen sisäisen "äänensä modeemi" ja ohjelmistot
Riippuen sinun tarvitsee, ääni tietojen näkökohta ääni-modeemi voi olla puoli-duplex (eli ohjelmiston voi "puhua" tai "kuunnella," mutta ei molempia samanaikaisesti), tai täysi-duplex.
Half-duplex voi lisätä jonkin verran monimutkaisuutta valvova ohjelmisto, koska sinun täytyy päättää milloin lähettää ja vastaanottaa ääni.
The äänellä modeemi digitizes puhelin-wire audio-ja lähettää tiedot yli USB tai RS-232 jos ulkoiset tai yli PCI linja-autolla, jos sisäisiä.
12. Microsoft Telephony API (TAPI)
Microsoft käyttöjärjestelmiä ovat TAPI 2.0 ja TAPI 3.0 DLLs.
TAPI 3.0 saattaa olla lukuisia ohjelmisto-ongelmista, ja useimmat ihmiset jotka ovat käyttäneet Microsoft TAPI ovat yksinkertaisesti käyttää TAPI 2.0 (joka on lähes kaikki halutut toiminnot) sijasta TAPI 3.0.
Käytä "wave/in" ja "wave/out" laitteiden saada ääni modeemi n ääniraitaa.
Katso TAPI teos viittaukset osa tämän artikkelin. Kirja on vanha, mutta se kuvaa TAPI 2.0 yksityiskohtaisesti.
13. Java Telephony API
En tiedä mitään Java Telephony API.
Olen kuitenkin olettaa, se on hyödyksi, että riippumaton ja käyttöjärjestelmiä, ja luultavasti on paljon yksinkertaisempi vedenotto kuin Microsoft TAPI!
14. Erilaisten kaupallisten tuotteiden
Kaupalliset, telineeseen asennettava kone käyttöliittymät useita ulkoisia puhelin langat ovat omiaan vaihtamalla ääni tietojen kanssa.
"Voice Over IP" (VoIP) tuotteiden, kuten "Internet-puhelimet," ovat nyt kaikkialla (esim. "Skype)."
On selvää, tietokoneohjelmat voivat helposti saada audio tällaisen puhelin-liittymää.
15. Viitteet
Best, kaikkein kattavin opas puhelin-piirejä Olen törmännyt myös Internetissä:
Toinen mielenkiintoinen viite:
Hilpeä (ja järjetöntä) oppaan palkka-puhelimet ympäri Yhdysvallat ja Kanada:
(Look "yläreunassa vastaajat" palkka-puhelinnumerot, puhelinnumero audio-näytteet, ja puhelin-kuvia.)
16. Kirjat
16.1 Understanding Telephone Electronics (4th ed)
Understanding Telephone Electronics (4th ed);
Newnes; 2001;
Stephen J. Bigelow, Joseph J. Carr, Steve Winder;
$25.45 US (2001)
Tämä teos kuvaa monia näkökohtia puhelin piirejä ja toiminnan kautta USA: ssa.
On olemassa monia yksityiskohtia siitä, piirien ja protokollat; kaiken puhelin, puhelin-verkon itse.
Epäilemättä tekniikka on hyvin erilainen nyt, mutta tämä teos on todennäköisesti hieman enemmän käytännön kuin historiankirjaan.
16.2 Windows Telephony Programming: A Developer's Guide to TAPI
Windows Telephony Programming: A Developer's Guide to TAPI;
Addison-Wesley; 1998;
Chris Sells;
$33.95 US (1998)
The Microsoft Telephony API (TAPI) on turhan sotkuinen ja sekava, ja se on nyt erittäin vanhentuneita. Teoksen edellä mainittu saattaa olla ainoa teos koskaan julkaistu siitä Microsoft Telephony API (TAPI).