1 Introduction At present, with the widespread opening of the caller identification (caller ID) service in the telecommunications sector, telephones with caller identification function are becoming more and more popular. Based on this situation, we designed a multifunctional telephone tester that can test the caller identification function, using CML (Consumer Microcircuit Limited)'s CMX860 as the core component of the caller ID test circuit, and the single chip microcomputer uses SST89C58.
1.1 Introduction to CMX860 CMX860 is a universal low-power telephone signaling transceiver integrated circuit. CMX860 includes DTMF codec, V.23 modem, and has functions such as ring current detection and phone off-hook detection. It can be widely used in telephone equipment powered by lines. The main features of CMX860 are: (1) Provide V.23 1200/75bps FSK signal transmission and reception; (2) Dual-tone multi-frequency and audio signaling transmission and reception; (3) User line end and telephone end driver; (4) Call progress decoding; (5) Generation and detection of call waiting signal; (6) "C-BUS" serial bus interface; (7) Low power consumption working mode.
Figure 1 is the principle block diagram of CMX860. CMX860 includes two packages, SSOP and SOIC, with a total of 28 pins. For specific pin diagrams and pin descriptions, please refer to the CMX860 user manual.
1.2 Introduction to SST89C58
The single-chip microcomputer SST89C58 is fully compatible with the standard 8052 pins, instructions and on-chip resources. The advantage of SST89C58 is that it contains 36KB of high-performance Flash, which can store both programs and data, simplifying the system design and eliminating the external Flash of the 24XX series or 93XX series that is usually expanded externally. The number of components is reduced, the system reliability is increased, and the overall cost is reduced. Another advantage of SST89C58 is that it has good confidentiality and is not easy to be decrypted or copied.
2 Connection between CMX860 and MCU
CMX860的一个显著特点是它的所有编程功能可以通过一个称为C-Bus(C总线)的串行总线接口来完成。单片机通过C-Bus与CMX860连接,C-Bus串行总线可在单片机和CMX860内部寄存器间进行数据、控制或状态信息的传送。
2.1 Hardware connection between CMX860 and MCU
The C-Bus interface of CMX860 is compatible with most common microcontroller serial interfaces and can be connected to the general I/O pins of the microcontroller. This system uses the P1.4, P1.5, P1.6, and P1.7 pins of the P1 port of SST89C58 to connect to the C-Bus interface of CMX860. The specific connection is shown in Figure 2.
The functions of each pin of CMX860 are as follows: CSN pin is used as enable pin, DATA pin receives serial data signal from microcontroller, CLK pin receives serial clock signal from microcontroller, and REDA pin sends serial data signal to microcontroller.
2.2 MCU Programming CMX860
According to the timing of the C-Bus interface, at the rising edge of the serial input clock, the data sent from the microcontroller command data line is locked into the CMX860. When the serial clock is high, the response data sent from the CMX860 to the microcontroller is valid. During data transmission, the CSN line (enable terminal) must be kept at a low level and kept at a high level between two transmissions. In the specific transmission process, the microcontroller first sends a byte to the CMX860 to represent the internal register address of the CMX860 (for the description and address of the internal register of the CMX860, see reference [1]), then the microcontroller sends one or more data bytes to the write-only memory of the CMX860, or the microcontroller reads one or more data bytes from the read-only memory of the CMX860, thereby completing the control programming of the CMX860. Figure 3 is a timing diagram of the microcontroller sending an address signal and a data signal to the CMX860.
The following are several subroutines for the microcontroller to communicate with CMX860: (1) The microcontroller writes a byte of information to CMX860, and the information is stored in register A.
OUT BYTE: MOV R7, #8
OUTB1: CLR CLK; the clock signal is set to low level
RLC A; read one bit from
A MOV DATE, C; put one bit of information into the DATA data line
SETB CLK; the clock signal is set to low level
RLCA; read one bit from A
MOV DATE, C; put one bit of information into the DATA data line
SETB CLK; the clock signal is set to high level, and at the rising edge of the clock, the data on the DATA data line is sent to CMX860
DJNZR7, OUTB1; a total of 8 bits are input CLR CLKRET (2) The microcontroller reads a byte of information from CMX860 and stores the information in register A. IN BYTE: MOV R7, #8 INB1: CLR CLK; Set the clock signal to low level NOP SETBCLK; Set the clock signal to high level MOV C, SOUT; When the clock signal is high level, read the data bit on the RDDA data line into the microcontroller RLCA; Store the data bit in register A DJNZR7, INB1; Read 8 bits in total CLR CLK RET (3) The microcontroller writes a byte of information to a specific register of CMX860. WRITE BYTE: CLR CSN; Set the enable terminal to low level MOV A, ADDR;
3 Introduction to Caller ID
3.1 Definition of Caller Identification Service Caller identification information transmission and display service is a new service item provided to the called telephone, which refers to the display of caller information such as caller number, caller name, call date and time on the called user's terminal equipment and storage for users to consult. [page]
3.2 Methods for implementing caller identification
The basic method of implementing caller identification is that the originating switch transmits the caller number and other information to the terminal switch through the signaling system, and the terminal switch transmits the caller identification information to the terminal user/terminal equipment in the form of dual-tone multi-frequency (DTMF) or frequency shift keying (FSK). The terminal switch sends the caller identification information to the called user terminal between the first ring and the second ring.
3.3 Transmission sequence of caller identification information data
The transmission sequence diagram of caller identification information data is shown in Figure 4.
In Figure 4, stage A is the first ringing signal sent by the switch to the terminal phone; stage B is the time interval between the end of the first ringing and the start of data transmission, which is 0.5 to 1.5 seconds; stage C is the data signal about caller identification information sent by the switch to the terminal phone, which should be less than 2.9 seconds; stage D is the time interval between the end of data transmission and the start of the second ringing, which is greater than 200ms; stage E is the second ringing signal sent by the switch to the terminal phone, which is 1 second in length.
3.4 Caller ID data format Caller ID data consists of two parts: the header and the body. The header consists of the message type and the message length, both of which are 8 bits. The value of the message type is used to identify the type of information, and the message length indicates the length of the following message value. The body includes the calling user information sent by the switch to the terminal user. The body can contain 1 to 255 8-bit message words, and each word is represented by an ASCII code with checksum. As shown in Figure 5.
4 Hardware and software implementation of the caller ID test part in the telephone tester
4.1 Hardware Implementation
The caller ID test part of the telephone tester simulates the terminal switch to send the caller information to the tested telephone to detect whether the content displayed on the tested telephone is accurate. Its principle block diagram is shown in Figure 6. Among them, the main control part includes circuits such as SST89C58 and CMX860, which generate and send the caller information; the power supply part provides +5V and +9V voltages to the main control part and the display part; the simulation part simulates the user loop of the switch, connects the telephone, and provides 48V power supply to the telephone; the display part is used to display the status of the tester and various information such as numbers sent by the telephone to the tester; the input part is used to input the caller information and the control commands of the tester.
4.2 Software Implementation
The system simulates the switch sending caller identification information to the telephone, and the telephone displays the caller information after receiving it. The caller identification information to be displayed can be obtained in two ways: (1) pre-stored in the data storage area during programming. This method can store all the content required by the national standard for testing; (2) input by the user. The user can input information before the test as needed, which can increase the flexibility of the test. There are two signaling methods for sending caller identification information: DTMF and FSK. The user can choose one or both signaling methods according to the telephone being tested. The test software flow chart is shown in Figure 7. The part of the flow chart that outputs the caller ID information follows the process of Figure 4.
5 Conclusion
Our multifunctional telephone test system designed with CMX860 as the core and capable of testing caller ID is now in use.
Previous article:Design of intelligent control system for dual power supply system combined with GSM
Next article:Research on Intelligent Infrared Thermometer
- Popular Resources
- Popular amplifiers
- Learn ARM development(16)
- Learn ARM development(17)
- Learn ARM development(18)
- Embedded system debugging simulation tool
- A small question that has been bothering me recently has finally been solved~~
- Learn ARM development (1)
- Learn ARM development (2)
- Learn ARM development (4)
- Learn ARM development (6)
Professor at Beihang University, dedicated to promoting microcontrollers and embedded systems for over 20 years.
- LED chemical incompatibility test to see which chemicals LEDs can be used with
- Application of ARM9 hardware coprocessor on WinCE embedded motherboard
- What are the key points for selecting rotor flowmeter?
- LM317 high power charger circuit
- A brief analysis of Embest's application and development of embedded medical devices
- Single-phase RC protection circuit
- stm32 PVD programmable voltage monitor
- Introduction and measurement of edge trigger and level trigger of 51 single chip microcomputer
- Improved design of Linux system software shell protection technology
- What to do if the ABB robot protection device stops
- Analysis of the application of several common contact parts in high-voltage connectors of new energy vehicles
- Wiring harness durability test and contact voltage drop test method
- From probes to power supplies, Tektronix is leading the way in comprehensive innovation in power electronics testing
- From probes to power supplies, Tektronix is leading the way in comprehensive innovation in power electronics testing
- Sn-doped CuO nanostructure-based ethanol gas sensor for real-time drunk driving detection in vehicles
- Design considerations for automotive battery wiring harness
- Do you know all the various motors commonly used in automotive electronics?
- What are the functions of the Internet of Vehicles? What are the uses and benefits of the Internet of Vehicles?
- Power Inverter - A critical safety system for electric vehicles
- Analysis of the information security mechanism of AUTOSAR, the automotive embedded software framework
- TI DSP bootloader and online upgrade
- Questions about creating schematic package in Orcad
- EEWORLD University Hall----Live Replay: Dadatong helps you unlock the new generation of ADAS technology
- What are the six axes in a six-axis robot?
- Three-phase sensorless sine wave BLDC drive (MS39549 and MS39545)
- Pre-registration for the prize live broadcast | TI uses DLP micro-projection technology to design augmented reality smart glasses
- Please recommend some technical public accounts and recent thoughts
- Come here to apply for the DFRobot Xingkong board~
- Which one has a 50 ohm impedance matching circuit? Please refer to it.
- (C-Wireless Charging Electric Car) Shaanxi Province First Prize_Topic C_Xi'an University of Electronic Science and Technology