| The Datasheet Archive - 100 Million Datasheets from 7500 Manufacturers. |
Introduction. Module Features List Component Modules Using Library Mod
Top Searches for this datasheetECAN(Polling) Module Introduction. Module Features List Component Modules Using Library Module Project. List Shared Parameters. Functions Error Status Flags ECAN (Polling) Module Introduction This document describes programming interface ECAN (Enhanced Controller Area Network) module. time writing this document, only PIC18F8680/6680 family microcontroller contained ECAN module. This module provides access ECAN module polling fashion. This module completely written language. provides many customization options that result significant code reduction. utilize this module, must understand options offered ECAN module. This module also available Microchip Application Note AN878. Module Features Out-of-box support Microchip HI-TECH PICC-18 compilers Offers simple abstract interface ECAN module most applications Additional functions/macros available advanced applications Supports three functional modes Provides access ECAN features Polling mode Easily modifiable Interrupt-driven mode Operates main modes: Run-time Library Mode Fixed Library Mode Various compile-time options customization routines specific application Also available Microchip Application Note AN878 ECAN (Polling) Module Page List Component Modules ECAN.ex.txt ECANPoll.c ECANPoll.h ECANPoll.def This main test file developed demonstrate library functions. This ECAN code implementation file. needs include this file their project. This file contains prototypes functions macros. needs include this file every source file where ECAN functions will called. This file contains compile-time options ECAN module. using Maestro, this file will created your option selections. This file automatically included ECANPoll.h file. Using Library Module Project Please follow below steps this library module your project. Application Maestro configure your code required. Generate Files step, save output directory where your code project resides. Launch MPLAB, open project's workspace. Verify that Microchip Toolsuite HITECH-PICC18 Toolsuite selected (Project>Select Language Toolsuite). Workspace view, right-click "Source Files" node. Select "Add Files" option. Select ECANPoll.c click right-click "Linker Scripts" node select "Add Files". appropriate linker file (.lkr) project's target microcontroller. other files that your project require. Save close project. your main source file, include directive head code listing include ECANPoll.h. doing definitions required make generated code work your project will included reference when build project. module your application, invoke functions macros needed. ECAN (Polling) Module Page List Shared Parameters None ECAN (Polling) Module Page Functions Function Preconditions Overview Input Output Side Effects void ECANAbortAll(void) None This macro requests that transmit buffers aborted. None None None Function Preconditions Overview Input Output Side Effects void ECANDisableCANTX2(void) None This macro disables CANTX2 makes digital pin. None None None Function Preconditions Overview Input Output Side Effects BYTE ECANGetFilterHitInfo(void) ECANReceiveMessage() called returned TRUE This function retrieves filter info last fetched message. This function simply copies filter information available into local variable later use. None Filter Info through means RXF0, means RXF1 None Function Preconditions Overview Input Output Side Effects BYTE ECANGetFunctionalMode(void) None This macro gets current functional mode. None ECAN Functional mode. Returned value will following: ECAN_MODE_0 Mode ECAN_MODE_1 Mode ECAN_MODE_2 Mode None ECAN (Polling) Module Page Function Preconditions Overview Input Output Side Effects ECAN_OP_MODE ECANGetOperationMode(void) None This function gets current ECAN operation mode. None ECAN_OP_MODE_NORMAL Normal mode ECAN_OP_MODE_SLEEP SLEEP mode ECAN_OP_MODE_LOOP Loopback mode ECAN_OP_MODE_LISTEN Listen only mode ECAN_OP_MODE_CONFIG Configuration mode None Function Preconditions Overview Input Output Side Effects BYTE ECANGetRxErrorCount(void) None This macro returns current RXERRCNT defined spec. None Current value receive error count. None Function Preconditions Overview Input Output Side Effects BYTE ECANGetTxErrorCount(void) None This macro returns current TXERRCNT defined spec. None Current value transmit error count None Function Preconditions Overview Input Output Side Effects void ECANInitialize(void) None This function initializes ECAN module Maestro options. None None None Function Preconditions Overview Input Output Side Effects BOOL ECANIsAllAborted(void) None This macro checks previously issued Abort request. None TRUE: there pending transmittion FALSE: abort till progress None Function Preconditions Overview Input Output Side Effects BOOL ECANIsBusOff(void) None This macro checks current ECAN module status. None TRUE: ECAN module state FALSE: ECAN module state None ECAN (Polling) Module Page Function Preconditions Overview Input Output Side Effects BOOL ECANIsRxPassive(void) None This macro checks ECAN Receive module passive state. None TRUE: ECAN receive module receive error passive state FALSE: ECAN receive module receive error passive state None Function Preconditions Overview Input Output Side Effects BOOL EANIsTxPassive(void) None This macro checks ECAN Transmit module passive state. None TRUE: ECAN module transmit error passive state. FALSE: ECAN module transmit error passive state None Function Preconditions Overview Input RXF1Buffer) RXF3Buffer) RXF5Buffer) RXF7Buffer) RXF9Buffer) RXF11Buffer) RXF13Buffer) RXF15Buffer) Run-time library mode selected Mode with Fixed library mode selected These macros link filters buffers. There total eight macros. Each macro links filters time. ECANLinkRXF0F1ToBuffer links RXF0 RXF1 filters buffers. These macros available Mode Mode only. RXFnBuffer Name buffer that linked RXFn RXFmBuffer Name buffer that linked RXFm only permitted values both parameters are: RXB0 Link RXB0 buffer RXB1 Link RXB1 buffer Link buffer Link buffer Link buffer Link buffer Link buffer Link buffer None None Buffer value must constant permitted values only. variable parameter would cause compile-time error. example, myRXF1Buffer) would compile. Output Side Effects Note Function Preconditions ECAN (Polling) Module void ECANLinkRXF0Thru3ToMask(m0, void ECANLinkRXF4Thru7ToMask(m4, void ECANLinkRXF8Thru11ToMask(m8, m10, m11) void ECANLinkRXF12Thru15ToMask(m12, m13, m14, m15) Run-time library mode selected Mode with Fixed library Page Overview Input mode selected These macros link filters masks. There total four macros. Each macro links four filters time. ECANLinkRXF0Thru3ToMask links RXF0, RXF1, RXF2 RXF3 filters masks. These macros available Mode Mode only. Name masks that linked RXFn Permitted values are: EACN_RXM0 Link RXM0 mask ECAN_RXM1 Link RXM1 mask ECAN_RXMF15 Link RXF15 mask None None These macros perform compile-time operations reduce generated code. possible, always supply constant value permitted type. variable argument will result larger code. Output Side Effects Note Function Preconditions Overview Input void ECANLoadRTRBuffer(BYTE buffer, unsigned long BYTE *data, BYTE dataLen, BYTE type) Run-time library mode selected Mode with Fixed library mode selected Supplied buffer must configured Automatic handling. This function loads given message specified buffer that configured automatic handling. This function available Mode Mode only. buffer Programmable buffer number that loaded. possible values through inclusive. 32-bit identifier value, which correspond right justified 11-bit Standard Identifier 29-bit Extended Identifier. exact number bits depends type parameter. Pointer zero more data bytes send Number bytes send Specified enumerated value message type. possible values ECAN_MSG_STD Standard Message ECAN_MSG_XTD Extended Message data dataLen type Output Side Effects TRUE: given message loaded into given buffer FALSE: given buffer setup automatic handling middle automatic transmission. None Function BOOL ECANReceiveMessage(unsigned long *id, BYTE *data, Page ECAN (Polling) Module Preconditions Overview Input BYTE dataLen, ECAN_RX_MSG_FLAGS *msgFlags) data, dataLen msgFlags pointer must point desired valid memory locations. This function copies full receive buffer messages into given buffer, marks full receive buffer empty. 32-bt Identifier value, which correspond right justified 11-bit Standard Identifier 29-bit Extended Identifier. exact number bits depends msgFlags parameter data Pointer zero more data bytes send DataLen Number bytes send MsgFlags Specifies enumerated value type ECAN_RX_MSG_FLAGS. This represents logical more flags. possible values variables are: ECAN_RX_OVERFLOW Specifies Receive Buffer overlow ECAN_RX_INVALID_MSG Specifies invalid message ECAN_RX_XTD_FRAME Specifies Extended Identifier message ECAN_RX_STD_FRAME Specifies Standard Identifier message ECAN_RX_DBL_BUFFERED Specifies that this message double buffered flag set, corresponding meaning TRUE, cleared, corresponding meaning FALSE. Output Side Effects TRUE: message copied given buffer FALSE: message found. None Function Preconditions Overview Input void ECANSendMessage(unsigned long BYTE *data, BYTE dataLen, ECAN_TX_MSG_FLAGS msgFlags) None This function copies given message empty transmit buffers marks ready transmitted. 32-bit identifier value, which correspond right justified 11-bit Standard Identifier 29-bit Extended Identifier. exact number bits depends msgFlags parameter data: Pointer zero more data bytes send dataLen: Number bytes send msgFlags: Specifies enumerated value ECAN_TX_MSG_FLAGS. This Page ECAN (Polling) Module represents logical Priority value, Identifier type value Message type value. possible values variables are: Priority Value: ECAN_TX_PRIORITY_0 Specifies Transmit Priority ECAN_TX_PRIORITY_1 Specifies Transmit Priority ECAN_TX_PRIORITY_2 Specifies Transmit Priority ECAN_TX_PRIORITY_3 Specifies Transmit Priority Identifier Type Value: ECAN_TX_STD_FRAME Specifies Standard Identifier Message ECAN_TX_XTD_FRAME Specifies Extended Identifier Message Messave Value: ECAN_TX_NO_RTR_FRAME Specifies Regular message ECAN_TX_RTR_FRAME Specifies message Output TRUE: given message successfully placed empty transmit buffers FALSE: transmit buffers were full None Side Effects Function Preconditions Overview Input ECANSetBaudRate(sjw, brp, phseg1, phseg2, propseg) ECAN module must Configuration mode This macro sets baud rate values. value must between through value must between through phseg1 PHSEG2 value must between through phseg2 PHSEG2 value must between through propseg PROPSEG value must between through Output Side Effects Note None None These macros perform compile-time operations reduce generated code. possible, always supply constant value permitted type. variable argument will result larger code. Function Preconditions Overview void ECANSetBnAutoRTRMode(BYTE mode) Run-time library mode selected Mode with Fixed library mode selected This macro enables/disables Automatic handling capability specified programmable buffer. There total macros, each programmable buffer. example, Buffer Page ECAN (Polling) Module Input ECANSetB0AutoRTRMode, ECANSetB1AutoRTRMode Mode only permitted values are: ECAN_AUTORTR_MODE_DISABLE Disable AutoRTR mode ECAN_AUTORTR_MODE_ENABLE Enable AutoRTR mode None None selected buffer must also setup transmit buffer using Maestro option, using ECANSetBnTxRxMode macro run-time. Output Side Effects Note Function Preconditions Overview Input void ECANSetBnRxMode(buffer, mode) Run-time library mode selected Mode with Fixed library mode selected This macro sets receive mode programmable receive buffer. This macro available Mode Mode only. Buffer Name programmable receive buffer that needs setup. only permitted values are: Setup buffer Setup buffer Setup buffer Setup buffer Setup buffer Mode Mode setup. only permitted values are: ECAN_RECEIVE_ALL_VALID Receive valid messages ECAN_RECEIVE_ALL Receive including invalid messages Output Side Effects Note None None Programmable buffer value must constant permitted values only. variable parameter would cause compile-time error. example, ECANSetBnRxMode(myBuffer, ECAN_RECEIVE_ALL) would compile. Function Preconditions Overview Input void EANSetBnTxRxMode(buffer, mode) Run-time library mode selected Mode with Fixed library mode selected This macro sets transmit receive mode specified buffer. This macro available Mode Mode only. Buffer Name programmable buffer that needs setup. only permitted values are: Setup buffer Setup buffer Setup buffer Setup buffer Setup buffer Setup buffer Page ECAN (Polling) Module Mode ECAN_BUFFER_RX Buffer will configured receiver ECAN_BUFFER_TX Buffer will configured transmitter Output Side Effects Note None None Parameter buffer must constant permitted values only. variable parameter would cause compile-time error. example, ECANSetBnTxRxMode(myBuffer, ECAN_BUFFER_TX) would compile. Function Preconditions Overview Input void ECANSetBusSampleMode(BYTE mode) ECAN module must Configuration mode This macro sets sampling mode. mode only permitted values are: ECAN_BUS_SAMPLE_MODE_THRICE Specifies that sampled three times ECAN_BUS_SAMPLE_MODE_ONCE Specifies that sampled once None None Output Side Effects Function Preconditions Overview Input void ECANSetCANTX2Mode(BYTE mode) None This macro sets CANTX2 source mode Mode only permitted values are: ECAN_TX2_SOURCE_COMP Specifies complement CANTX1 source ECAN_TX2_SOURCE_CLOCK Specifies clock source None None This macro automatically enables CANTX2 CANTX pin. ECANDisableCANTX2 configure CANTX2 digital I/O. Output Side Effects Note Function Preconditions Overview Input void ECANSetCaptureMode(BYTE mode) None This macro enables timestamp mode. mode only permitted values are: ECAN_CAPTURE_MODE_ENABLE Enables timestamp mode. CCP1 must configured separately ECAN_CAPTURE_MODE_DISABLE Disables timestamp mode None None Page Output Side Effects ECAN (Polling) Module Function Preconditions Overview Input void ECANSetFilterMode(BYTE mode) ECAN module must Configuration mode This macro sets wake-up filter mode. mode only permitted values are: ECAN_FILTER_MODE_DISABLE Specifies that low-pass filter disabled ECAN_FILTER_MODE_ENABLE Specifies that low-pass filter enabled None None Output Side Effects Function Preconditions Overview Input void ECANSetFunctionalMode(BYTE mode) Run-time library mode selected ECAN module Configuration mode This macro changes ECAN module functional mode. mode only permitted values are: ECAN_MODE_0 Specifies Mode ECAN_MODE_1 Specifies Mode ECAN_MODE_2 Specifies Mode None None Output Side Effects Function Preconditions Overview Input void mode) None This function changes ECAN module operation mode. Mode Specifies enumerated value type ECAN_OP_MODE. only permitted values are: ECAN_OP_MODE_NORMAL Specifies Normal mode operation ECAN_OP_MODE_SLEEP Specifies SLEEP mode operation ECAN_OP_MODE_LOOP Specifies Loopback mode operation ECAN_OP_MODE_LISTEN Specifies Listen only mode operation ECAN_OP_MODE_CONFIG Specifies Configuration mode operation None None This blocking function. waits given mode accepted ECAN module then returns control. non-blocking call required, ECANSetOperationModeNoWait macro. Output Side Effects Note Function Preconditions Overview ECAN (Polling) Module void mode) None This macro changes ECAN module operation mode. Page Input Mode Specifies enumerated value type ECAN_OP_MODE. only permitted values are: ECAN_OP_MODE_NORMAL Specifies Normal mode operation ECAN_OP_MODE_SLEEP Specifies SLEEP mode operation ECAN_OP_MODE_LOOP Specifies Loopback mode operation ECAN_OP_MODE_LISTEN Specifies Listen Only mode operation ECAN_OP_MODE_CONFIG Specifies Configuration mode operation None None This non-blocking macro. requests given mode operation immediately returns control. Caller must ensure desired mode operation before performing mode-specific operation. blocking call required, ECANSetOperationMode function. Output Side Effects Note Function Preconditions Overview Input void ECANSetPHSEG2Mode(BYTE mode) ECAN module must Configuration mode This macro sets Phase Segment2 programmability mode. mode only permitted values are: ECAN_PHSEG2_MODE_AUTOMATIC Phase Segment2 will automatically programmed ECAN module. ECAN_PHSEG2_MODE_PROGRAMMABLE Phase Segment2 will manually programable. None None Output Side Effects Function Preconditions Overview Input void ECANSetRXB0DblBuffer(mode) Run-time library mode selected Mode with Fixed library mode selected This macro enables hardware double buffering option RXB0 buffer. This macro available Mode only. mode only permitted values are: ECAN_DBL_BUFFER_MODE_DISABLE Disable double buffering ECAN_DBL_BUFFER_MODE_ENABLE Enable double buffering None None Output Side Effects Function Preconditions Overview Input void ECANSetRXBnMode(buffer, mode) None This macro sets receive mode dedicated receiver buffer. buffer Name dedicated receive buffer that needs setup. only permitted values are: RXB0 Setup RXB0 buffer RXB1 Setup RXB1 buffer Page ECAN (Polling) Module mode Mode setup. only permitted values are: ECAN_RECEIVE_ALL_VALID Receive valid messages ECAN_RECEIVE_STANDARD Receive only standard messages ECAN_RECEIVE_EXTENDED Receive only extended messages ECAN_RECEIVE_ALL Receive including invalid messages Output Side Effects Note None None Dedicated buffer value must constant permitted values only. variable parameter would cause compile-time error. example, ECANSetRxBnRxMode(myBuffer, ECAN_RECEIVE_ALL) would compile. Function Preconditions Overview Input void ECANSetRXFnValue(value, type) ECAN module must Configuration mode. ECANSetRxF6Value through ECANSetRXF15Value, run-time library mode must selected Mode with Fixed library mode selected This macro sets value filter register. There total macros, each register. example, filter RXF0, ECANSetRXF0Value, RXF1 ECANSetRXF1Value value Value set. Range value dependent type type Type filter. only permitted values are: ECAN_MSG_STD Standard type. 11-bit value will used ECAN_MSG_XTD Extended type. 29-bit value will used Output Side Effects Note None None Mode only ECANSetRXF0Value through ECANSetRXF5Value available. Mode Mode ECANRXF0Value through ECANRXF15Value available. Function Preconditions Overview Input void ECANSetRXMnValue(value, type) ECAN module must Configuration mode macro sets value mask register. There total macros, each mask. example, mask RXM0, ECANSetRXM0Value, RXM1 ECANSetRXM1Value value Value set. Range value dependent type Type Type mask. only permitted values are: ECAN_MSG_STD Standard type: 11-bit value will used ECAN_MSG_XTD Extended type 29-bit value will used Output Side Effects None None ECAN (Polling) Module Page Function Preconditions Overview Input void ECANSetTxDriveMode(BYTE mode) None This macro sets CANTX recessive state drive mode. mode only permitted values ECAN_TXDRIVE_MODE_TRISTATE Specifies that CANTX driven tri-state recessive state ECAN_TXDRIVE_MODE_VDD Specifies that CANTX driven recessive state None None Output Side Effects Function Preconditions Overview Input void ECANSetWakeupMode(BYTE mode) ECAN module must Configuration mode This macro sets activity wake-up mode. mode only permitted values are: ECAN_WAKEUP_MODE_ENABLE Specifies that activity wake-up mode enabled ECAN_WAKEU_MOE_DISABLE Specifies that activity wake-up mode disabled None None Output Side Effects ECAN (Polling) Module Page Error Status Flags None ECAN (Polling) Module Page Other recent searchesT16M50T600B - T16M50T600B T16M50T600B Datasheet SDP510D - SDP510D SDP510D Datasheet GRM2167U1A333J - GRM2167U1A333J GRM2167U1A333J Datasheet AP3842C - AP3842C AP3842C Datasheet AP3844C - AP3844C AP3844C Datasheet AP3843C - AP3843C AP3843C Datasheet AP3845C - AP3845C AP3845C Datasheet AP384XC - AP384XC AP384XC Datasheet ADE-508-014A - ADE-508-014A ADE-508-014A Datasheet 71M6521DE - 71M6521DE 71M6521DE Datasheet 71M6521FE - 71M6521FE 71M6521FE Datasheet 71M6521DE - 71M6521DE 71M6521DE Datasheet 1775372001 - 1775372001 1775372001 Datasheet
Privacy Policy | Disclaimer |