91精品综合久久久久久五月天_国产精品一区电影_中文字幕欧美日韩一区二区_亚洲一区二区三区精品动漫

ARM-based CAN bus intelligent node

Abstract: CAN bus is a widely used real-time field bus is proposed based on ARM7TDMI core with 32-bit micro-controller CAN bus intelligent node design. Details of the ARM control (LPC2294) features, intelligent node structure and system software design, combined with actual on-site hardware anti-interference measures are given.

CAN (Controller Area Network) or Controller Area Network, CAN bus is the most widely used international fieldbus one. It was first introduced by the German company Bosch, CAN communication protocol is an internal measure for automotive components and the implementation of the agreement between the data communication.

As an advanced technology, high reliability, functional, cost and reasonable remote network communication control mode, CAN bus has been widely applied to various automatic control systems. For example, in automotive electronics, automation, intelligent building, electronic systems, security monitoring and other areas, CAN bus has the incomparable advantage. The design of the program are given CAN bus node. It uses built-in multi-CAN bus controller PLC2294 as the main controller, small size makes the node, low power consumption, interference immunity is good, and therefore particularly suitable for automotive, industrial control and medical systems and fault-tolerant maintenance bus.

A hardware design

1.1 LPC2294 features

ARM7 series with ARM7TDMI 32-bit embedded microprocessor cores is very broad application of the embedded RISC processor. The series chip size, low power consumption, low cost, high performance and flexibility, and have more registers, provide expanded enhanced dual 16/32-bit fixed-length instruction set. With 16-bit Thumb instructions can save up to 35% of the space. Also the implementation of water injection line of work also provides embedded ICE2RT logic to support the on-chip breakpoints and debugging point of support, with advanced software development and debugging environment.

ARM-based CAN bus intelligent node

The design firm selected PHILIPS LPC2294 is a powerful new ultra-low power ARM7TDMI core with 32-bit microcontroller. 144-pin package, the two 32-bit timers, Octal 10-bit ADC, four CAN channels and PWM channels and up to nine external interrupt, internal 256K bytes of embedded Flash memory and 16K bytes of high-speed static RAM, including 76 ( use of external memory) to 112 (single) a GPIO port. So rich on-chip resources can meet the needs of industrial control in general, but also can reduce the system hardware design complexity. In addition, LPC2294 JTAG support real-time simulation and tracking, 128-bit wide memory interface and a unique accelerator architecture enable 32-bit code can be up to 60MHz operating frequency of operation.


LPC2294 CAN controller within the integrated four: meet the CAN specification CAN2.0B, ISO 11989-1 standard: Bus Data Port degree can be up to 1Mbps; can access 32-bit register and RAM; global acceptance filter can identify almost all Bus 11-bit and 29-bit Rx identifiers; acceptance criteria for the selection of the filter provides an identifier FullCAN-style automatic reception.

As a core component of this design, LPC2294 only take up the role of the main controller, but also as a CAN network node controller, and other nodes in the network for data transmission and exchange.

1.2 CAN node hardware circuit

CAN node hardware circuit shown in Figure 1, the ARM microcontroller LPC2294, CAN bus transceiver TJA1050T, high-speed optocoupler 6N137 and power isolation module B0505S so on.

Master LPC2294 chip crystal frequency range of 1 ~ 30MHz. The design selected crystal frequency is 20MHz, the VPB divider by setting the internal CPU clock frequency can be improved. 256K bytes of internal high-speed Flash memory for code and data storage. For FLASH memory, built-in serial through the JTAG interface in system programming (ISP), or In-Application Programming (IAP). In order to facilitate debugging and system upgrades can be reserved for those in the design of the interface circuit.

LPC2294 dual power supply. CPU supply voltage range of 1.65 ~ 1.95V (1.8V ± 8.3%), I / O supply voltage range of 3.0 ~ 3.6V (3.3V ± 10%).

Transceiver TJA1050T CAN protocol controller and the physical is the interface between the bus, with "ISO 11898" standard is fully compatible. CANH and CANL ideal match, electromagnetic radiation can be reduced even lower. In addition, TJA1050T no power, the bus showed passive properties, which makes TJA1050T in performance is much better than the previous CAN bus transceiver. TJA1050T There are two operating modes: high-speed mode and silent mode (which by the pin "S" to control). In the high-speed mode, the bus output signal having a fixed slope, and to switch quickly as possible. High-speed mode, for maximum bit rate and maximum bus length of the case, but this time its the smallest transceiver loop delay. Silent mode is forbidden energy transmitter. It does not matter TxD input signal. CAN controller silent mode to prevent uncontrolled congestion caused when network communications.

1.3 Anti-jamming design of hardware

Applied in the design of occasions, produce more electromagnetic signals equipment, including FM equipment, audio equipment, power supply, so anti-jamming device display is particularly important. Taken the following measures:

(1) In order to further enhance the anti-interference ability of CAN-bus node, ensure that all electrical nodes is completely isolated and independent, LPC2294's TX0 and high-speed optocoupler 6N137 RX0 were the TXD to RXD and TJA1050T connected. However, it should be specified that the coupler part of the circuit to be used in two completely separate power supply, or using optocoupler also meaningless. Completely isolated power supply with low power isolated modules B0505S. Although more complex circuits, but increase the stability and security of the node.

(2) CAN bus ends plus two 120Ω resistors, two resistors for the bus impedance matching plays an important role. They will remove the interference of data communication and reliability greatly reduced, if not impossible to communicate.

(3) CANH and CANL and in parallel between the two 30pF capacitors small, you can filter out high frequency noise on the bus and have some ability to prevent electromagnetic radiation; in between two CAN bus access into the terminal the 5.6V of the TVS tube, when the CAN bus fleeing into voltage interference by TVS tube overvoltage protection circuit play a role.

(4) In order to reduce the interference field of the node, useful shielded twisted pair, and based on actual experience, do not need a shielded cable shield grounding.

2 Software

Software debugging environment using ARM's ARM core processor integrated development tools ADSv1.2. ADSv1.2 integrated assembly, C, C + + compilers and debuggers, compilers, high efficiency, providing a powerful system library to support software debugging, JTAG emulation and debugging hardware debugging. This design uses a JTAG emulation debug.

For the average 32-bit ARM applications, must be initialized before running the main program running environment, namely, the preparation of ARM chip boot code. The boot code includes exception vector table, stack initialization, storage system initialization such as initialization and target board, usually written in assembly language. For this design, the key is to write CAN driver. Main program simply by calling the driver to provide the interface for data receive and transmit, the driver includes four parts: CAN controller initialization, receive data, send data and bus exception handling. Figure 2 was the main program flow chart.

2.1 CAN controller initialization

CAN controller initialization operation including: hardware is enabled, the software reset, equipment, alarm limits, equipment bus baud rate, device interrupt work, equipment acceptance filter works, equipment and other operating mode and start the CAN. Initialization procedure is as follows:

HwEnCAN (CanEum); / / hardware enabled, CanNum = 0 ~ 3, refers to four CAN controllers
SoftRstCAN (CanNum); / / software reset registers
CANEWL (CanNum). Bits.EWL_BIT = USE_EWL_LAN [CanNum]; / / set the error warning limit
CANBTR (CanNum). Word = USE_BTR_CAN [CanNum]; / / initialize the baud rate
VICDefVectAddr = (UINT32) CANIntPrg; / / initialize the interrupt vector interrupt a non-
VICIntEnable 1 = (1 <<19) | (1 <<(20 + CanNum)) | (1 <<26 + CanNum));
CANIER (CanNum). Word = USE_INT_CAL [CanNum];
CANAFMR.Bits.Accbp_bit = 1; / / configure the acceptance filter (bypass state, the acceptance filter mask)
CANMOD (CanNum). Bits.TPM_BIT = USE_TPM_CAN [CanNum]; / / initialization mode
CANMOD (CanNum). Bits.LOM_BIT = USE_MOD_CAN [CanNum];
SoftEnCAN (CanNum); / / Start CAN

LPC2294 on-chip peripherals and pin connection from the pin connecting the module control. CAN controller is enabled by software, hardware devices to control the GPIO registers multiple switches, the specific pin and connect the CAN controller. The CAN registers in the device must be carried out before the software reset, this is because some of CAN registers must be read and write in the soft reset state.

It is worth noting, LPC2294 CAN controller for all the global search function to receive the identifier. 2KRAM can accommodate 1,024 standard identifier or extended identifier 512 or a mixture of two types of identifiers. Software, may set stored in the RAM 1 to 5 form the identifier. CAN controller SJA1000, compared with independent, it can more easily arbitrary complex filter to filter ID, the ID of the receiver to meet the complex filtration requirements. This will undoubtedly greatly reduce the complexity of the system software design and run-time burden. Acceptance filter settings work, you must create a LUT preferred form, the designated start address of each table, with the actual ID address initialize the form. Final acceptance filter mode register set. If the node does not take the initiative to send data, choose the bus into sleep mode when inactive.

 

2.2 data transmission

Will send the data to be packaged into line with CAN protocol frame format, can be written to send a relief station area, and automatically sent. Figure 3 is sending subroutine flow chart.

Send buffer before writing to inquire about their status. LPC2294 CAN controller in each of the three to send the buffer zone, their status can check CANSR know. Only when there is space in which to send the data buffer that was written. Sending large amounts of data, this step is particularly important, will not guarantee the reliability or send. Start sending successful only through the query CANGSR of TCS-bit or configuration sent successfully interrupt to determine whether the data sent successfully.

ARM-based CAN bus intelligent node

2.3 Data Receiver

Query can be used to receive data mode or interrupt mode. A certain period of time, CAN bus is not always in the activities, in order to improve efficiency, can be used interrupt. In the initialization process must be able to receive interrupts. In the interrupt service routine to read the CANICR, to determine whether to receive interrupt flag, there is data to read receive buffer. Receive buffer data in order to prevent overflow, can open up a loop to receive data queue to temporarily store data, the main program will check the queue to get through the bus data.

2.4 exception handling

Online Bus serious case of failure, CAN nodes may be out of the bus, then the following register bit is set: CANSR the BS bit, CANIR of BEI bit and EI-bit (if enabled) and CANMOD the RM bit. RM CAN controller function will reset and many prohibited. Software the next step must be set to zero RM bit. Send error counter will decrease the release conditions count bus (11 consecutive recessive bits) of section 128 do. Software can read the Tx error counter on the counter to monitor the situation descending count.

In the application, if the previous transmission to the CAN controller's data has not been read out, while the receive buffer has not timely release of information is likely to cause behind the loss. Then must write the command register to clear CANSR data overflow bit. These two exceptions can be handled by interrupt exception, as long as the interrupt handling code can be added subroutine. Other bus exception handling can decide whether the use of software processing.

In short, the software is very important in the preparation and planning. ARM7TDMI RISC instruction set is based, and has a 32-bit Thumb ARM/16 SR double that call each other. Therefore, in order to improve code density and performance do not ask some of the Thumb instruction set code can be written.

Since the program small, low power consumption, interference and good, has been applied to complex electromagnetic environment of a vehicle communication equipment, the project meets the requirements of section CAN network points.

Declined comment

91精品综合久久久久久五月天_国产精品一区电影_中文字幕欧美日韩一区二区_亚洲一区二区三区精品动漫
国产精自产拍久久久久久| 久久99久久99精品| 日韩不卡av| 丁香色欲久久久久久综合网| 亚洲自拍的二区三区| 中文字幕不卡每日更新1区2区| 国产精品视频xxx| 国产精品免费小视频| 国产精品青青在线观看爽香蕉| 国产精品视频99| 国产精品视频免费观看| 久久精品国产一区| www.日韩.com| 国产精品吊钟奶在线| 色综合色综合网色综合| 亚洲自拍另类欧美丝袜| 天堂а√在线中文在线| 欧美做受777cos| 国内精品一区二区三区四区| 国产在线观看不卡| 国产精品中文字幕久久久| 超碰网在线观看| 国产美女视频免费| 9191国产视频| 久久久久久久久久码影片| 国产精品乱子乱xxxx| 中文字幕日韩精品一区二区 | 久久黄色av网站| 国产精品天天狠天天看 | 国产精品网址在线| 国产精品视频区| 永久免费看av| 天堂精品一区二区三区| 青青草一区二区| 国产伦精品一区二区| 国产成人一区二区在线| 国产精品久久久久久久久久久久久久| 在线日韩av永久免费观看| 亚洲一区精品电影| 日韩在线第三页| 欧美性受xxx| 丰满少妇大力进入| 国产盗摄xxxx视频xxx69| 国产精品视频yy9099| 亚洲综合日韩中文字幕v在线| 亚洲精品免费在线视频| 欧美日韩精品中文字幕一区二区| 国产日韩三区| 国产成人aa精品一区在线播放| 国产精品女视频| 日本精品免费| www.欧美黄色| 国产精品第一区| 日本精品一区二区三区不卡无字幕| 国产在线一区二区三区| 国产激情视频一区| 国产精品久久久久久久午夜| 日韩av一区二区三区在线| 国产午夜伦鲁鲁| 日韩亚洲综合在线| 亚洲一区二区中文字幕| 国产亚洲精品久久久久久久| 91精品国产91久久久久久| 国产精品成人av在线| 日本久久久a级免费| …久久精品99久久香蕉国产| 九九热在线精品视频| 欧美日韩二三区| 国产激情美女久久久久久吹潮| 精品自在线视频| 免费av网址在线| 日韩一区av在线| 日日摸日日碰夜夜爽av| 成人久久18免费网站图片| 欧美xxxx18性欧美| 僵尸世界大战2 在线播放| 久艹视频在线免费观看| 视频一区亚洲| 91精品久久久久久久久| 久久久久久91香蕉国产| 国内揄拍国内精品| 久久久久久久久久久免费| 久久91精品国产91久久久| 国产又粗又猛又爽又黄的网站| 久久精品日韩精品| 三区精品视频观看| 91精品国产91久久| 亚洲精品欧美日韩专区| 91九色在线观看视频| 亚洲一区二区在| 99久久伊人精品影院| 一区二区三区欧美在线| 激情五月婷婷六月| 国产精品久久久久久亚洲影视 | 久久国产精品 国产精品 | 欧美成aaa人片在线观看蜜臀| 男人天堂成人网| 国产精品国三级国产av| 欧美二区在线视频| 国产精品黄页免费高清在线观看 | 欧美成年人在线观看| 国产色综合天天综合网| 国产精品国产三级国产专区53| 热久久精品国产| 国产精品天天狠天天看| 激情内射人妻1区2区3区| 国产精品视频不卡| 美女黄毛**国产精品啪啪| 国产精品久久久久免费a∨| 欧美亚洲国产成人| 久久精品国产91精品亚洲| 欧美国产日韩在线播放| 国产精品福利视频| 国产有码在线一区二区视频| 亚洲最大福利网站| 久久精精品视频| 欧美国产激情视频| 精品视频9999| 国产毛片视频网站| 亚洲精品无码久久久久久| 日韩在线视频二区| 国内精品久久国产| 中文一区一区三区免费| 国产精品av在线播放| 亚洲美女网站18| 国产高清精品一区二区| 欧美视频1区| 一本色道久久综合亚洲精品婷婷| 69**夜色精品国产69乱| 霍思燕三级露全乳照| 亚洲欧美影院| 国产精品青青草| 91精品国产免费久久久久久| 日韩经典在线视频| 中文字幕色呦呦| 国产成人免费91av在线| 国产精品夜色7777狼人| 日本久久久久久久| 欧美日韩福利视频| www.日韩.com| 91久久大香伊蕉在人线| 国内成人精品一区| 日本不卡免费新一二三区| 精品久久久久av| 久久久精品网站| 成人毛片100部免费看| 琪琪亚洲精品午夜在线| 一区二区三区av| www.亚洲免费视频| 不卡一区二区三区视频| 欧美日韩免费精品| 欧美一区二区激情| 九九热这里只有精品6| 日韩视频免费大全中文字幕| www国产免费| 精品一区二区视频| 欧美最大成人综合网| 涩涩日韩在线| 一区二区视频在线观看| 国产精品久久中文字幕| 久操网在线观看| 久久久天堂国产精品女人| 国产精品一区二区免费看| 日韩精品―中文字幕| 亚洲爆乳无码专区| 免费av在线一区| 国产精品免费久久久久影院| 久久久久久美女| 国产精选一区二区| 国产自产女人91一区在线观看| 日韩人妻无码精品久久久不卡| 午夜精品一区二区三区在线视频| 国产精品第12页| 久久久国产精品x99av| 国产成人精品免费视频| 91精品国产91久久久久久吃药 | 国产日韩视频在线播放| 欧美日韩一区在线视频| 日日噜噜夜夜狠狠久久丁香五月| 久久伊人免费视频| 久久久久久久亚洲精品| 久久一区二区三区av| 国产激情在线观看视频| 久久久人成影片一区二区三区| 国产精品自产拍在线观看中文| 美国av一区二区三区| 国产一区高清视频| 国产日韩精品入口| 国产免费一区视频观看免费| 蜜臀精品一区二区| 黄色免费高清视频| 蜜臀av性久久久久蜜臀av| 欧美精品欧美精品| 欧美激情一区二区三区在线视频| 欧美中文字幕在线| 欧美大香线蕉线伊人久久| 欧美二区在线| 国产欧美日韩专区发布| 国产狼人综合免费视频| 国产精品一色哟哟|