Software Design¶
CI1301, CI1302 and CI1303 chips are equipped with mature SDKs and various development tools, and users can click Chipintelli Speech AI Development Platform Download SDK and development tools, and complete the software development of corresponding voice products through this platform.
The SDK usage document of this chip can be found by clicking ☞CI130X chip SDK
Users can use the SDK software and voice AI platform to customize the corresponding wake-up words and control command words according to the functional requirements of their products. For specific modification methods, please refer to ☞CI130X command word production. The software can also define the functional work to be executed after receiving the corresponding command words. For the specific writing method, please refer to ☞SDK Software Structure .
For voice recognition, users can choose different front-end algorithms according to different products and scenarios. Please refer to the following link for the configuration and use of front-end algorithms:
- ASR Speech Recognition ☞《Instructions for Use of Speech Recognition》
- Denoise noise reduction ☞《Instructions for Use of Voice Noise Reduction》
- AEC Echo Cancellation ☞《Instructions for Use of Echo Cancellation》
The chip is built with various MCU peripheral control interfaces, such as UART, IIC, TIMER, PWM, GPIO, etc. Users can develop MCU product solutions with intelligent speech recognition. The use methods of some peripheral interfaces are described as follows:
- UART: Universal serial data bus, used for asynchronous communication, capable of full duplex transmission and reception. For the register description of the interface module corresponding to the chip, please refer to☞《UART》. For the use method of the driver software corresponding to the SDK, please refer to☞《UART》.
- IIC: Integrated circuit bus, which adopts a serial and half duplex bus communication protocol for communication between chips with short distance and low speed. For the register description of the interface module corresponding to the chip, please refer to ☞《IIC》. For the use method of the driver software corresponding to the SDK, please refer to ☞《Integrated Circuit Bus (IIC)》.
- PWM: pulse width modulation output, a digital coding method for analog signal level, which uses pulses of different frequencies and square waves with different duty cycles to code the level of a specific analog signal, so that a series of pulses with equal amplitude can be obtained at the output end, and these pulses can be used to replace the peripherals of the required waveform. For the register description of the interface module corresponding to the chip, please refer to 《PWM》. For the use method of the drive software corresponding to the SDK, please refer to 《Pulse Width Modulation Output (PWM)》.
- TIMER: general timer, which can repeatedly trigger timer events of the specified window within the specified time interval. For the use method of the corresponding driver software in the SDK, please refer to timer.
- GPIO: general IO port. Each GPIO port has corresponding control register and configuration register. For the register of the interface module corresponding to the chip, please refer to ☞《GPIO》. The driver API functions of the module in the SDK are divided into two categories: one is to operate a pin independently, and the other is to operate one or more pins simultaneously. The API functions provide IO input/output status query interface, interrupt mask query interface, interrupt clear interface, interrupt status query interface Interrupt trigger mode configuration interface (can be configured as: low level trigger, high level trigger, rising edge trigger, falling edge trigger, bilateral edge trigger) to meet the requirements of different applications. For the method of using the module driver software, please refer to ☞《GPIO》.
- IIS: 3-way IIS is built in the chip, and IIS0 can be used externally. This interface can be used to interface with external 16/24/32-bit stereo digital audio signal codec circuits, and can be used in situations where CODEC inside the chip cannot meet the application requirements. For the register description of the interface module corresponding to the chip, please refer to ☞《IIS》. For the use method of the corresponding driver software in the SDK, please refer to ☞《Audio Digital Transmission Bus(IIS)》.
- ADC: ADC is the module in the chip that realizes the analog digital conversion function, mainly converting the analog quantity of voltage value into digital quantity for the system to monitor voltage or other processing. For the register description of the interface module corresponding to the chip, please refer to ☞《ADC》. For the use method of the corresponding driver software in the SDK, please refer to ☞《Analog to Digital Converter(ADC)》.
For more detailed information about the development of the chip software solution, the user can click ☞product solution development to find the development process of the corresponding product for in-depth understanding.