Design of a Bluetooth CAN analyzer based on ARM and smart phone

Publisher:GoldenSunriseLatest update time:2019-11-27 Source: elecfansKeywords:ARM Reading articles on mobile phones Scan QR code
Read articles on your mobile phone anytime, anywhere

  In view of the need for CAN bus communication quality, testing and verification, as well as the complexity of traditional CAN analyzers and the insufficiency of having to use a PC as a display terminal, a design of a CAN bus analyzer based on an ARM microcontroller and a smart phone is demonstrated. The analyzer uses a hardware circuit with an ARM microcontroller as the core to complete real-time data collection and monitoring of the CAN network; it uses Bluetooth communication to achieve communication between the analyzer and the smart phone and uses the smart phone as the terminal to complete data analysis. The article specifically designs the analyzer hardware, software and smart phone page, proposes a new baud rate automatic detection method, and finally gives the actual test results of the designed CAN bus analyzer, which can realize the functions of CAN bus baud rate automatic detection, normal monitoring and CAN bus status analysis.


  CAN (controller area network) is a serial data bus with strong real-time performance, good flexibility and high standardization. It is widely used in automotive electronics, industrial automation, ships, medical equipment, industrial equipment and other fields. Its test equipment, CAN network analyzer, has become a must-have for developers. With the help of the easy-to-use CAN bus analyzer, it is possible to quickly find the design problems or abnormal interference problems in the use of the CAN bus system, and eliminate the faults and problems.


  Traditional CAN analyzers require the computer to be connected to the CAN analyzer via USB, and then the bus to be tested is connected to the CAN analyzer via the DB9 interface. Since the CAN bus is a popular field bus in the vehicle industry, such a debugging method is not very convenient for vehicles that need to be road tested, and it is difficult to ensure normal operation. Similarly, in the field of industrial control, the traditional CAN analyzer may cause some confusion in industrial sites with many wiring harnesses because both ends have wires. In addition, in order to ensure safety, today's equipment using the CAN bus sometimes has more than one bus. Traditional analyzers have at most two interfaces, which means that if you want to test more than two CAN buses at the same time, you need two USB interfaces. If the two CAN buses are far apart, you need a longer USB cable. For this reason, here is a Bluetooth CAN bus analyzer with low cost, small size, simple structure, wireless debugging and low environmental requirements.


  1 Hardware Design

  1.1 Overall design

  In view of the various shortcomings of traditional CAN analyzers, this paper proposes a new CAN analyzer that uses a smartphone instead of a PC as a display terminal, uses Bluetooth wireless transmission instead of USB cable transmission, and has its own lithium battery. The overall design structure is shown in Figure 1.

  Bluetooth CAN analyzer overall design block diagram

  Figure 1 Overall design block diagram of Bluetooth CAN analyzer

  Since the CAN analyzer is a communication protocol with a high baud rate, and complex calculations are required for communication quality analysis and fault location, the Bluetooth CAN analyzer proposed in this paper includes three parts in its overall design: one part is a processing motherboard with ARM as the processing core, which is responsible for CAN bus baud rate detection, data acquisition and Bluetooth communication signal transmission; the second part is a lithium battery, which is responsible for providing power to the motherboard. The lithium battery has a voltage of 5V, a capacity of 3000mAh, and a size of 11.6mm X42mm×69ram, which can ensure that the system works for more than 10h; the third part is a smart phone, which is responsible for receiving CAN bus data and processing the data.


  1.2 Motherboard Design

  There are 4 modules on the mainboard, namely, isolated CAN interface module, ARM processor module, Bluetooth serial port module, and power circuit module. The design block diagram is shown in Figure 2, and the actual picture is shown in Figure 3.


  The isolated CAN interface module is responsible for sending the ARM data to the CAN bus and sending the data on the CAN bus to the ARM processor.

  Mainboard system design block diagram

  Figure 2 Mainboard system design block diagram

  Motherboard shopping map

  Figure 3 Motherboard shopping map

  The ARM processor module is the core of this analyzer, using the NXP LPC2119 processor. LPC2119 is based on a 16/32-bit ARM7TDMI-STM CPU that supports real-time simulation and tracing, with 128KB embedded high-speed Flash memory, and internally integrated with 2 CAN controllers. Its main features are: data transmission rate on a single bus up to 1MB/s; 32-bit register and RAM access; compatible with CAN2.0B, IS011898.1 specifications; global acceptance filter can identify all 11-bit and 29-bit identifiers; acceptance filter provides Full CAN-style automatic reception for selected standard identifiers. It is mainly responsible for processing the data on the CAN bus and then sending it to the mobile phone through the Bluetooth serial port. In addition, the ARM module is also responsible for detecting the baud rate on the unknown CAN bus and sending it to the mobile phone.


  The Bluetooth serial port module is responsible for exchanging data between ARM and the mobile phone, and the communication rate of its serial port reaches 1 382 400bps. The power module is responsible for supplying power to each module.

Keywords:ARM Reference address:Design of a Bluetooth CAN analyzer based on ARM and smart phone

Previous article:Learn about logic analyzer testing in seven steps
Next article:Waveguide Calibration Setup Guide Using a Network Analyzer

Recommended ReadingLatest update time:2024-11-16 15:00

Design of wireless network card device driver based on ARM
0 Introduction With the development of mobile and portable communications, wireless local area networks (WLANs) are becoming increasingly popular. The access to wireless local area networks in embedded systems can not only realize wireless control and data transmission of embedded systems, but also meet some spe
[Microcontroller]
Design of wireless network card device driver based on ARM
Design of coal gangue separation system based on ARM microcontroller AT91M40800 and CAN bus
  introduction   With the continuous development of embedded technology, the ARM microcontroller with high performance, low power consumption and low price of 32-bit RISC chip has shown a strong development trend. The combination of embedded system and fieldbus technology, combining the advantages of both, provides a
[Microcontroller]
Design of coal gangue separation system based on ARM microcontroller AT91M40800 and CAN bus
ARM startup analysis
Most ARM-based chips are complex on-chip systems. Most hardware modules in such complex systems are configurable and need to be set to their required working states by software. Therefore, before the user's application program, a special piece of code is required to complete the initialization of the system. Since th
[Microcontroller]
ARM startup analysis
VoIP system based on AMR speech coding and decoding algorithm
This paper proposes a new VoIP system based on the AMR speech codec algorithm, which can adaptively select an optimal transmission rate according to the quality of the network channel, so that the synthesized voice quality has a better QoS guarantee. Through simulation on the NS-2 platform, the experimental results
[Microcontroller]
Difference between ARM7 and Cortex-M3
1. ARM Implementation Method ARM  Cortex-M3 is the latest ARM embedded core based on ARM7v architecture. It adopts Harvard structure and uses separate instruction and data buses (under von Neumann structure, data and instruction share one bus). In essence, Harvard structure is more complex physically, but the processin
[Microcontroller]
Building an Arm-Linux-GCC cross-compilation environment under Ubuntu
1: Unzip arm-linux-gcc-3.4.1.tar.bz2   #tar -jxvf arm-linux-gcc-3.4.1.tar.bz2   The unzipping process takes a while. The unzipped files form a ../temp/usr/local/ folder. Enter the folder and copy the arm folder to /usr/local/   # cd usr/local/   #cp -rv arm /usr/local/   Now the cross-compiled assemblies are all under
[Microcontroller]
Questions about ARM assembly mov operation immediate value
1. Because I still don't understand some instructions of ARM assembly, especially the differences between some instructions with similar functions. I accidentally searched "FAQ ARM assembly" on the Internet, and several problems described in it are worth studying carefully. 2. I gradually found that I was no longer af
[Microcontroller]
How is ADC done within an MCU?
What are the advantages of STM32? Apart from the publicity, a careful analysis shows that the STM32 clock is not fast, 72MHZ, and it cannot expand large-capacity RAM FLASH, nor does it have a powerful instruction set like DSP. What are its advantages? ---It’s about quickly collecting data and quickly processing it.
[Microcontroller]
How is ADC done within an MCU?
Latest Test Measurement Articles
Change More Related Popular Components

EEWorld
subscription
account

EEWorld
service
account

Automotive
development
circle

About Us Customer Service Contact Information Datasheet Sitemap LatestNews


Room 1530, 15th Floor, Building B, No.18 Zhongguancun Street, Haidian District, Beijing, Postal Code: 100190 China Telephone: 008610 8235 0740

Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved 京ICP证060456号 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号