ISP Information:
An Intel specification designed to move the analog I/O functions of sound cards and modems onto a riser card. It allows motherboards to have an I/O slot built into them to make it easier to integrate audio and modem functions onto a motherboard. The specification does not define "an aftermarket standard I/O slot," according to Intel. Basically, the slot is supposed to be filled when you buy a motherboard, with the mother ISP Glossary:
Audio Modem Riser - HelloI have an internal zoltrix voice modem (CX1056-HCF PCI Modem).and Iwant to originate a voice call by at commands.ath0atzath1at+fclass=8at+a8e=6,5,21,0;+vsp=1 // enable speakerat+vgs=130;+vgm=120 // enable phoneat+vls=4atdor this one:atzath1AT+FCLASS=8at+a8e=6,5,21,0;+vsp=1 // enable speakerat+vgs=130;+vgm=120 // enable phoneAT+VSD=128,100AT+VtD=0,0,0AT+VGT=128AT+VGR=128AT+VRA=30AT+VRN=7AT+VCID=0AT+VNH=0AT+VIT=0AT+VDR=1AT+VSM=130,8000,0,0AT+VLS=1ATDOk. Every thing is OK. I sent this AT Commands to Hyper terminal andcan originate a full duplex voice call very well.Now I want to write a stand alone program that sends this AT Commandsto modem port itself. I examine two different ways:1) I send this AT Commands by TAPI in PATHTHROUGH mode2) I open COM port byhPort = CreateFile ("COM3:", // Pointer to the name ofthe portGENERIC_READ | GENERIC_WRITE, // Access(read-write) mode0, // Share modeNULL, // Pointer to the securityattributeOPEN_EXISTING // How to open the serial port0, // Port attributesNULL); // Handle to port with attributeCommand and then write AT Commands to com port by"WriteFile" command.In both of these ways the connection is established in half duplex.And during the connection the modem or PSTN plays Ring or ring backtone. And after a few second connection will lost.What is wrong?Thanks in advanced.This is a part of my code:BOOL CATCommand::OpenCom(short m_iComNum){DWORD dwError;CString m_strCommPort;m_strCommPort.Format("COM%d:",m_iComNum);hPort = CreateFile (m_strCommPort, // Pointer to the name ofthe portGENERIC_READ | GENERIC_WRITE, // Access(read-write) mode0, // Share modeNULL, // Pointer to the securityattributeOPEN_EXISTING, // How to open the serial port0, // Port attributesNULL); // Handle to port with attribute// to copydwError = GetLastError();WaitWhileBusy();return dwError == 0 ? true : false;}BOOL CATCommand::Write2Com(CString m_str2Write){DWORD dwNumBytesWritten;DWORD dwError;m_str2Write += "\n\r";WriteFile (hPort, // Port handlem_str2Write, // Pointer to the data towritem_str2Write.GetLength(), // Number of bytes to write&dwNumBytesWritten, // Pointer to the number of byteswrittenNULL // Must be NULL for Windows CE);dwError = GetLastError();WaitWhileBusy();return dwError == 0 ? true : false;}//////////////////////////////////////////////////......CATCommand m_atCommand;......m_atCommand.OpenCom(3);//com3m_atCommand.Write2Com("atz");m_atCommand.Write2Com("ath1");m_atCommand.Write2Com("AT+FCLASS=8");m_atCommand.Write2Com("at+a8e=6,5,21,0;+vsp=1");m_atCommand.Write2Com("at+vgs=130;+vgm=120");m_atCommand.Write2Com("AT+VSD=128,100");m_atCommand.Write2Com("AT+VtD=0,0,0");m_atCommand.Write2Com("AT+VGT=128");m_atCommand.Write2Com("AT+VGR=128");m_atCommand.Write2Com("AT+VRA=30");m_atCommand.Write2Com("AT+VRN=7");m_atCommand.Write2Com("AT+VCID=0");m_atCommand.Write2Com("AT+VNH=0");m_atCommand.Write2Com("AT+VIT=0");m_atCommand.Write2Com("AT+VDR=1");m_atCommand.Write2Com("AT+VSM=130,8000,0,0");m_atCommand.Write2Com("AT+VLS=1");m_atCommand.Write2Com("ATD");
|