minor corrections
example/application.* removed
This commit is contained in:
parent
63df34d194
commit
efe87c8b7c
5 changed files with 8 additions and 213 deletions
|
|
@ -41,6 +41,7 @@ extern "C" {
|
|||
|
||||
/* Basic definitions */
|
||||
#define CO_LITTLE_ENDIAN
|
||||
#define CO_USE_LEDS
|
||||
/* NULL is defined in stddef.h */
|
||||
/* true and false are defined in stdbool.h */
|
||||
/* int8_t to uint64_t are defined in stdint.h */
|
||||
|
|
|
|||
|
|
@ -1,57 +0,0 @@
|
|||
/*
|
||||
* Application interface for CANopenNode stack.
|
||||
*
|
||||
* @file application.c
|
||||
* @ingroup application
|
||||
* @author Janez Paternoster
|
||||
* @copyright 2012 - 2020 Janez Paternoster
|
||||
*
|
||||
* This file is part of CANopenNode, an opensource CANopen Stack.
|
||||
* Project home page is <https://github.com/CANopenNode/CANopenNode>.
|
||||
* For more information on CANopen see <http://www.can-cia.org/>.
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
|
||||
#include "CANopen.h"
|
||||
|
||||
|
||||
/*******************************************************************************/
|
||||
void programStart(void){
|
||||
|
||||
}
|
||||
|
||||
|
||||
/*******************************************************************************/
|
||||
void communicationReset(void){
|
||||
|
||||
}
|
||||
|
||||
|
||||
/*******************************************************************************/
|
||||
void programEnd(void){
|
||||
|
||||
}
|
||||
|
||||
|
||||
/*******************************************************************************/
|
||||
void programAsync(uint16_t timer1msDiff){
|
||||
|
||||
}
|
||||
|
||||
|
||||
/*******************************************************************************/
|
||||
void program1ms(void){
|
||||
|
||||
}
|
||||
|
|
@ -1,153 +0,0 @@
|
|||
/**
|
||||
* Application interface for CANopenNode stack.
|
||||
*
|
||||
* @file application.h
|
||||
* @ingroup CO_application
|
||||
* @author Janez Paternoster
|
||||
* @copyright 2012 - 2020 Janez Paternoster
|
||||
*
|
||||
* This file is part of CANopenNode, an opensource CANopen Stack.
|
||||
* Project home page is <https://github.com/CANopenNode/CANopenNode>.
|
||||
* For more information on CANopen see <http://www.can-cia.org/>.
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
|
||||
#ifndef CO_APPLICATION_H
|
||||
#define CO_APPLICATION_H
|
||||
|
||||
|
||||
/**
|
||||
* @defgroup CO_application Application interface
|
||||
* @ingroup CO_CANopen
|
||||
* @{
|
||||
*
|
||||
* Application interface for CANopenNode stack. Function is called
|
||||
* from file main_xxx.c (if implemented).
|
||||
*
|
||||
* ###Main program flow chart
|
||||
*
|
||||
* @code
|
||||
(Program Start)
|
||||
|
|
||||
V
|
||||
+------------------------------------+
|
||||
| programStart() |
|
||||
+------------------------------------+
|
||||
|
|
||||
|<-------------------------+
|
||||
| |
|
||||
V |
|
||||
(Initialze CANopen) |
|
||||
| |
|
||||
V |
|
||||
+------------------------------------+ |
|
||||
| communicationReset() | |
|
||||
+------------------------------------+ |
|
||||
| |
|
||||
V |
|
||||
(Enable CAN and interrupts) |
|
||||
| |
|
||||
|<----------------------+ |
|
||||
| | |
|
||||
V | |
|
||||
+------------------------------------+ | |
|
||||
| programAsync() | | |
|
||||
+------------------------------------+ | |
|
||||
| | |
|
||||
V | |
|
||||
(Process CANopen asynchronous) | |
|
||||
| | |
|
||||
+- infinite loop -------+ |
|
||||
| |
|
||||
+- reset communication ----+
|
||||
|
|
||||
V
|
||||
+------------------------------------+
|
||||
| programEnd() |
|
||||
+------------------------------------+
|
||||
|
|
||||
V
|
||||
(delete CANopen)
|
||||
|
|
||||
V
|
||||
(Program end)
|
||||
@endcode
|
||||
*
|
||||
*
|
||||
* ###Timer program flow chart
|
||||
*
|
||||
* @code
|
||||
(Timer interrupt 1 millisecond)
|
||||
|
|
||||
V
|
||||
(CANopen read RPDOs)
|
||||
|
|
||||
V
|
||||
+------------------------------------+
|
||||
| program1ms() |
|
||||
+------------------------------------+
|
||||
|
|
||||
V
|
||||
(CANopen write TPDOs)
|
||||
@endcode
|
||||
*
|
||||
*
|
||||
* ###Receive and transmit high priority interrupt flow chart
|
||||
*
|
||||
* @code
|
||||
(CAN receive event or)
|
||||
(CAN transmit buffer empty event)
|
||||
|
|
||||
V
|
||||
(Process received CAN message or)
|
||||
(copy next message to CAN transmit buffer)
|
||||
@endcode
|
||||
*/
|
||||
|
||||
|
||||
/**
|
||||
* Called after microcontroller reset.
|
||||
*/
|
||||
void programStart(void);
|
||||
|
||||
|
||||
/**
|
||||
* Called after communication reset.
|
||||
*/
|
||||
void communicationReset(void);
|
||||
|
||||
|
||||
/**
|
||||
* Called before program end.
|
||||
*/
|
||||
void programEnd(void);
|
||||
|
||||
|
||||
/**
|
||||
* Called cyclically from main.
|
||||
*
|
||||
* @param timer1msDiff Time difference since last call
|
||||
*/
|
||||
void programAsync(uint16_t timer1msDiff);
|
||||
|
||||
|
||||
/**
|
||||
* Called cyclically from 1ms timer task.
|
||||
*/
|
||||
void program1ms(void);
|
||||
|
||||
|
||||
/** @} */
|
||||
#endif
|
||||
|
|
@ -108,7 +108,9 @@ extern "C" {
|
|||
*/
|
||||
/** CO_LITTLE_ENDIAN or CO_BIG_ENDIAN must be defined */
|
||||
#define CO_LITTLE_ENDIAN
|
||||
/** NULL, for general use */
|
||||
/** Enable LED blinking calculation, optional */
|
||||
#define CO_USE_LEDS
|
||||
/** NULL, for general usage */
|
||||
#define NULL (0)
|
||||
/** Logical true, for general use */
|
||||
#define true 1
|
||||
|
|
@ -367,7 +369,7 @@ typedef struct {
|
|||
#define CO_UNLOCK_OD()
|
||||
|
||||
/** Check if new message has arrived */
|
||||
#define CO_CANrxNew_READ(rxNew) ((uintptr_t)rxNew)
|
||||
#define CO_CANrxNew_READ(rxNew) ((int *)rxNew)
|
||||
/** Set new message flag */
|
||||
#define CO_CANrxNew_SET(rxNew) { __sync_synchronize(); rxNew = (void *)1L; }
|
||||
/** Clear new message flag */
|
||||
|
|
|
|||
|
|
@ -25,7 +25,9 @@
|
|||
|
||||
#include "CO_trace.h"
|
||||
#include <stdio.h>
|
||||
#include <inttypes.h>
|
||||
#ifndef CO_OWN_INTTYPES
|
||||
#include <inttypes.h> /* for PRIu32("u" or "lu") and PRId32("d" or "ld") */
|
||||
#endif
|
||||
|
||||
/* Different functions for processing value for different data types. */
|
||||
static int32_t getValueI8 (void *OD_variable) { return (int32_t) *((int8_t*) OD_variable);}
|
||||
|
|
|
|||
Loading…
Reference in a new issue