Search results for "programming OR the OR finite OR state OR machine"
-
Elektor Digital Programming the Finite State Machine (E-book)
Programming the Finite State Machine with 8-Bit PICs in Assembly and C Andrew Pratt provides a detailed introduction to programming PIC microcontrollers, as well as a thorough overview of the Finite State Machine (FSM) approach to programming. Most of the book uses assembly programming, but do not be deterred. The FSM gives a structure to a program, making it easy to plan, write, and modify. The last two chapters introduce programming in C, so you can make a direct comparison between the two techniques. The book references the relevant parts of the Microchip datasheet as familiarity with it is the best way to discover detailed information. This book is aimed at Microsoft Windows and Linux users. To keep your costs to a minimum and to simplify the toolchain, specific applications are provided as a free download to enable you to use an FTDI serial lead as the programmer. The assembler used is the open-source "gpasm". All programming can be done in a text editor. There are detailed instructions on how to perform the necessary installations on Windows, Linux Debian, and derivatives such as Ubuntu and Fedora. For programming in C, Microchip's XC8 compiler is used from the command line. In addition to the programming applications, two serial read and serial write applications can be used for communicating with the PICs from a computer. A voltmeter project including practical instructions on building a circuit board from scratch is included. All theory is covered beforehand, including how to do integer arithmetic in assembly. Two PICs are covered: the PIC12F1822 and the PIC16F1823. Both can run at 32 MHz with an internal oscillator. You do not need to buy a factory-made development board and programmer. With relatively inexpensive parts including a serial lead, microcontroller, a few resistors, and LEDs, you can get started exploring embedded programming. Links Updated Programmer
€ 32,95
Members € 26,36
-
Elektor Publishing C Programming with Arduino
Technology is constantly changing. New microcontrollers become available every year. The one thing that has stayed the same is the C programming language used to program these microcontrollers. If you would like to learn this standard language to program microcontrollers, then this book is for you! Arduino is the hardware platform used to teach the C programming language as Arduino boards are available worldwide and contain the popular AVR microcontrollers from Atmel. Atmel Studio is used as the development environment for writing C programs for AVR microcontrollers. It is a full-featured integrated development environment (IDE) that uses the GCC C software tools for AVR microcontrollers and is free to download. At a glance: Start learning to program from the very first chapter No programming experience is necessary Learn by doing – type and run the example programs A fun way to learn the C programming language Ideal for electronic hobbyists, students and engineers wanting to learn the C programming language in an embedded environment on AVR microcontrollers Use the free full-featured Atmel Studio IDE software for Windows Write C programs for 8-bit AVR microcontrollers as found on the Arduino Uno and MEGA boards Example code runs on Arduino Uno and Arduino MEGA 2560 boards and can be adapted to run on other AVR microcontrollers or boards Use the AVR Dragon programmer/debugger in conjunction with Atmel Studio to debug C programs
€ 49,95
Members € 44,96
-
Elektor Publishing Nucleo Boards Programming with the STM32CubeIDE
Hands-on in more than 50 projects STM32 Nucleo family of processors are manufactured by STMicroelectronics. These are low-cost ARM microcontroller development boards. This book is about developing projects using the popular STM32CubeIDE software with the Nucleo-L476RG development board. In the early Chapters of the book the architecture of the Nucleo family is briefly described. The book covers many projects using most features of the Nucleo-L476RG development board where the full software listings for the STM32CubeIDE are given for each project together with extensive descriptions. The projects range from simple flashing LEDs to more complex projects using modules, devices, and libraries such as GPIO, ADC, DAC, I²C, SPI, LCD, DMA, analogue inputs, power management, X-CUBE-MEMS1 library, DEBUGGING, and others. In addition, several projects are given using the popular Nucleo Expansion Boards. These Expansion Boards plug on top of the Nucleo development boards and provide sensors, relays, accelerometers, gyroscopes, Wi-Fi, and many others. Using an expansion board together with the X-CUBE-MEMS1 library simplifies the task of project development considerably. All the projects in the book have been tested and are working. The following sub-headings are given for each project: Project Title, Description, Aim, Block Diagram, Circuit Diagram, and Program Listing for the STM32CubeIDE. In this book you will learn about STM32 microcontroller architecture; the Nucleo-L476RG development board in projects using the STM32CubeIDE integrated software development tool; external and internal interrupts and DMA; DEBUG, a program developed using the STM32CubeIDE; the MCU in Sleep, Stop, and in Standby modes; Nucleo Expansion Boards with the Nucleo development boards. What you need a PC with Internet connection and a USB port; STM32CubeIDE software (available at STMicroelectronics website free of charge) the project source files, available from the book’s webpage hosted by Elektor; Nucleo-L476RG development board; simple electronic devices such as LEDs, temperature sensor, I²C and SPI chips, and a few more; Nucleo Expansion Boards (optional).
€ 49,95
Members € 44,96
-
Elektor Publishing C Programming on Raspberry Pi
Develop innovative hardware-based projects in C The Raspberry Pi has traditionally been programmed using Python. Although this is a very powerful language, many programmers may not be familiar with it. C on the other hand is perhaps the most commonly used programming language and all embedded microcontrollers can be programmed using it. The C language is taught in most technical colleges and universities and almost all engineering students are familiar with using it with their projects. This book is about using the Raspberry Pi with C to develop a range of hardware-based projects. Two of the most popular C libraries, wiringPi and pigpio are used. The book starts with an introduction to C and most students and newcomers will find this chapter invaluable. Many projects are provided in the book, including using Wi-Fi and Bluetooth to establish communication with smartphones. Many sensor and hardware-based projects are included. Both wiringPi and pigpio libraries are used in all projects. Complete program listings are given with full explanations. All projects have been fully tested and work. The following hardware-based projects are provided in the book: Using sensors Using LCDs I²C and SPI buses Serial communication Multitasking External and timer interrupts Using Wi-Fi Webservers Communicating with smartphones Using Bluetooth Sending data to the cloud Program listings of all Raspberry Pi projects developed in this book are available on the Elektor website. Readers can download and use these programs in their projects. Alternatively, they can customize them to suit their applications.
€ 39,95
Members € 35,96
-
Elektor Publishing FPGA Programming and Hardware Essentials
Kick off with the MAX1000 and VHDPlus Ready to Master FPGA Programming? In this guide, we’re diving into the world of Field Programmable Gate Arrays (FPGAs) – a configurable integrated circuit that can be programmed after manufacturing. Imagine bringing your ideas to life, from simple projects to complete microcontroller systems! Meet the MAX1000: a compact and budget-friendly FPGA development board packed with features like memory, user LEDs, push-buttons, and flexible I/O ports. It’s the ideal starting point for anyone wanting to learn about FPGAs and Hardware Description Languages (HDLs). In this book, you’ll get hands-on with the VHDPlus programming language – a simpler version of VHDL. We’ll work on practical projects using the MAX1000, helping you gain the skills and confidence to unleash your creativity. Get ready for an exciting journey! You’ll explore a variety of projects that highlight the true power of FPGAs. Let’s turn your ideas into reality and embark on your FPGA adventure – your journey starts now! Exciting Projects You’ll Find in This Book Arduino-Driven BCD to 7-Segment Display Decoder Use an Arduino Uno R4 to supply BCD data to the decoder, counting from 0 to 9 with a one-second delay Multiplexed 4-Digit Event Counter Create an event counter that displays the total count on a 4-digit display, incrementing with each button press PWM Waveform with Fixed Duty Cycle Generate a PWM waveform at 1 kHz with a fixed duty cycle of 50% Ultrasonic Distance Measurement Measure distances using an ultrasonic sensor, displaying the results on a 4-digit 7-segment LED Electronic Lock Build a simple electronic lock using combinational logic gates with push buttons and an LED output Temperature Sensor Monitor ambient temperature with a TMP36 sensor and display the readings on a 7-segment LED Downloads Software
€ 39,95
Members € 35,96
-
Elektor Academy Pro Learn FPGA Programming with Verilog
Master FPGA programming with the Red Pitaya Academy Pro Box. Learn Verilog and build a real-time audio processing system using Red Pitaya – with a full online course and hands-on project materials. The Academy Pro Box "Learn FPGA Programming with Verilog" is a complete learning solution for students, engineers and developers looking to gain hands-on experience with FPGA programming in Verilog. Combining theory with practice, the programme integrates a well-established Udemy course on Verilog fundamentals with nine exclusive practical modules developed by Elektor & Red Pitaya, designed specifically for the Red Pitaya STEMlab platform. Participants work with real hardware – delivered as part of the box – including the Red Pitaya STEMlab 125-14 Starter Kit and essential electronic components, enabling them to apply their knowledge immediately through real-world test setups. This combination of guided theory and structured experimentation ensures not only a strong understanding of FPGA principles, but also the ability to implement and verify designs independently. The box is aimed at professionals and advanced learners who want to go beyond simulation and gain practical skills in digital design. By the end of the programme, participants will have completed working FPGA projects, using industry-relevant tools and workflows – making this a valuable resource for academic & career development and technical innovation. What you’ll learn? Fundamentals of FPGA and Verilog Programming How to simulate, synthesize & implement digital circuits How to interface audio hardware with your FPGA Real-time Digital Signal Processing (DSP) techniques How to build, test, and customize audio filters Perfect for Professionals looking to level up their skills in Digital System Design Designers aiming to accelerate time-to-market for their applications Engineers pushing the boundaries of technological innovation Support when you need it In-depth troubleshooting in the course Community forums & Red Pitaya documentation Udemy Q&A and hardware support email What's inside the Box (Course)? Red Pitaya STEMlab 125-14 Starter Kit (valued at €550) 1x STEMlab 125-14 board 1x USB power supply (EU, UK & US) 1x microSD card (16 GB) with pre-installed OS 1x Ethernet cable Extra: 2x Oscilloscope Probes Extra: 2x SMA to BNC adapters Microphone & speaker set with cables Step-by-step project guide Downloadable code templates and schematics Lifetime access to a complete, self-paced Udemy course on Verilog Learning Material (of this Box/Course) 9 Practical Modules with Red Pitaya ▶ Click here to open Introduction Setting Up the Vivado Development Environment Project Setup & Vivado Integration Synthesis, Implementation & Bitstream Generation FPGA Image Overview First FPGA Projects – LEDs Full Audio Pass-Through Module 5 kHz Low-Pass Filter (4-Pole Cascade) Real-Time Microphone Input → Speaker Output Verilog Course with 28 Lessons on Udemy ▶ Click here to open Installing Vivado Vivado Design Flow Part 1 Vivado Design Flow Part 2 Commonly Asked Question’s from previous Module Fundamentals of Verilog Commonly Asked Question’s from previous Module Modeling Styles Assignment Operators in Verilog FAQ Behavioral Modeling Style Commonly Asked Question's from previous Module Gate Level Modeling Style Switch level Modeling Style Structural Modeling Style Schematic based Design Entry with IP integrator and Xilinx IP's Memories Commonly Asked Question's from previous Module Finite State Machines Commonly Asked Question's from previous Module Writing Testbenches Hardware Debugging with Vivado Required Hardware v File I/0 Projects RTL for Synthesis FPGA Architecture Fundamentals Commonly Asked Question's from previous Module Interview Preparations Next Step What is Elektor Academy Pro? Elektor Academy Pro delivers specialized learning solutions designed for professionals, engineering teams, and technical experts in the electronics and embedded systems industry. It enables individuals and organizations to expand their practical knowledge, enhance their skills, and stay ahead of the curve through high-quality resources and hands-on training tools. From real-world projects and expert-led courses to in-depth technical insights, Elektor empowers engineers to tackle today’s electronics and embedded systems challenges. Our educational offerings include Academy Books, Pro Boxes, Webinars, Conferences, and industry-focused B2B magazines – all created with professional development in mind. Whether you're an engineer, R&D specialist, or technical decision-maker, Elektor Academy Pro bridges the gap between theory and practice, helping you master emerging technologies and drive innovation within your organization.
€ 649,00
Members € 584,10
-
McGraw Hill Education Programming the Raspberry Pi (3rd Edition)
Getting Started with Python This fully updated guide shows how to create inventive programs and fun games on your powerful Raspberry Pi--with no programming experience required. Programming the Raspberry Pi, Third Edition addresses physical changes and new setup procedures as well as OS updates to the current version 4. You will discover how to configure hardware and software, write Python scripts, create user-friendly GUIs, and control external electronics. Step-by-step projects include a digital clock prototype and a fully functioning Raspberry Pi robot. Configure your Raspberry Pi and explore its features Start writing and debugging Python programs Use strings, lists, functions, and dictionaries Work with modules, classes, and methods Apply object-oriented development methods Create user-friendly games using Pygame Build intuitive user interfaces with guizero Interface with hardware using the gpiozero library Attach external electronics through the GPIO port Add powerful Web features to your projects
€ 19,95
Members € 17,96
-
Elektor Digital The State of Hollow State Audio (E-book)
The State of Hollow State Audio in the Second Decade of the 21st Century Vacuum-tube (or valve, depending upon which side of the pond you live on) technology spawned the Age of Electronics early in the 20th Century. Until the advent of solid-state electronics near mid-century, hollow-state devices were the only choice. But following the invention of the transistor (after their process fell to reasonable levels), within a couple of decades, the death of vacuum tubes was widely heralded. Yet here we are some five decades later, and hollow-state equipment is enjoying something of a comeback, especially in the music and high-end audio industries. Many issues surround hollow-state audio: Does it produce—as some claim—better sound? If so, is there science to back up these claims? How do hollow-state circuits work? How do you design hollow-state audio circuits? If hollow-state equipment fails, how do you go about troubleshooting and repairing it? Can we recreate some of the classic hollow-state audio devices for modern listening rooms and recording studios? How can we intelligently modify hollow-state amplifiers to our taste? These and other topics are covered in The State of Hollow State Audio.
€ 32,95
Members € 26,36
-
Elektor Digital Programming with Node-RED (E-book)
Design IoT Projects with Raspberry Pi, Arduino and ESP32 The Internet of Things (IoT) is becoming a major application area for embedded systems. As a result, more and more people are becoming interested in learning about embedded design and programming. Technical colleges and universities are moving away from legacy 8 and 16-bit microcontrollers and are introducing 32-bit embedded microcontrollers to their curriculums. Many IoT applications demand precision, high processing power, and low power consumption. Produced by IBM, Node-RED is an open-source visual editor for wiring the Internet of Things. Node-RED comes with a large number of nodes to handle a multitude of tasks. The required nodes are selected and joined together to perform a particular task. Node-RED is based on flow type programming where nodes are configured and joined together to form an application program. There are nodes for performing complex tasks, including web access, Twitter, E-mail, HTTP, Bluetooth, MQTT, controlling GPIO ports, etc. One particularly nice aspect of Node-RED is that the programmer does not need to learn how to write complex programs. For example, an email can be sent by simply joining nodes together and writing only a few lines of code. The aim of this book is to teach how Node-RED can be used in projects. The main hardware platform used with most of the projects in this book is Raspberry Pi 4. Chapters are included to show how Node-RED can be also be used with Arduino Uno, ESP32 DevKitC, and the ESP8266 NodeMCU microcontroller development boards.
€ 34,95
Members € 27,96
-
Elektor Digital C Programming with Arduino (E-book)
Technology is constantly changing. New microcontrollers become available every year. The one thing that has stayed the same is the C programming language used to program these microcontrollers. If you would like to learn this standard language to program microcontrollers, then this book is for you! Arduino is the hardware platform used to teach the C programming language as Arduino boards are available worldwide and contain the popular AVR microcontrollers from Atmel. Atmel Studio is used as the development environment for writing C programs for AVR microcontrollers. It is a full-featured integrated development environment (IDE) that uses the GCC C software tools for AVR microcontrollers and is free to download. At a glance: Start learning to program from the very first chapter No programming experience is necessary Learn by doing – type and run the example programs A fun way to learn the C programming language Ideal for electronic hobbyists, students and engineers wanting to learn the C programming language in an embedded environment on AVR microcontrollers Use the free full-featured Atmel Studio IDE software for Windows Write C programs for 8-bit AVR microcontrollers as found on the Arduino Uno and MEGA boards Example code runs on Arduino Uno and Arduino MEGA 2560 boards and can be adapted to run on other AVR microcontrollers or boards Use the AVR Dragon programmer/debugger in conjunction with Atmel Studio to debug C programs
€ 39,95
Members € 31,96
-
Elektor Publishing PLC Programming with the Raspberry Pi and the OpenPLC Project
ModbusRTU and ModbusTCP examples with the Arduino Uno and ESP8266 Introduction to PLC programming with OpenPLC, the first fully open source Programmable Logic Controller on the Raspberry Pi, and Modbus examples with Arduino Uno and ESP8266 PLC programming is very common in industry and home automation. This book describes how the Raspberry Pi 4 can be used as a Programmable Logic Controller. Before taking you into the programming, the author starts with the software installation on the Raspberry Pi and the PLC editor on the PC, followed by a description of the hardware. You'll then find interesting examples in the different programming languages complying with the IEC 61131-3 standard. This manual also explains in detail how to use the PLC editor and how to load and execute the programs on the Raspberry Pi. All IEC languages are explained with examples, starting with LD (Ladder Diagram) over ST (Structured Control Language) to SFC (Special Function Chart). All examples can be downloaded from the author's website. Networking gets thorough attention too. The Arduino Uno and the ESP8266 are programmed as ModbusRTU or ModbusTCP modules to get access to external peripherals, reading sensors and switching electrical loads. I/O circuits complying with the 24 V industry standard may also be of interest for the reader. The book ends with an overview of commands for ST and LD. After reading the book, the reader will be able to create his own controllers with the Raspberry Pi.
€ 39,95
Members € 35,96
-
Elektor Digital PC Programming (E-book)
A Small Basic Approach There are many different PC programming languages available on the market. Some have beautiful names; some have easy to use development tools. Others have incredible power. They all have one thing in common: they assume that you have, or want to have, a knack for technology and difficult to read commands. In this book we take a practical approach to programming. We assume that you simply want to write a PC program, and write it quickly. Not in a professional environment, not in order to start a new career, but for plain and simple fun... or just to get a task done. Therefore we use Small Basic. You will have an application up and running in a matter of minutes. You will understand exactly how it works and be able to write text programs, graphical user interfaces, and advanced drivers. It is so simple; you don't even need to be an adult!
€ 29,95
Members € 23,96