Follow us Press here 1 #LEARN_IN DEPTH #Be_professional_in embedded_system Automotive Embedded Systems part5 (Introduction to AUTOSAR). ENG.KEROLES SHENOUDA https://www.facebook.com/groups/embedded.system.KS/ Follow us Press here 2 #LEARN_IN DEPTH #Be_professional_in embedded_system Introduction to AUTOSAR it's time to wake up Learn In Depth https://www.facebook.com/groups/embedded.system.KS/ Follow us Press here Background 3 #LEARN_IN DEPTH #Be_professional_in embedded_system Today’s automotive industry is faced with a growing demand for technical appliances and this requires an increased use of ECUs which is reflected in the complexity of the system. Traditionally, solutions have been specific for a certain platform or model and this structure is more becoming unmanageable and costly. Instead of making specific solutions a standardized future is the way to go. This increased complexity could be manageable and improved by a standardized architecture and the solution is AUTOSAR https://www.facebook.com/groups/embedded.system.KS/ Follow us Press here (AUTomotive Open System ARchitecture) 4 #LEARN_IN DEPTH #Be_professional_in embedded_system The main objective of Improve software quality and reduce costs by re-use Re-use of functions across carlines and across OEM boundaries Re-use of development methods and tools Re-use of basic software AUTOSAR makes the application software independent from the hardware https://www.facebook.com/groups/embedded.system.KS/ Follow us Press here (AUTomotive Open System ARchitecture) 5 #LEARN_IN DEPTH #Be_professional_in embedded_system Application software that supports the AUTOSAR standard will receive several benefits. The following examples are the driving forces why we need AUTOSAR as listed in : Manage increasing E/E complexity – Associated with growth in functional scope. Improve flexibility – More room for updates, upgrades and modifications. Improve scalability – The system can in a more graceful manner be enlarged. Improve quality and reliability – Proven software applications can be reused. Detection of errors in early design phases https://www.facebook.com/groups/embedded.system.KS/ Follow us Press here Reusability 6 #LEARN_IN DEPTH #Be_professional_in embedded_system https://www.facebook.com/groups/embedded.system.KS/ Follow us Press here Automotive industry 7 #LEARN_IN DEPTH #Be_professional_in embedded_system https://www.facebook.com/groups/embedded.system.KS/ Follow us Press here Automotive industry Source: www.autosar.org 8 #LEARN_IN DEPTH #Be_professional_in embedded_system https://www.facebook.com/groups/embedded.system.KS/ Follow us Press here AUTOSAR Layered Architecture Source: www.autosar.org 9 #LEARN_IN DEPTH #Be_professional_in embedded_system https://www.facebook.com/groups/embedded.system.KS/ Follow us Press here 10 AUTOSAR: Specifications #LEARN_IN DEPTH #Be_professional_in embedded_system www.autosar.org https://www.facebook.com/groups/embedded.system.KS/ Follow us Press here 11 AUTOSAR: Specifications #LEARN_IN DEPTH #Be_professional_in embedded_system www.autosar.org https://www.facebook.com/groups/embedded.system.KS/ Follow us Press here AUTOSAR is still growing 12 #LEARN_IN DEPTH #Be_professional_in embedded_system https://www.facebook.com/groups/embedded.system.KS/ Follow us Press here 13 #LEARN_IN DEPTH #Be_professional_in embedded_system What is the AUTOSAR standard and why is it created? https://www.facebook.com/groups/embedded.system.KS/ Follow us What is the AUTOSAR standard and why is it created? Press here 14 #LEARN_IN DEPTH #Be_professional_in embedded_system AUTOSAR is standardized software architecture developed in cooperation between car manufacturers originally intended for the automotive industry but is steadily gaining interest from other industries as well. AUTOSAR was developed with the intention of being able to handle the increased complexity in today’s automotive industry and to decouple software from hardware. Also Integration of functional modules from multiple suppliers Software updates and upgrades over vehicle lifetime Consideration of availability and safety requirements https://www.facebook.com/groups/embedded.system.KS/ Follow us Press here 15 #LEARN_IN DEPTH #Be_professional_in embedded_system AUTOSAR Benefits https://www.facebook.com/groups/embedded.system.KS/ Follow us Press here Developing a new car with AUTOSAR 16 #LEARN_IN DEPTH #Be_professional_in embedded_system Functions of the car Brake control BC Throttle Control TC Engine Control EH Door locking DL https://www.facebook.com/groups/embedded.system.KS/ Follow us Developing a new car with AUTOSAR Press here 17 #LEARN_IN DEPTH #Be_professional_in embedded_system DL Software Components (SWCs) EH Software Components (SWCs) BC Software Components (SWCs) Functions of the car Brake control BC Throttle Control TC Engine Control EH Door locking DL TC Software Components (SWCs) Mapping of SWC to ECU extract is created for ECU Extract Files An each ECU... https://www.facebook.com/groups/embedded.system.KS/ Follow us With AUTOSAR Press here 18 #LEARN_IN DEPTH #Be_professional_in embedded_system https://www.facebook.com/groups/embedded.system.KS/ Follow us Press here New Terms in AUTOSAR 19 #LEARN_IN DEPTH #Be_professional_in embedded_system https://www.facebook.com/groups/embedded.system.KS/ Follow us Press here 20 START With AUTOSAR EH Software Components (SWCs) Step 1: Input Descriptions #LEARN_IN DEPTH #Be_professional_in embedded_system BC Software Components (SWCs) TC Software Components (SWCs) Step 2: System Configuration Step 3: ECU-configuration Mapping of SWC to ECU Step 4: Generation of Software Executables https://www.facebook.com/groups/embedded.system.KS/ Follow us Press here 21 START With AUTOSAR #LEARN_IN DEPTH #Be_professional_in embedded_system Step 1: Input Descriptions Step 2: System Configuration Step 3: ECU-configuration Step 4: Generation of Software Executables Source: www.autosar.org https://www.facebook.com/groups/embedded.system.KS/ Follow us Press here Step 1: Input Descriptions 22 #LEARN_IN DEPTH #Be_professional_in embedded_system The input description step contains three descriptions: Step 1: Input Descriptions Step 2: System Configuration Step 3: ECU-configuration Step 4: Generation of Software Executables Software Components: This description is independent of the actual implementation of the software component. Among the necessary data to be specified are the interfaces and the hardware requirements. System: The system topology (interconnections between ECUs) need to be specified together with the available data busses, used protocols, function clustering and communication matrix and attributes (e.g. data rates, timing/latency, …). Hardware: The available hardware (processors, sensors, actuators, …) needs to be specified together with the signal processing methods and programming capabilities https://www.facebook.com/groups/embedded.system.KS/ Follow us Press here Step 2: System Configuration 23 #LEARN_IN DEPTH #Be_professional_in embedded_system This step distributes the software component Step 1: Input Descriptions descriptions to the different ECU. This is an iterative process where ECU-resources and system-constraints are taken into account. Step 2: System Configuration Step 3: ECU-configuration Step 4: Generation of Software Executables https://www.facebook.com/groups/embedded.system.KS/ Follow us Press here Templates and Description Files 24 #LEARN_IN DEPTH #Be_professional_in embedded_system https://www.facebook.com/groups/embedded.system.KS/ Follow us System Constraint Description Press here 25 #LEARN_IN DEPTH #Be_professional_in embedded_system The AUTOSAR “System Constraint Description” contains the following information: Information of network topology Limitations (“Constraints”) Protocol Given communication matrix (PDUs, signals, …) Baud rate, timing Structure and format are described by the “System Template”. SYSYEM Description https://www.facebook.com/groups/embedded.system.KS/ Follow us Press here ECU Resource Description 26 #LEARN_IN DEPTH #Be_professional_in embedded_system The AUTOSAR “ECU Resource Description” contains the following Information. Description of the hardware being used Sensors, actuators Memory Processor Communications periphery Pin assignments The structure and format are described by the “ECU Resource Template”. https://www.facebook.com/groups/embedded.system.KS/ Follow us Press here Software Component Description 27 #LEARN_IN DEPTH #Be_professional_in embedded_system The AUTOSAR “Software Component Description” contains the followinginformation Ports and Interfaces (sender/receiver, client/server) Runnable Entities with trigger events, port access, etc Resource needs of the component (memory, CPU time, etc.) Structure and format are described by the “Software Component Template”. https://www.facebook.com/groups/embedded.system.KS/ Follow us Press here Step 1 & 2 28 #LEARN_IN DEPTH #Be_professional_in embedded_system Step 1: Input Descriptions Step 2: System Configuration Step 3: ECU-configuration Step 4: Generation of Software Executables https://www.facebook.com/groups/embedded.system.KS/ Follow us AUTOSAR Workflow with OEM and TIER1 OEM creates an ECU- specific extract of the vehicle system design TIER1 configures EH Software Components (SWCs) Press here 29 #LEARN_IN DEPTH #Be_professional_in embedded_system BC Software Components (SWCs) TC Software Components (SWCs) AUTOSAR ECU based on this extract Mapping of SWC to ECU An extract is created for each ECU... https://www.facebook.com/groups/embedded.system.KS/ Follow us Press here Step 3: ECU-configuration In this step, Step 1: Input Descriptions Step 2: System Configuration 30 #LEARN_IN DEPTH #Be_professional_in embedded_system the Basic Software and the Run Time Environment of each electronic control unit (ECU) is configured. This is based on the dedication of the application software components to each ECU. Step 3: ECUconfiguration Step 4: Generation of Software Executables BASIC Software Layer https://www.facebook.com/groups/embedded.system.KS/ Follow us Press here ECU Configuration 31 #LEARN_IN DEPTH #Be_professional_in embedded_system Step 1: Input Descriptions Step 2: System Configuration Step 3: ECUconfiguration Step 4: Generation of Software Executables https://www.facebook.com/groups/embedded.system.KS/ Follow us Press here ECU Configuration 32 #LEARN_IN DEPTH #Be_professional_in embedded_system https://www.facebook.com/groups/embedded.system.KS/ Follow us Press here What is a parameter? 33 #LEARN_IN DEPTH #Be_professional_in embedded_system Step 1: Input Descriptions Step 2: System Configuration Step 3: ECUconfiguration Step 4: Generation of Software Executables https://www.facebook.com/groups/embedded.system.KS/ Follow us Press here Containers and Parameters 34 #LEARN_IN DEPTH #Be_professional_in embedded_system Step 1: Input Descriptions Step 2: System Configuration Step 3: ECUconfiguration Step 4: Generation of Software Executables https://www.facebook.com/groups/embedded.system.KS/ Follow us Step 4: Generation of Software Executables Step 1: Input Descriptions Step 2: System Configuration Press here 35 #LEARN_IN DEPTH #Be_professional_in embedded_system Based on the configuration of the previous step, the software executables are generated by the Generator. For this step, it’s necessary to specify the implementation of each software component. Step 3: ECUconfiguration Step 4: Generation of Software Executables https://www.facebook.com/groups/embedded.system.KS/ Follow us Press here Component development process 36 #LEARN_IN DEPTH #Be_professional_in embedded_system https://www.facebook.com/groups/embedded.system.KS/ Follow us Press here Executable ECU 37 #LEARN_IN DEPTH #Be_professional_in embedded_system Step 1: Input Descriptions Step 2: System Configuration Step 3: ECUconfiguration Step 4: Generation of Software Executables https://www.facebook.com/groups/embedded.system.KS/ Follow us Step 1: Input Descriptions 4 Steps Step 2: System Configuration DL Step 3: ECU-configuration Software Components (SWCs) EH Software Components (SWCs) BC Software Components (SWCs) Step 4: Generation of Software Executables Press here 38 #LEARN_IN DEPTH #Be_professional_in embedded_system Functions of the car Brake control BC Throttle Control TC Engine Control EH Door locking DL TC Software Components (SWCs) Mapping of SWC to ECU extract is created for ECU Extract Files An each ECU... https://www.facebook.com/groups/embedded.system.KS/ Follow us Press here 39 #LEARN_IN DEPTH #Be_professional_in embedded_system AUTOSAR architecture https://www.facebook.com/groups/embedded.system.KS/ Follow us Press here AUTOSAR architecture The 40 #LEARN_IN DEPTH #Be_professional_in embedded_system AUTOSAR architecture is using a layered approach consisting of a total of three software layers running on top of a microcontroller. These three layers are called, starting at the bottom, BSW, RTE and finally Application Layer (AL). introduction to each layer will be presented below. An https://www.facebook.com/groups/embedded.system.KS/ Follow us Press here Basic Software 41 #LEARN_IN DEPTH #Be_professional_in embedded_system the BSW layer is a layer in itself, internally it consists of four sub-layers Microcontroller Abstraction Layer ECU Abstraction Layer Complex Drivers Layer Services Layer https://www.facebook.com/groups/embedded.system.KS/ Follow us Press here Microcontroller Abstraction Layer 42 #LEARN_IN DEPTH #Be_professional_in embedded_system The Microcontroller Abstraction Layer (MCAL) is located at the very bottom of the BSW layer. MCAL uses its internal software drivers to directly communicate with the microcontroller. These drivers include: memory, communication and I/O drivers. The task of the layer is to make layers above it microcontroller independent. When the MCAL is implemented it is microcontroller dependent but provides a standardized and microcontroller independent interface upwards in the stack thus fulfilling its purpose Source: www.autosar.org https://www.facebook.com/groups/embedded.system.KS/ Follow us Press here ECU Abstraction Layer 43 #LEARN_IN DEPTH #Be_professional_in embedded_system Located on top of the MCAL is the ECU Abstraction Layer (ECUAL). Internally it has drivers for external devices and uses the interface defined by the MCAL to access drivers at the lowest level. Layers higher up in the stack can use the provided API to gain access to devices and peripherals without having to know anything about the hardware, for example, whether or not a device is located internally or externally, what the microcontroller interface looks like etc. The ECUAL aims to make upper layers independent of how the ECU is structured. implementation the ECUAL is microcontroller independent but dependent on the ECU hardware; Upper layers interfacing the ECUAL are no longer dependent on either of them (microcontroller and ECU Hardware). https://www.facebook.com/groups/embedded.system.KS/ Follow us Press here Complex Drivers Layer Typically this layer is used to integrate special 44 #LEARN_IN DEPTH #Be_professional_in embedded_system purpose functionality and functionality currently being migrated from a previous system Since this is the layer between the microcontroller and the RTE, drivers for devices with strict timing constraints can benefit from being placed in the CDL as the multi-layered parts of the BSW layer is likely to introduce overhead due to additional layers and standardization. Drivers for devices not compliant with AUTOSAR can also be put here “How does the standard support migration from existing solutions?” The introduction and creation of Complex Drivers in the AUTOSAR standard can be used to migrate existing solutions https://www.facebook.com/groups/embedded.system.KS/ Follow us Press here 45 Services Layer #LEARN_IN DEPTH #Be_professional_in embedded_system The top sub-layer in the BSW layer is called Services Layer (SL). Along with operating system functionality the SL provides a collection of managers such as: memory-, network-, and ECU state management. This is also where diagnostic services reside. Source: www.autosar.org https://www.facebook.com/groups/embedded.system.KS/ Follow us Press here 46 Runtime Environment #LEARN_IN DEPTH #Be_professional_in embedded_system The RTE is the layer between the application layer and the BSW layer. It provides the application software with services from the service layer. either All communication between SWCs, on the same ECU or different ones, or services are done via the RTE. The main task of the RTE is to make the layer above and below it completely independent of each other. In other words, SWCs running on an ECU have no idea what the ECU looks like hence a SWC will be able to run on different looking ECUs without any modifications Logically the RTE can be seen as two sub-parts realizing different SWC functionality: Communication Scheduling Source: www.autosar.org https://www.facebook.com/groups/embedded.system.KS/ Follow us Press here Virtual Function Bus 47 #LEARN_IN DEPTH #Be_professional_in embedded_system It provides generic communication services that can be consumed by any existing AUTOSAR software component. Although any of these services are virtual, they will then in a later development phase be mapped to actual implemented methods, that are specific for the underlying hardware infrastructure. In virtual speciation of the communication topology and interaction between components which is done via the virtual function bus, the runtime environment provides an implementation for these artifacts. actual It could also be said that the runtime environment provides an actual representation of the virtual concepts of the VFB for one specific ECU. https://www.facebook.com/groups/embedded.system.KS/ Follow us Press here Example VFB to RTE mapping where the virtual communication topology is mapped to three different ECU's Each ECU has its 48 #LEARN_IN DEPTH #Be_professional_in embedded_system own customized RTE implementation which is generated during . the ECU Configuration process The Depending on the location of each component, the formerly virtual interaction can then be mapped to real interaction implementation. components that are mapped onto one ECU will communicate through Intra ECU-Mechanisms, like function calls while Inter-ECU communication will be realized using, e.g. a communication bus infrastructure. Source: www.autosar.org https://www.facebook.com/groups/embedded.system.KS/ Follow us Press here Example for the body of a runnables source code (Pseudo-Code) 49 #LEARN_IN DEPTH #Be_professional_in embedded_system Listing of AUTOSAR RTE API method prefixes for the various send and receive communication modes https://www.facebook.com/groups/embedded.system.KS/ Follow us Press here Usage of the RTE API within a sender and receivercommunication channel 50 #LEARN_IN DEPTH #Be_professional_in embedded_system https://www.facebook.com/groups/embedded.system.KS/ Follow us Press here RTE Send API implementation for Intra- and Inter-ECU communication 51 #LEARN_IN DEPTH #Be_professional_in embedded_system https://www.facebook.com/groups/embedded.system.KS/ Follow us Press here RTE Receive API implementation for Intra- and Inter-ECU communication 52 #LEARN_IN DEPTH #Be_professional_in embedded_system https://www.facebook.com/groups/embedded.system.KS/ Follow us Press here Mapping of Runnable Entities and Basic Software Schedulable Entities to tasks (informative) 53 #LEARN_IN DEPTH #Be_professional_in embedded_system RunnableEntity: A RunnableEntity represents the smallest code-fragment that is provided by an AtomicSwComponentType and are executed under control of the RTE. Concepts of instantiation Single instantiation Multiple instantiation https://www.facebook.com/groups/embedded.system.KS/ Follow us Press here Mapping of Runnable Entities and Basic Software Schedulable Entities to tasks (informative) 54 #LEARN_IN DEPTH #Be_professional_in embedded_system RTE-Configurator uses parts of the ECU Configuration of The other BSW Modules, e.g. the mapping of RunnableEntitys to OsTasks. In this configuration process the RTE-Configurator expects OS objects (e.g. Tasks, Events, Alarms...) which are used in the generated RTE and Basic Software Scheduler. Source: www.autosar.org https://www.facebook.com/groups/embedded.system.KS/ Follow us Press here Mapping of Category 1 RunnableEntitys to Basic Tasks 55 #LEARN_IN DEPTH #Be_professional_in embedded_system Source: www.autosar.org https://www.facebook.com/groups/embedded.system.KS/ Follow us Mapping of Category 1 RunnableEntitys to Extended Tasks Press here 56 #LEARN_IN DEPTH #Be_professional_in embedded_system Source: www.autosar.org https://www.facebook.com/groups/embedded.system.KS/ Follow us Press here Inter task activation and mapping of runnable to individual task for monitoring purpose 57 #LEARN_IN DEPTH #Be_professional_in embedded_system Source: www.autosar.org https://www.facebook.com/groups/embedded.system.KS/ Follow us RTE Implementation Example 1: Without OsEvent RunnableEntity RE1 is activated by TimingEvent 100ms T1. RunnableEntity RE2 is activated by TimingEvent 100ms T2. #Be_professional_in embedded_system RunnableEntity RE3 is activated by TimingEvent 100ms T3. Execution order of the RunnableEntitys shall be R1, R2 then R3. RE2 shall be monitored. Possible RTE configuration: RE1/T1 is mapped to OsTask TaskA with RtePositionInTask equal to 1. RE2/T2 is mapped to OsTask TaskB but virtually mapped to TaskA with RtePositionInTask equal to 2. RE3/T3 is mapped to OsTask TaskA with RtePositionInTask equal to 3. OsAlarm with 100ms period. This OsAlarm is Possible RTE implementation: RTE starts cyclic configured to activate TaskA. Non preemptive scheduling is configured for Task A. 58 #LEARN_IN DEPTH Description of the example: Press here TaskB priority = TaskA priority + 1 Source: www.autosar.org https://www.facebook.com/groups/embedded.system.KS/ Follow us RTE Implementation Example 2: With OsEvent Press here 59 #LEARN_IN DEPTH #Be_professional_in embedded_system Description of the example: RunnableEntity RE1 is activated by DataReceivedEvent DR1. RunnableEntity RE2 is activated by DataReceivedEvent DR2. RunnableEntity RE3 is activated by DataReceivedEvent DR3. Evaluation order of the RTEEvents shall be DR1, DR2 then DR3. All the runnables shall be monitored. Possible RTE configuration: RE1 is mapped to OsTask TaskB but virtually mapped to TaskA with a reference to OsEvent EvtA and RtePositionInTask equal to 1. RE2 is mapped to OsTask TaskC but virtually mapped to TaskA with a reference to OsEvent EvtB and RtePositionInTask equal to 2. RE3 is mapped to OsTask TaskD but virtually mapped to TaskA with a reference to OsEvent EvtC and RtePositionInTask equal to 3. Possible RTE implementation: RTE set EvtA, EvtB and EvtC according to the callbacks from COM. Full preemptive scheduling is configured for Task A. TaskB priority = TaskC priority = TaskD priority = TaskA priority + 1 Source: www.autosar.org https://www.facebook.com/groups/embedded.system.KS/ Follow us RTE APIs on RTE Specifications https://www.autosar.org Press here 60 #LEARN_IN DEPTH #Be_professional_in embedded_system https://www.facebook.com/groups/embedded.system.KS/ Follow us Press here Application Layer 61 #LEARN_IN DEPTH #Be_professional_in embedded_system SWCs are such a key part of this layer and AUTOSAR and have as a result been awarded a dedicated section. Creating SWCs and the behavior in the AL can be done freely according to what a particular vendor wants One restriction though is that all communication with other components, whether it is intra- or intercommunication, has to be achieved in a standardized way by using the RTE. https://www.facebook.com/groups/embedded.system.KS/ Follow us Press here 62 #LEARN_IN DEPTH #Be_professional_in embedded_system The AUTOSAR Adaptive Platform for Connected and Autonomous Vehicles https://www.facebook.com/groups/embedded.system.KS/ Follow us Press here Adaptive AUTOSAR Use Cases 63 #LEARN_IN DEPTH #Be_professional_in embedded_system https://www.facebook.com/groups/embedded.system.KS/ Follow us Press here Definition of Adaptive AUTOSAR 64 #LEARN_IN DEPTH #Be_professional_in embedded_system https://www.facebook.com/groups/embedded.system.KS/ Follow us Classic Platform vs. Adaptive Platform Press here 65 #LEARN_IN DEPTH #Be_professional_in embedded_system https://www.facebook.com/groups/embedded.system.KS/ Follow us Another platform for different applications Press here 66 #LEARN_IN DEPTH #Be_professional_in embedded_system https://www.facebook.com/groups/embedded.system.KS/ Follow us Press here 67 Source: www.autosar.org #LEARN_IN DEPTH #Be_professional_in embedded_system https://www.facebook.com/groups/embedded.system.KS/ Follow us Classic Platform vs. Adaptive Platform Source: www.autosar.org Press here 68 #LEARN_IN DEPTH #Be_professional_in embedded_system https://www.facebook.com/groups/embedded.system.KS/ Follow us Press here Architecture – machine level Source: www.autosar.org 69 #LEARN_IN DEPTH #Be_professional_in embedded_system https://www.facebook.com/groups/embedded.system.KS/ Follow us Press here 70 #LEARN_IN DEPTH #Be_professional_in embedded_system Communication software components and architecture https://www.facebook.com/groups/embedded.system.KS/ Follow us Press here Automative buses 71 #LEARN_IN DEPTH #Be_professional_in embedded_system https://www.facebook.com/groups/embedded.system.KS/ Follow us Press here Example using CAN Source: www.autosar.org 72 #LEARN_IN DEPTH #Be_professional_in embedded_system https://www.facebook.com/groups/embedded.system.KS/ Follow us Press here 73 What is Next ? #LEARN_IN DEPTH #Be_professional_in embedded_system We will create a MCAL “(Microcontroller Abstraction Layer)” Drivers For Atmega32 according to Autosar Specifications MCAL (Microcontroller Abstraction Layer) MCAL is a software module that directly accesses on-chip MCU peripheral modules and external devices that are mapped to memory, and makes the upper software layer independent of the MCU. Details of the MCAL software module are shown below. https://www.facebook.com/groups/embedded.system.KS/ Follow us How to write DIO AUTOSAR MCAL for atmega32 Press here 74 #LEARN_IN DEPTH #Be_professional_in embedded_system main.c MCAL LAYER DIO https://www.facebook.com/groups/embedded.system.KS/ Follow us Press here How to write DIO MCAL for atmega32 Read First 75 #LEARN_IN DEPTH #Be_professional_in embedded_system AUTOSAR_SWS_DIODriver.pdf from Autosar.org Source: www.autosar.org https://www.facebook.com/groups/embedded.system.KS/ Follow us Press here 76 #LEARN_IN DEPTH #Be_professional_in embedded_system DIO Driver Structure and Integration Source: www.autosar.org https://www.facebook.com/groups/embedded.system.KS/ Follow us Press here Dependencies to other modules 77 #LEARN_IN DEPTH #Be_professional_in embedded_system https://www.facebook.com/groups/embedded.system.KS/ Follow us Press here File structure 78 #LEARN_IN DEPTH #Be_professional_in embedded_system https://www.facebook.com/groups/embedded.system.KS/ Follow us Press here API service ID’s 79 #LEARN_IN DEPTH #Be_professional_in embedded_system Source: www.autosar.org https://www.facebook.com/groups/embedded.system.KS/ Follow us Press here Error classification Source: www.autosar.org 80 #LEARN_IN DEPTH #Be_professional_in embedded_system https://www.facebook.com/groups/embedded.system.KS/ Follow us Press here 81 Type definitions #LEARN_IN DEPTH #Be_professional_in embedded_system Source: www.autosar.org https://www.facebook.com/groups/embedded.system.KS/ Follow us Press here Version Number 82 #LEARN_IN DEPTH #Be_professional_in embedded_system https://www.facebook.com/groups/embedded.system.KS/ Follow us Function Prototypes Press here 83 #LEARN_IN DEPTH #Be_professional_in embedded_system Source: www.autosar.org https://www.facebook.com/groups/embedded.system.KS/ Follow us Dio_Cfg.h Press here 84 #LEARN_IN DEPTH #Be_professional_in embedded_system Assuming the Pins Mapped as : A0 A7 B8 B15 c16 Atmega32 c23 D24 D31 https://www.facebook.com/groups/embedded.system.KS/ Follow us Press here Dio_WriteChannel() Dio_ReadChannel() 85 #LEARN_IN DEPTH #Be_professional_in embedded_system https://www.facebook.com/groups/embedded.system.KS/ Follow us Press here Dio_WriteChannel() Dio_ReadChannel() 86 #LEARN_IN DEPTH #Be_professional_in embedded_system https://www.facebook.com/groups/embedded.system.KS/ Follow us Press here Dio_WriteChannel() Dio_ReadChannel() 87 #LEARN_IN DEPTH #Be_professional_in embedded_system https://www.facebook.com/groups/embedded.system.KS/ Follow us Press here Dio_WriteChannel() Dio_ReadChannel() 88 #LEARN_IN DEPTH #Be_professional_in embedded_system https://www.facebook.com/groups/embedded.system.KS/ Follow us Press here Dio_WriteChannel() Dio_ReadChannel() 89 #LEARN_IN DEPTH #Be_professional_in embedded_system https://www.facebook.com/groups/embedded.system.KS/ Follow us Press here Dio_WriteChannel() Dio_ReadChannel() 90 #LEARN_IN DEPTH #Be_professional_in embedded_system https://www.facebook.com/groups/embedded.system.KS/ Follow us Press here 91 #LEARN_IN DEPTH #Be_professional_in embedded_system https://www.facebook.com/groups/embedded.system.KS/ Follow us Press here 92 #LEARN_IN DEPTH #Be_professional_in embedded_system https://www.facebook.com/groups/embedded.system.KS/ Follow us Press here Prepare your self for the next session 93 #LEARN_IN DEPTH #Be_professional_in embedded_system AUTOSAR OS ( ) And (AUTOSAR APPlication Layer) #LEARN_IN_DEPTH https://www.facebook.com/groups/embedded.system.KS/ Follow us Press here 94 References #LEARN_IN DEPTH #Be_professional_in embedded_system https://www.autosar.org Embedded Microcomputer Systems Real Time Interfacing Third Edition Jonathan W. Valvano University of Texas at Austin. MicroC/OS-II the real-time kernel second edition jean j.labrosse. RTOS Concepts http://www.embeddedcraft.org. OSEK/VDX Operating System Specification 2.2.3 AUTOSAR Layered Software Architecture The Trampoline Handbook release 2.0 Trampoline (OSEK/VDX OS) Test Implementation -Version 1.0, Florent PAVIN ; Jean-Luc BECHENNEC https://www.facebook.com/groups/embedded.system.KS/ Follow us Press here 95 References #LEARN_IN DEPTH #Be_professional_in embedded_system Trampoline:an open platform for (small) embedded systems based on OSEK/VDX and AUTOSAR http://trampoline.rts-software.org/ Jean-Luc Béchennec1;2, Sébastien Faucou1;3 1IRCCyN (Institute of Research in Communications and Cybernetics of Nantes) 2CNRS (National Center for Scientific Research) / 3University of Nantes 10th Libre Software Meeting https://www.facebook.com/groups/embedded.system.KS/ Follow us Press here 96 References #LEARN_IN DEPTH #Be_professional_in embedded_system Real Time Systems (RETSY) Jean-Luc Béchennec - Jean-Luc.Bechennec@irccyn.ec-nantes.fr Sébastien Faucou - Sebastien.Faucou@univ-nantes.fr jeudi 12 novembre 15 AUTOSAR Specification of Operating System V5.0.0 R4.0 Rev 3 OSEK - Basics http://taisnotes.blogspot.com.eg/2016/07/osek-basic- task-vs-extended-task.html OSEK OS Session Speaker Deepak V. M.S Ramaiah School of Advanced Studies - Bangalore 1 Introducción a OSEK-OS - El Sistema Operativo del CIAA-Firmware Programación de Sistemas Embebidos MSc. Ing. Mariano Cerdeiro https://www.facebook.com/groups/embedded.system.KS/ Follow us Press here 97 References #LEARN_IN DEPTH #Be_professional_in embedded_system Introduction to AUTOSAR, Stephen Waldron, Vector webinar Wednesday 7th May 2014 https://vector.com/portal/medien/cmc/events/Webinars/2014/Vector_ Webinar_AUTOSAR_Introduction_20140507_EN.pdf Introduction to AUTOSAR, Stephen Waldron, Vector webinar Tuesday 5th May 2015 https://vector.com/portal/medien/cmc/events/Webinars/2015/Vector_ Webinar_AUTOSAR_Introduction_20150505_EN.pdf https://www.facebook.com/groups/embedded.system.KS/ Follow us Press here 98 References #LEARN_IN DEPTH #Be_professional_in embedded_system Applying AUTOSAR in Practice Available Development Tools and Migration Paths Master Thesis, Computer Science Authors: Jesper Melin http://www.idt.mdh.se/utbildning/exjobb/files/TR1171.pdf Freescale AUTOSAR Software Overview.pdf https://www.facebook.com/groups/embedded.system.KS/ Follow us Press here 99 References #LEARN_IN DEPTH #Be_professional_in embedded_system AUTOSAR Method, Vector Webinar 2013-04-17 https://vector.com/portal/medien/cmc/events/Webinars/2013/Vector_Web inar_AUTOSAR_Method_20130417.pdf AUTOSAR Configuration Process - How to handle 1000s of parameters Vector Webinar 2013-04-19 https://vector.com/portal/medien/cmc/events/Webinars/2013/Vector_Web inar_AUTOSAR_Configuration_Process_20130419_EN.pdf AUTOSAR Runtime Environment and Virtual Function Bus, Nico Naumann https://hpi.de/fileadmin/user_upload/fachgebiete/giese/Ausarbeitungen_A UTOSAR0809/NicoNaumann_RTE_VFB.pdf https://www.facebook.com/groups/embedded.system.KS/ Follow us Press here 100 References #LEARN_IN DEPTH #Be_professional_in embedded_system The AUTOSAR Adaptive Platform for Connected and Autonomous Vehicles, Simon Fürst, AUTOSAR Steering Committee 8th Vector Congress 29-Nov-2016, Alte Stuttgarter Reithalle, Stuttgart, Germany https://vector.com/congress/files/presentations/VeCo16_06_29Nov_Re ithalle_Fuerst_BMW.pdf A Review of Embedded Automotive Protocols, Nicolas Navet1, Françoise Simonot-Lion2 April 14, 2008 https://www.realtimeatwork.com/wpcontent/uploads/chapter4_CRC_2008.pdf https://www.facebook.com/groups/embedded.system.KS/ Follow us Press here 101 References #LEARN_IN DEPTH #Be_professional_in embedded_system AUTOSAR Adaptive Platform https://vector.com/conference_india/files/presentations/Day1/3_AUTO SAR%20Adaptive%20Platform.pdf https://www.facebook.com/groups/embedded.system.KS/ Follow us Press here 102 References #LEARN_IN DEPTH #Be_professional_in embedded_system http://www.autosar.org/about/technical-overview/ecu-software architecture/autosar-basic-software/ http://www.autosar.org/standards/classic-platform/ https://automotivetechis.files.wordpress.com/2012/05/communicationsta ck_gosda.pdf https://automotivetechis.files.wordpress.com/2012/05/autosar_ppt.pdf https://automotivetechis.wordpress.com/autosar-concepts/ https://automotivetechis.files.wordpress.com/2012/05/autosar_exp_laye redsoftwarearchitecture.pdf http://www.slideshare.net/FarzadSadeghi1/autosar-software-component https://www.renesas.com/enus/solutions/automotive/technology/autosar/autosar-mcal.html https://github.com/parai/OpenSAR/blob/master/include/Std_Types.h https://www.facebook.com/groups/embedded.system.KS/ Follow us Press here 103 #LEARN_IN DEPTH #Be_professional_in embedded_system https://www.facebook.com/groups/embedded.system.KS/ Follow us Press here 104 #LEARN_IN DEPTH #Be_professional_in embedded_system https://www.facebook.com/groups/embedded.system.KS/