“Bluetooth is a brand-new wireless data exchange technology. Its application saves the wired connection process that requires complicated software installation and debugging between various digital devices. It integrates with household appliances and brings a new feeling to people’s life and work.
Bluetooth is a brand-new wireless data exchange technology. Its application saves the wired connection process that requires complicated software installation and debugging between various digital devices. It integrates with household appliances and brings a new feeling to people’s life and work.
There are two ways of integrating Bluetooth technology into various digital devices: one is a single microcontroller way, that is, all Bluetooth low-level transmission protocols (including Bluetooth radio frequency, baseband and link controller, link manager) and high-level Transmission protocols (including logical link control and adaptation protocol, service discovery protocol, serial port emulation protocol, network encapsulation protocol, etc.) and user application programs are integrated into one module, and the entire processing process is completed by a microprocessor; another One is the dual microcontroller mode, that is, the Bluetooth protocol and the user application are implemented by the host and the host controller respectively (the low-level transmission protocol is generally implemented by the Bluetooth hardware module, and the microprocessor embedded in the module is called the host controller, and the high-level transmission protocol is implemented by the host controller. Protocols and user applications run on personal computers or embedded microcontrollers, DSPs, etc., called the host), and the host and the host controller are connected through a standard physical bus interface (USB, RS 232, etc.).
In the Bluetooth host-host controller connection model, the host interface HCI (Host Controller Interface) is used as the interface between software and hardware in the Bluetooth software protocol stack. It provides a control baseband and link controller, link manager, state Unified interface for hardware such as registers. At present, the physical interfaces of the Bluetooth HCI transport layer include universal serial bus USB, serial port RS 232, universal asynchronous transceiver UART and so on. When the host communicates with the host controller, the protocol above the HCI layer runs on the host, while the protocol below the HCI layer is completed by the Bluetooth host controller hardware, and they communicate through the HCI transport layer. HCI is present in both the host and the host controller, and they have the same interface standard. The HCI in the host controller interprets the information from the host and sends the information to the corresponding hardware module unit, and also forwards the information in the module (including data and hardware/firmware information) up to the host as needed. Figure 1 shows the Bluetooth host-host controller model.
The bluetooth host-host controller model scheme adopts the bluetooth module, additional module and docking object module of CSR’s BlueCore2External bluetooth chip to realize the bluetooth USB interface.
2. Overview of Bluetooth modules, additional modules and docking object modules
2.1 Bluetooth module
BlueCore2External is a single-chip radio and baseband link controller BlueTooth 2.4 GHz system that integrates RF, baseband and MCU with fully integrated Bluetooth protocol stack and transceiver using 0.18 μm CMOS technology. The working power supply is 1.8 V. Compared with the company’s first-generation Bluetooth product BlueCore1, the internal RAM (3 2 kB) is increased, and the external FLASH for expansion is increased to 8 Mb, and the energy consumption is lower. Designing with BlueCore2External chip reduces the number of external RF components and ensures that the cost of product modules is minimized. The device incorporates automatic calibration and establishes an internal self-test program to simplify development, type consistency and enable production testing. All hardware and device firmware are fully compatible with the BlueTooth Specification v1.1. When used in conjunction with an external flash memory containing the CSR Bluetooth protocol stack, data and voice communication is possible. In addition to the USB interface and UART interface defined in the Bluetooth specification v1.1, and the PCMCODEC audio interface, the chip also defines serial peripheral interfaces, parallel programmable I/O ports and I2C bus interfaces. These interfaces enable programming simulation, Debugging and testing are more convenient, and the ability to interface with external devices is greatly enhanced. The internal structure of the chip is shown in Figure 2.
2.1.2MBM29LV800BA90PBT flash memory chip
MBM29LV800BA90PBT is an 8 Mb flash memory produced by FUJITSU Corporation. It is organized by 8 b1 MB per 8 b1 MB or 16 b 512 kB, 3.3 V single supply, with programming and erasing functions to minimize system power requirements, supports JEDEC control standard, uses the same control as E2PROM software.
2.2 Additional modules
The additional module consists of two chips, namely MAX878 chip and XC6209B182MR chip, which are two voltage conversion chips, which mainly provide voltage for BlueCore2External chip and flash memory chip MBM29LV800BA90PBT in the Bluetooth module. The voltage of these two chips is provided by the USB device of the docking object module. Since the USB sockets are all powered by 5 V inside the PC, the BlueCore2External chip needs two power sources, 1.8 V and 3.3 V, and the flash memory chip MBM29LV 800BA90PBT needs a 3.3 V single power supply. Therefore, the voltage conversion chip needs to complete the conversion from 5 V to 1.8 V and 3.3 V. The MAX878 chip completes the conversion from 5 V to 3.3 V, and the XC6209B182MR chip completes the conversion from 3.3 V to 1.8 V.
2.3 Docking object module USB
USB is a serial interface standard published and promoted by the “Universal Serial Bus Implementation Forum” organization. Bluetooth does not develop a new protocol for the USB interface, but uses the existing USB protocol. The USB interface supports the Bluetooth specification v1.1, and can communicate with other digital devices. The USB device hardware can be loaded into the device in two ways, one is a USB dongle shaped like a U disk; the other is integrated into the device. on the motherboard of the computer. For the configuration of specific Bluetooth USB interface endpoints, please refer to Bluetooth Specification 1.1.
To sum up, the hardware signal flow of the specific design is shown in Figure 3.
3. Software program implementation
For USB hardware drivers, you can use the software development kit DDK provided by Microsoft, which provides driver developers with the resource files required for driver development, compiling link programs, and developing technical documents. The Bluetooth protocol does not develop a new protocol for the USB interface, but uses the existing USB protocol. Due to space limitations, the hardware driver for the USB interface will not be described in detail. Only focus on the realization of Bluetooth connection and data communication through the physical interface of the Bluetooth HCI transport layer USB. Taking VC++6.0 as the software development platform, due to limited conditions, only the program of point-to-point Bluetooth connection and communication is given. As for point-to-multipoint, only some parameters need to be modified slightly. The flow chart of the point-to-point software is shown in Figure 4.