Skip to content
Free planNo credit card requiredStart writing

Search 250 million research papers

Read the abstract, see who wrote it and who cites it, and get the citation in APA, MLA, Chicago or Harvard.

About 10,000 papers for “embedded programming”

Embedded C Programming

Siegesmund, Mark · CERN Document Server (European Organization for Nuclear Research) · 2014

Cited by 0

Programming of Embedded Systems

Vincent Mahout, Thierry Rocacher, Guillaume Auriol · 2025

Many everyday objects have become embedded, connected and even autonomous. The engineers and technicians who develop them must have skills in both computer science and electronics. Drawing on some 20 years of experience in the field of hardware and embedded computing, Programming of Embedded Systems analyzes how physical objects can interact with microcontrollers. It presents the fundamental principles of programming and code structuring. Although based on a specific family (STM32) of microcontrollers, the various chapters outline general concepts applicable to any microcontroller. They analyze the mechanisms that govern exchanges between a computer program and a hardware component of the embedded object. Each chapter details the programming of peripheral units and ends with an example using a common application for managing the heating of a home equipped with a photovoltaic installation to illustrate implementation in the programming language C.

Cited by 0

Programming Languages for Embedded Systems

Sebastian Thrun, Frank Pfenning, Sungwoo Park et al. · 2001

Problem: Sensor-based embedded systems have to cope with uncertainty. Uncertainty arises from sensorlimitations, environment dynamics, and lack of knowledge at the design time of embedded system. Currently, we lack frameworks for developing software for embedded systems. Our hypothesis is thatprobabilistic computation and learning are key to building robust embedded software. Furthermore, we believe that these principles should be offered at the programming language level, to maximize their usability.Thus, our goal is to devise new programming languages that seamlessly integrate probabilistic computation and learning. Impact: This project, if successful, could revolutionize the way we program computers. Today, computersare programmed through keyboards. Tomorrow we might teach them, or let them teach themselves through interaction with their environment. Moreover, to date we treat all information inside a computer as certain.Tomorrow's computer software might compute with multiple hypothesis, yielding more robust results in the face of uncertainty. State of the Art: Current computer programming languages do not support any of the mechanisms studiedin this project.

Cited by 0

Functional Programming for Embedded Systems

Sarkar, Abhiroop · Chalmers Research (Chalmers University of Technology) · 2022

Embedded Systems application development has traditionally been carried out in low-level machine-oriented programming languages like C or Assembler that can result in unsafe, error-prone and difficult-to-maintain code. Functional programming with features such as higher-order functions, algebraic data types, polymorphism, strong static typing and automatic memory management appears to be an ideal candidate to address the issues with low-level languages plaguing embedded systems. However, embedded systems usually run on heavily memory-constrained devices with memory in the order of hundreds of kilobytes and applications running on such devices embody the general characteristics of being (i) I/O- bound, (ii) concurrent and (iii) timing-aware. Popular functional language compilers and runtimes either do not fare well with such scarce memory resources or do not provide high-level abstractions that address all the three listed characteristics. This work attempts to address this gap by investigating and proposing high-level abstractions specialised for I/O-bound, concurrent and timing-aware embedded-systems programs. We implement the proposed abstractions on eagerly-evaluated, statically-typed functional languages running natively on microcontrollers. Our contributions are divided into two parts - Part 1 presents a functional reactive programming language - Hailstorm - that tracks side effects like I/O in its type system using a feature called resource types. Hailstorm’s programming model is illustrated on the GRiSP microcontroller board.Part 2 comprises two papers that describe the design and implementation of Synchron, a runtime API that provides a uniform message-passing framework for the handling of software messages as well as hardware interrupts. Additionally, the Synchron API supports a novel timing operator to capture the notion of time, common in embedded applications. The Synchron API is implemented as a virtual machine - SynchronVM - that is run on the NRF52 and STM32 microcontroller boards. We present programming examples that illustrate the concurrency, I/O and timing capabilities of the VM and provide various benchmarks on the response time, memory and power usage of SynchronVM.

Cited by 0

Generative programming for embedded systems

János Sztipanovits, Gábor Karsai · 2002

Composition and component-based design are key tools of modern software engineering for managing complexity. The concept of component-based design is straightforward: systems are built by composing software components with precisely defined interfaces using standardized interconnection mechanisms. "Plug-and-play" construction is supported by some underlying composition framework, such as CORBA, which facilitates the component interactions by providing standard services such as request broker, interface repository and others. Unfortunately, this solution tends to work only for building systems with a giant component using small "plug-ins" or for very small systems with a few components.The success of building applications based on a giant component is the result of strong restrictions on plug-in-s and their interaction: the dominant component (such as databases or web browsers) preserves the overall design integrity. In case of small systems, the system designers can preserve design integrity without extensive tool support. The problems of software composition for embedded systems are even harder. Embedded computers are surrounded by physical processes: they receive their inputs from sensors and send their outputs to actuators. Embedded computing devices, viewed from their sensor and actuator interfaces, act like physical processes with dynamics, noise, fault, size, power and other physical characteristics.It is not surprising that using current software technology, logical/functional composability does not imply physical composability. In fact, physical properties are not composable, rather, they appear as cross-cutting constraints in the development process. .Our vision with Model-Integrated Computing (MIC) is to answer the composition challenges of embedded systems the following way:.Modeling: The software development paradigm is changing from the use of dominantly imperative programming languages to dominantly declarative, Domain-Specific Modeling Languages (DSML). Complexity is managed by the use of multiple-view modeling and model analysis techniques.Model-Based Generators: The tight relationship between the model-based design and the modeled system is ensured by the extensive use of model-based generators, which translate the synthesized and verified models into code and other artifacts that form the application.The MIC toolset of ISIS has significant progress in implementing this vision.

Cited by 16

Linear Programming in Embedded Systems

Bastian Ristau, Gerhard Fettweis, Vodafone Chair et al. · 2009

In the past signal processing algorithms for mobile communications systems were implemented in hardware using a single chip solution, usually a Digital Signal Processor (DSP). But due to the

Cited by 0

Embedded functional programming in Hume

Gergely Patai, Péter Hanák · 2007

Embedded systems represent a rapidly growing branch of information technology, characterised by the need for increased dependability, timeliness and efficiency. While functional languages allow developers to produce highly reliable and maintainable code, they ignore the aspect of time, and their efficiency is inferior to those of low-level languages currently dominating this field. Hume is a novel hybrid language that combines the functional paradigm with ideas from hardware design. It focuses on producing time- and space-constrained code while keeping the benefits of programming on a high level. This paper describes the development of a lift control simulation in Hume running on low-performance embedded hardware platforms, including the process of porting the code to these platforms.

Cited by 2

Towards Automated Embedded Systems Programming

Imam Nur Bani Yusuf · 2023

Writing code for embedded systems poses unique challenges due to hardware involvement. Developers often need to learn domain-specific knowledge to write embedded codes. Learning such knowledge is time-consuming and hinders de-velopers' productivity. This paper presents a proposal for an automated code generation approach, specifically designed for embedded systems. The work is composed of three milestones, i.e., understanding the needs of embedded developers by analyzing posts from discussion forums, developing a tool to recommend driver libraries of 110 hardware and generate its interface configurations and usage patterns, and improving the generation accuracy of the prior tool using program analysis techniques. The tool will be evaluated using various metrics from machine translation.. classification.. and information retrieval fields.

Cited by 1

NCAP embedded using structured programming

Tércio Alberto dos Santos Filho, Alexandre César Rodrigues da Silva, Alexandre César Rodrigues da Silva · UNESP Institutional Repository (São Paulo State University) · 2012

This paper presents a network node embedded based on IEEE 1451 standard developed using structured programming to access the transducers in the WTIM. The NCAP was developed using Nios II processor and uClinux, a embedded operating system developed to features restricted hardware. Both hardware and software have dynamics features and they can be configured based in the application features. Based in this features, the NCAP was developed using the minimum components of hardware and software to that being implemented in remote environment like central point of data request. Many NCAP works are implemented with an object oriented structure. This is different from the surrounding implementations. In this project the NCAP was developed using structured programming. The tests of the NCAP were made using a ZigBee interface between NCAP and WTIM and the system demonstrated in areas of difficult access for long period of time due to need for low power consumption.

Cited by 1Open access

Programming embedded systems with MicroPython

Θεοδωράκογλου, Ευαγγελία Θ., Θεοδωράκογλου, Ευαγγελία Θ. · University of Thessaly Institutional Repository (University of Thessaly) · 2025

Cited by 0Open access

Real-time embedded convex programming

Long D. Nguyen, Trung Q. Duong, Hoang Duong Tuan · Institution of Engineering and Technology eBooks · 2021

Chapter Contents: 9.1 Real-time operating systems and programming languages for embedded systems 9.1.1 Complexity of convex optimisation problem 9.1.2 Running time of algorithms 9.2 Embedded optimisation software 9.2.1 Embedded in MATLAB® 9.2.2 Embedded in Python programming 9.2.3 Embedded in R programming 9.2.4 Embedded in JULIA programming

Cited by 0