Zum Hauptinhalt springen Zur Suche springen Zur Hauptnavigation springen

Hardware

Produkte filtern

Produktbild für Programming with 64-Bit ARM Assembly Language

Programming with 64-Bit ARM Assembly Language

Mastering ARM hardware architecture opens a world of programming for nearly all phones and tablets including the iPhone/iPad and most Android phones. It’s also the heart of many single board computers like the Raspberry Pi. Gain the skills required to dive into the fundamentals of the ARM hardware architecture with this book and start your own projects while you develop a working knowledge of assembly language for the ARM 64-bit processor.You'll review assembly language programming for the ARM Processor in 64-bit mode and write programs for a number of single board computers, including the Nvidia Jetson Nano and the Raspberry Pi (running 64-bit Linux). The book also discusses how to target assembly language programs for Apple iPhones and iPads along with 64-Bit ARM based Android phones and tablets. It covers all the tools you require, the basics of the ARM hardware architecture, all the groups of ARM 64-Bit Assembly instructions, and how data is stored in the computer’s memory. In addition, interface apps to hardware such as the Raspberry Pi’s GPIO ports. The book covers code optimization, as well as how to inter-operate with C and Python code. Readers will develop enough background to use the official ARM reference documentation for their own projects.With Programming with 64-Bit ARM Assembly Language as your guide you’ll study how to read, reverse engineer and hack machine code, then be able to apply these new skills to study code examples and take control of both your ARM devices’ hardware and software.WHAT YOU'LL LEARN* Make operating system calls from assembly language and include other software libraries in your projects* Interface apps to hardware devices such as the Raspberry Pi GPIO ports* Reverse engineer and hack code* Use the official ARM reference documentation for your own projectsWHO THIS BOOK IS FORSoftware developers who have already learned to program in a higher-level language like Python, Java, C#, or even C and now wish to learn Assembly programming.STEPHEN SMITH is a retired Software Architect, located in Gibsons, BC, Canada. He's been developing software since high-school, or way too many years to record. Since retiring he has pursued Artificial Intelligence programming, earned his Advanced HAM Radio License and enjoys mountain biking, hiking, and nature photography. He continues to write his popular technology blog at smist08.wordpress.com. IntroductionGeneral preface information in most computer books.Chapter 1: Getting StartedProvide a bit of background and history of the ARM Processor leading up to the modern 64-bit processors that this book is about. Covers what you need to write programs like those in this book. GNU GCC compiler, GDB, a text editor, etc. Covers hardware you require to run the programs in this book including how to run a Raspberry Pi in 64-bit mode or using another SBC like the NVidia Jetson Nano.Talk about how programs are represented in memory and then how you use an Assembler to generate them. Cover the linking process and give a very small example. The chapter concludes with a simple “Hello World” program written in ARM 64-bit Assembler.About the ARM ProcessorWhat You Will LearnWhy Use AssemblyTools You NeedComputers & NumbersARM Assembly InstructionsCPU RegistersARM Instruction FormatMemoryAbout the GCC AssemblerHello WorldAbout the Starting CommentWhere to StartAssembly InstructionsDataCalling LinuxReverse Engineering Our ProgramThe goal is to always have working sample programs, this is the first, to just ensure the reader can enter, assemble and link.Chapter 2: Loading, Adding & SubtractingNegative NumbersAbout Two’s ComplementAbout Gnome Programmer’s CalculatorAbout One’s ComplementBig vs. Little EndianAbout Bi-endianPros of Little EndianShifting & RotatingAbout Carry FlagAbout the Barrel ShifterBasics of shifting and rotatingLogical Shift LeftLogical Shift RightArithmetic Shift RightRotate RightRotate Right ExtendMOV/MVNAbout MOVTThe Dreaded Flexible Operand2Register & ShiftSmall Number & RotationMVNMOV ExamplesADD/ADCAdd With CarrySUBChapter 3: Tooling UpNow that we can start to write some longer code, we need to get into debugging. We also introduce makefiles. Cover the basics and typical workflows for writing/debugging programs.GNU MakeRebuilding a fileA Rule for Building .s filesDefining VariablesCross CompilingBuilding for ARM on IntelBuilding for AndroidBuilding for iOSGDBPreparing to DebugBeginning GDBSource Control and Build ServersGitJenkinsChapter 4: Controlling Program FlowIntroduce how to do if/else statements and loops. Introduce design patterns. Talk more about making your programs readable and maintainable.Unconditional BranchAbout the CPSRBranch on ConditionAbout the CMP InstructionLoopsFOR LoopsWhile LoopsIf/Then/ElseLogical OperatorsANDEORORRBICDesign PatternsConverting Integers to AsciiUsing Expressions in Immediate ConstantsStoring a Register to MemoryWhy Not Print in Decimal?Performance of Branch InstructionsMore Comparison InstructionsSummaryChapter 5: Thanks for the MemoriesCovers loading from and storing to the Pi’s memory. Indexed memory operation, etc.Defining Memory ContentsLoading a RegisterPC Relative AddressingLoading from MemoryIndexing Through MemoryWrite BackPost-Indexed AddressingConverting to Upper-caseStoring a RegisterDouble RegistersSummaryChapter 6: Functions & the StackStacks on LinuxBranch with LinkNesting Function CallsFunction Parameters & Return ValuesManaging the RegistersSummary of the Function Call AlgorithmUpper-Case RevisitedStack FramesStack Frame ExampleDefining SymbolsOne More OptimizationMacrosInclude DirectiveMacro DefinitionLabelsWhy Macros?SummaryChapter 7: Linux Operating System ServicesCover how Linux system calls work from Assembler. Cover how to do basic file I/O and other useful tasks like timing code.So Many ServicesCalling ConventionStructuresWrappersConverting a File to Upper CaseOpening a FileError CheckingLoopingSummaryChapter 8: Programming GPIO PinsCreate a simple Assembler program to flash some LEDs attached via a breadboard to the GPIO pins.GPIO OverviewIn Linux, Everything is a FileFlashing LEDsMoving Closer to the MetalAbout Raspberry Pi 4 RAMIn Devices, Everything is MemoryRegisters in BitsGPIO Function Select RegistersGPIO Output Set and Clear RegistersMore Flashing LEDsRoot AccessTable DrivenSetting Pin DirectionSetting & Clearing PinsSummaryChapter 9: Interacting with C & PythonUsually people use minimal Assembly code to supplement their programming in other languages. Cover the most common use cases and provide examples of each.Calling C RoutinesPrinting Debug InformationPreserving StateCalling PrintfPassing a StringAdding with Carry RevisitedCalling Assembly Routines from CPackaging our CodeStatic LibraryShared LibraryEmbedding Assembly Code inside C CodeCalling Assembly from PythonSummaryChapter 10: Multiply, Divide & AccumulateMultiplicationExamplesDivisionExampleMultiply & AccumulateVectors & MatricesAccumulate InstructionsDual Multiply with AccumulateExample 1Accessing Matrix ElementsMultiply with AccumulateRegister UsageExample 2SummaryChapter 11: Floating Point OperationsShow how to write Assembler to perform floating point calculations. Show how to do division. Cover the data formats supported here.About Floating Point NumbersNormalization & NaNsRounding ErrorsDefining Floating Point NumbersFPU RegistersFunction Call ProtocolAbout BuildingLoading & Saving FPU RegistersBasic ArithmeticDistance Between PointsFloating Point ConversionsFloating Point ComparisonExampleSummaryChapter 12: Neon CoprocessorExplain Single Instruction Multiple Data (SIMD) programming. Examples from AI and graphics. Give examples and demonstrate how this can speed up your program.The Neon RegistersStay in Your LaneArithmetic Operations4D Vector Distance3x3 Matrix MultiplicationSummaryChapter 13: Reading, Understanding and Hacking CodeHow to use GCC to generate an Assembler listing from higher level language source code, how to use GDB to view Assembly code in memory and how to use Ghidra to reverse engineer a compiled program. Then look at an example of injecting executable code using a buffer overrun.Linux & GCCDivision RevisitedCode Created by GCCReverse Engineering & GhidraOverflowing the BufferSummaryAppendix A: ARM 64-Bit Instruction SetAppendix B: Linux Operating System ServicesAppendix C: Binary FormatsAppendix D: Assembler DirectivesAppendix E: ASCII Character SetReferences

Regulärer Preis: 56,99 €
Produktbild für Commercial and Industrial Internet of Things Applications with the Raspberry Pi

Commercial and Industrial Internet of Things Applications with the Raspberry Pi

Use the Raspberry Pi and modern computing techniques to build industrial Internet of Things systems. Principles and theoretical aspects of IoT technologies combine with hands-on projects leading to detailed descriptions of several industrial IoT applications.This book presents real-life IoT applications based on the Raspberry Pi, beyond the relatively simplistic demos built for educational purposes or hobbyists. You'll make the transition from tinkering with a couple of sensors and simple devices to building fully developed products for commercial use and industrial systems. You'll also work with sensors and actuators, web technologies used for communications in IoT networks, and the large-scale deployment of IoT software solutions. And see how to design these systems as well as maintain them long term.See the Raspberry Pi in a new light that highlights the true industrial potential of the device. Move beyond connecting an LED to the Raspberry Pi and making it blink to actually managing a network of IoT devices.WHAT YOU'LL LEARN* Design industrial and large scale professional Internet of Things systems* Extend your basic IoT knowledge by building advanced products* Learn how large scale IoT systems are deployed and maintainedWHO THIS BOOK IS FORAdvanced hobbyists who want to stretch their abilities into the professional sector. Also professional industrial engineers looking for low-cost solutions to basic IoT needs.IOANA CULIC is a PhD candidate in the field of Internet of Things and the co-founder of Wyliodrin, a company that offers educational and industrial IoT solutions. Wyliodrin’s target is to offer educational platforms for IoT. They have developed a large set of written and video educational materials to complement their solutions. Much of this material was coordinated and contributed to by Ioana.ALEXANDRU RADOVICIis the CTO of Wyliodrin and earned a PhD in mobile technologies from University Politehnica of Bucharest, where he now works as an associate professor. He has taught and prepared materials for advanced IT classes. He has contributed to several books and articles on how to build Internet of Things applications.CRISTIAN RUSU isin charge of research and development within Wyliodrin and holds a PhD in signal processing from the University Politehnica of Bucharest. He has held research and teaching positions at the University Politehnica of Bucharest, the IMT Institute for Advanced Studies in Lucca, Italy and the University of Vigo, Spain.INDUSTRIAL INTERNET OF THINGS APPLICATIONS WITH THE RASPBERRY PIChapter 1: Architecture of Industrial IoT SystemsChapter 2: Large-scale deployment and maintainanceChapter 3: Smart digital signage systemChapter 4: Smart soda dispenser systemChapter 5: Smart ads systemChapter 6: Energy consumption monitoringChapter 7: Solar power plant control systemChapter 8: Smart parking

Regulärer Preis: 46,99 €
Produktbild für Arduino Software Internals

Arduino Software Internals

It’s not enough to just build your Arduino projects; it’s time to actually learn how things work! This book will take you through not only how to use the Arduino software and hardware, but more importantly show you how it all works and how the software relates to the hardware.Arduino Software Internals takes a detailed dive into the Arduino environment. We’ll cover the Arduino language, hardware features, and how makers can finally ease themselves away from the hand holding of the Arduino environment and move towards coding in plain AVR C++ and talk to the microcontroller in its native language.What You’ll Learn:* How the Arduino Language interfaces with the hardware, as well as how it actually works in C++;* How the compilation system works, and how kit can be altered to suit personal requirements;* A small amount of AVR Assembly Language;* Exactly how to set up and use the various hardware features of the AVR without needing to try and decode the data sheets – which are often bug ridden and unclear;* Alternatives to the Arduino IDE which might give them a better workflow;* How to build their own Arduino clone from scratch.Who This Book Is For:No expertise is required for this book! All you need is an interest in learning about what you’re making with Arduinos and how they work. This book is also useful for those looking to understand the AVR microcontroller used in the Arduino boards. In other words, all Makers are welcome! Norman Dunbar is an Oracle Database Administrator. Norman has had a long running relationship with Electronics since childhood and computers since the late 1970s, and the Arduino was a perfect marriage of the two interests. With a love of learning new things, examining and explaining the Arduino Language and the hardware became a bit of a hobby, and as piles of notes expanded, Norman has now decided to publish his work.1. Introduction1.1. Arduino Installation Paths1.2. Coding Style1.3. The Arduino Language1.4. Coming UpPart 1 - Arduino Compilation2. Preferences.txt2.1. Using an ICSP For All Uploads2.2. Change the Action of Home and End Keys2.3. Setting Tab Stops3. Globally Defined Paths4. Boards.Txt4.1. Arduino Uno Example5. Platform.txt5.1. Build Recipes5.2. Pre and Post Build Hooks6. Programmers.txt7. Compiling a Sketch7.1. Arduino Sketch (*.ino) Preprocessing7.2. Arduino Sketch (*.ino) Build8. The Arduino main() Function9. Header File Arduino.h9.1. Header File avr\pgmspace.h9.2. Header File avr\io.h9.3. Header File avr\interrupt.h9.4. Header File binary.h9.5. Header File WCharacter.h9.6. Header File WString.h9.7. Header File HardwareSerial.h9.8. Header File USBAPI.h9.9. Header File pins_arduino.h10. The init() Function10.1. Enabling the Global Interrupt Flag10.2. Enabling Timer 010.3. Timer 0 Overflow Interrupt10.4. Enabling Timer 1 and Timer 210.5. Initialising the Analogue to Digital Converter10.6. Disabling the USARTPart 2 - Arduino Language Reference11. Digital Input/Output11.1. Function pinMode()11.2. Function digitalRead()11.3. Function digitalWrite()12. Analogue Input/Output12.1. Function analogReference()12.2. Function analogRead()12.3. Function analogWrite()13. Advanced Input/Output13.1. Function tone()13.2. Function noTone()13.3. Function pulseIn()13.4. Function pulseInLong()13.5. Function shiftIn()13.6. Function shiftOut()14. Time14.1. Function delay()14.2. Function delayMicroseconds()14.3. Function micros()14.4. Function millis()15. Interrupts15.1. Function interrupts()15.2. Function noInterrupts()15.3. Function attachInterrupt()15.4. Function detachInterrupt()16. Bits and Bobs16.1. Function bit()16.2. Function bitClear()16.3. Function bitRead()16.4. Function bitSet()16.5. Function bitWrite()16.6. Function highByte()16.7. Function lowByte()16.8. Function sbi()16.9. Function cbi()17. Arduino Classes17.1. The Print Class17.2. The Printable Class17.3. The Stream Class17.4. The HardwareSerial Class17.5. The String ClassPart 3 - Converting to the AVR Language18. Introduction19. Numbering Systems.19.1. Decimal Numbering19.2. Binary Numbering19.3. Hexadecimal Numbering20. Binary Logical Operations20.1. NOT20.2. AND20.3. OR20.4. XOR21. Using the Arduino IDE21.1. Replacing pinMode()21.2. Replacing digitalWrite()21.3. Replacing digitalRead()Part 4 - Alternatives to the Arduino IDE22. PlatformIO22.1. Installing PlatformIO Core22.2. Testing PlatformIO Core22.3. PlatformIO in an IDE22.4. PlatformIO Home23. Arduino Command Line23.1. Obtaining the Arduino-CLI23.2. Installing23.3. Installing Platforms23.4. Configuring the CLI23.5. Creating Sketches23.6. Selecting a Board23.7. Compiling Sketches23.8. Uploading Sketches23.9. Getting Help23.10. Serial Usage23.11. FinallyPart 5 - About the ATMega328P24. ATmega328P Fuses24.1. Low Fuse Bits24.2. Low Fuse Factory Default24.3. Arduino Low Fuse Settings24.4. High Fuse Bits24.5. High Fuse Factory Default24.6. Arduino High Fuse Settings24.7. Extended Fuse Bits24.8. Extended Fuse Factory Default24.9. Arduino Extended Fuse Settings25. Brown Out Detection26. The Watchdog Timer26.1. WDT Modes of Operation26.2. Amended Sketch setup() function26.3. WDT Reset26.4. The WDT Control Register26.5. Enabling the WDT26.6. Setting the WDT Timeout Period26.7. Disabling the WDT27. The Analogue Comparator27.1. Reference Voltage27.2. Sampled Voltage27.3. Digital Input27.4. Enable the Analogue Comparator27.5. Select Reference Voltage Source27.6. Select Sampled Voltage Source Pin27.7. Sampled Voltage Summary27.8. Comparator Outputs27.9. Comparator Example28. Timer/Counters28.1. Timer/Counter 0 (8 bits)28.2. Timer/Counter 1 (8, 9, 10 and/or 16 bits)28.3. Timer/Counter 2 (8 bits)28.4. Timer/Counter Clock Sources28.5. Timer/Counter Operating Modes28.6. PWM Modes - Duty Cycle28.7. Too Much to Remember? Try AVRAssist29. Counting29.1. Setting External Counting29.2. Example Sketch30. Timer 1 Input Capture Unit31. Putting the AVR to Sleep31.1. Sleep Modes 23931.2. Analogue Comparator 24632. Power Reduction32.1. Power Consumption32.2. Power Reduction Register32.3. Saving Arduino Power32.4. The Power Functions33. Analogue to Digital Converter (ADC)33.1. ADC Setup and Initiation33.2. Noise Reduction33.3. Temperature Measurement33.4. ADC Example34. USART34.1. Baud Rates34.2. What is a Frame?34.3. Parity34.4. Interrupts34.5. Initialising the USART34.6. USART Checks34.7. USART ExampleAppendices

Regulärer Preis: 56,99 €
Produktbild für Der PC als Medienzentrale

Der PC als Medienzentrale

Dieses Buch ist ein Kompendium für die Nutzung eines PCs als Medienzentrale. Für verschiedene Betriebssysteme werden Schritt-für-Schritt-Anleitungen zur Verfügung gestellt, die dem Leser zeigen, wie eine Medienzentrale aufgebaut werden kann. Dies beinhaltet u.a. die Themen Multimedia und Fernsehen, produktive Tools, Server, Datenbanken und Spiele.RÜDIGER FOLLMANN studierte Elektrotechnik an der RWTH Aachen. 1995 begann er seine Arbeit als wissenschaftlicher Mitarbeiter im Bereich Messtechnik bei der IMST GmbH - einem Design- und Entwicklungshaus für elektronische Komponenten. Nach seiner Promotion leitete er hier zunächst das Team MMIC-Design, welches sich mit der Entwicklung von GaAs-und SiGe-Schaltungen beschäftigt. Anschließend war er als Teamleiter 'HF-Komponenten' für den Ausbau des Schaltungs-Design-Bereichs verantwortlich.Heute ist Follmann in seiner Funktion als 'Vice President' für die Akquisition von Großprojekten, technische Beratung sowie die Durchführung internationaler Seminare zuständig.Auswahl eines PCs und Zusammenstellen der Komponenten nach Bedarf.-Installation von MacOS (Hackintosh) und Praxistest (iMovie, Fortnite).-Installation und Konfiguration von Ubuntu (Triple Boot mit MacOS und Windows, …).-Netzwerke und Funktionen (SAMBA, Drucken, …).-Spiele und Emulatoren (Wii U, Switch, N64, …).-LINUX nutzen (Programme, Quelltexte, Grundlagen, …).-Fernsehen und Videos (VDR, Kodi, Amazon Prime, Ambilight, …).-Server und Datenbanken (Webseiten, CMS, Philips Hue, DLNA, …).-Textverarbeitung im Vergleich (Office Tools, LaTeX, Microsoft-Programme unter LINUX, …).

Regulärer Preis: 54,99 €
Produktbild für Real-Time IoT Imaging with Deep Neural Networks

Real-Time IoT Imaging with Deep Neural Networks

This book shows you how to build real-time image processing systems all the way through to house automation. Find out how you can develop a system based on small 32-bit ARM processors that gives you complete control through voice commands.Real-time image processing systems are utilized in a wide variety of applications, such as in traffic monitoring systems, medical image processing, and biometric security systems. In Real-Time IoT Imaging with Deep Neural Networks, you will learn how to make use of the best DNN models to detect object in images using Java and a wrapper for OpenCV. Take a closer look at how Java scripting works on the Raspberry Pi while preparing your Visual Studio code for remote programming. You will also gain insights on image and video scripting. Author Nicolas Modrzyk shows you how to use the Rhasspy voice platform to add a powerful voice assistant and completely run and control your Raspberry Pi from your computer.To get your voice intents for house automation ready, you will explore how Java connects to the MQTT and handles parametrized Rhasspy voice commands. With your voice-controlled system ready for operation, you will be able to perform simple tasks such as detecting cats, people, and coffee pots in your selected environment. Privacy and freedom are essential, so priority is given to using open source software and an on-device voice environment where you have full control of your data and video streams. Your voice commands are your own—and just your own.With recent advancements in the Internet of Things and machine learning, cutting edge image processing systems provide complete process automation. This practical book teaches you to build such a system, giving you complete control with minimal effort.WHAT YOU WILL LEARN:* Show mastery by creating OpenCV filters* Execute a YOLO DNN model for image detection* Apply the best Java scripting on Raspberry Pi 4* Prepare your setup for real-time remote programming* Use the Rhasspy voice platform for handling voice commands and enhancing your house automation setupWHO THIS BOOK IS FOR:Engineers, and Hobbyists wanting to use their favorite JVM to run Object Detection and Networks on a Raspberry PiNicolas Modrzyk has over 15 years of IT experience in Asia, Europe, and the United States. He is currently the CTO of an international consulting company in Tokyo, Japan. An author of four other published books, he mostly focuses on the Clojure language and expressive code. When not bringing new ideas to customers, he spends time with his two fantastic daughters Mei and Manon, and playing live music internationally.CHAPTER 1: TRAINING A DNN NETWORKReaders will use Java for basic functions and develop a custom DNN model. They will learn to their models to detect images and videos* Using JavaCV to run some basic detection* using a YOLO DNN on a picture* using a YOLO DNN on a videoCHAPTER 2: DEVELOPING AND RUNNING ON THE RASPBERRY PIReaders will learn to script Java/Clojure on the Raspberry Pi. They will also learn how image and video scripting can be achieved.* Is the Raspberry Pi fast enough for the JVM?* Preparing visual studio code for remote programming* Clojure scripting on the Raspberry Pi* Image scripting on the Raspberry Pi* Video scripting on the Raspberry Pi CHAPTER 3: SNIPS VOICE PLATFORMReaders will be introduced to the Snips video platform for creating their personal voice assistant. They will also learn more about the Sam CLI for controlling the Raspberry Pi from their computers.* Why Snips?* Preparing the Snips Pi* Connecting using Sam, testing microphone and speaker

Regulärer Preis: 36,99 €
Produktbild für Teach Yourself VISUALLY iPhone 11, 11Pro, and 11 Pro Max

Teach Yourself VISUALLY iPhone 11, 11Pro, and 11 Pro Max

KNOW YOUR NEW IPHONE 11, 11 PRO, AND 11 PRO MAX FROM THE INSIDE-OUT WITH 900 COLOR SCREEN SHOTS!Teach Yourself VISUALLY iPhone is your ultimate guide to getting the most out of your iPhone! Apple's graphics-driven iOS is perfect for visual learners, so this book uses a visual approach to show you everything you need to know to get up and running—and much more. Full-color screen shots walk you step-by-step through setup, customization, and everything your iPhone can do. Whether you are new to the iPhone or have just upgraded to the 11, 11 Pro, or 11 Pro Max, this book helps you discover your phone's full functionality and newest capabilities. Stay in touch by phone, text, email, FaceTime Audio or FaceTime Video calls, or social media; download and enjoy books, music, movies, and more; take, edit, and manage photos; track your health, fitness, and habits; organize your schedule, your contacts, and your commitments; and much more!The iPhone is designed to be user-friendly, attractive, and functional. But it is capable of so much more than you think—don't you want to explore the possibilities? This book walks you through iOS 13 visually to help you stay in touch, get things done, and have some fun while you're at it!* Get to know iOS 13 with 900 full-color screen shots* Master the iPhone's basic functions and learn the latest features* Customize your iPhone to suit your needs and get optimal performance* Find the apps and services that can make your life easierThe iPhone you hold in your hand represents the pinnacle of mobile technology and is a masterpiece of industrial design. Once you get to know it, you'll never be without it. Teach Yourself VISUALLY iPhone is your personal map for exploring your new tech companion.GUY HART-DAVIS (Barnard Castle, UK) is the author of more than 100 computing books, including Teach Yourself VISUALLY iPhone 7, Teach Yourself VISUALLY MacBook 3rd Edition, and Teach Yourself VISUALLY Android 2nd Edition. He also writes about PCs, Windows, Linux, and VBA.

Regulärer Preis: 16,99 €
Produktbild für Beginning Game Programming with Pygame Zero

Beginning Game Programming with Pygame Zero

Make fun games while learning to code. Focused on making games rather than teaching programming theory, in this book you're more likely to see code on how gravity affects a missiles trajectory instead of the most efficient way to search through data. Even then the code is kept simple as games should be about playability rather than complex physics. There are links to the official documentation when you need to lookup information that isn't included in the book.Start with a simple text based game to grasp the basics of programming in Python. Then moves on to creating simple graphical games in Pygame Zero. Not only will you learn object oriented programming to make it easier to make more complex games, you'll also work to create your own graphics and sounds. 3D graphics are a little complex. So we focus on 2D games, including spins on some classic boardgames and arcade games. All the games are designed to run on a Raspberry Pi. They will work on any Raspberry Pi, but will also work on any other computer that supports Python 3 along with Pygame Zero.The games you make will be playable and hopefully fun to play. And by the end of the book, you can step beyond the provided source code to develop your own unique games and programs.WHAT YOU'LL LEARN* Code in Python* Generate sounds and graphics for 2D games* Grasp object oriented programming with Pygame Zero WHO THIS BOOK IS FORBeginning game developers interested in working with low-cost and easy-to-learn solutions like Pygame Zero and the Raspberry Pi.STEWART WATKISS is a keen maker, programmer, and author of Learn Electronics with Raspberry Pi. He studied at the University of Hull, where he earned a master’s degree in electronic engineering and more recently with Georgia Institute of Technlogy where he earned a master’s degree in computer science.Stewart also volunteers as a STEM Ambassador, helping teach programming and physical computer to school children and at Raspberry Pi events. He has created a number of resources using Pygame Zero which he makes available on his web site (www.penguintutor.com).Chapter 01 - Game Programming, Introduction to Concepts and Python / Pygame ZeroChapter 02 - Getting Started with Python* Text based joke* Text based quizChapter 03 - Pygame Zero* Compass GameChapter 04 - Changing Game Play(Expands on the basic game in the previous chapter to make it more entertaining)* Compass Game (improved)Chapter 05 - Calculating Trajectory and Creating Dynamic Worlds* Tank warsChapter 06 - Sound Effects* Sounds* Music* Audacity* SonicPiChapter 07 - Designing Your Own Graphics (Sprites)* Draw* Gimp* BlenderChapter 08 - Object Oriented Programming and Using a Mouse* Memory gameChapter 09 - Color and Customizing Graphics* Adding color (look at color through bouncing balls)* Customize Graphics (based on svg to png conversion) - used in compass gameChapter 10 - Adding Artificial Intelligence* Possibly improving on previous games

Regulärer Preis: 56,99 €
Produktbild für Advanced Robotic Vehicles Programming

Advanced Robotic Vehicles Programming

Learn how to program robotic vehicles with ardupilot libraries and pixhawk autopilot, both of which are open source technologies with a global scope. This book is focused on quadcopters but the knowledge is easily extendable to three-dimensional vehicles such as drones, submarines, and rovers.Pixhawk and the ardupilot libraries have grown dramatically in popularity due to the fact that the hardware and software offer a real-time task scheduler, huge data processing capabilities, interconnectivity, low power consumption, and a global developer support.This book shows you how take your robotic programming skills to the next level. From hardware to software, Advanced Robotic Vehicles Programming links theory with practice in the development of unmanned vehicles. By the end of this book, you’ll learn the pixhawk software and ardupilot libraries to develop your own autonomous vehicles.WHAT YOU'LL LEARN* Model and implement elementary controls in any unmanned vehicle* Select hardware and software components during the design process of an unmanned vehicle* Use other compatible hardware and software development packagesUnderstand popular scientific and technical nomenclature in the field * Identify relevant complexities and processes for the operation of an unmanned vehicleWHO THIS BOOK IS FORUndergraduate and graduate students, researchers, makers, hobbyists, and those who want to go beyond basic programming of an Arduino for any kind of robotic vehicle.Julio Mendoza-Mendoza earned his computing doctoral degree at CIC IPN in 2016, where he specialized in underactuated robotics, UAS, and intelligent and nonlinear control. He also earned his advanced-technologies master degree and mechatronics-engineering bachelor at UPIITA IPN, in 2011 and 2008 respectively. Currently, Julio is working on 5 patents related to his research field and developing his flying serial-robot manipulator theory at FI UNAM through his postdoctoral 2017 DGAPA grant.V. J. Gonzalez-Villela received his B.Eng. degree in Mechanical and Electrical Engineering and the M.Eng. degree in Electrical Engineering in 1987 and 1993, respectively, from the National Autonomous University of Mexico (UNAM), and a Ph.D. degree in Kinematics, Dynamics, and Nonlinear Systems applied to Mobile Robot Modelling and Control from Loughborough University, Loughborough, UK, in 2006. He is currently a Titular Professor in the Department of Mechatronics Engineering, UNAM. His research focuses on Mobile, Hybrid and Adaptive Robots, and Artificial Intuition.Part 1: IntroductionChapter 1: Hardware and Software Description• Definition of Autopilot• Autopilot classification by its programming method GUI vs SDK• Types of SDK• Pixhawk Autopilot (hardware)• Clones vs Originals• Commercial autopilot vs owndesign• Ardupilot Libraries (software)• Compatibilities and other similar projects• Confusion between hardware and software?Chapter 2: Ardupilot Working Environment• File types and Ardupilot libraries• Use of specific data types• Description and flow of the programs to be used• Loading custom codes to the pixhawk using mission planner• Making new projects using the added eclipse interface• Identification of errors• Is it possible to use the Arduino directly with the APM libraries?Chapter 3: Recap and Definitions• Description of the auxiliary components• Computational efficiency vs mathematical equality• Working with variables, functions, modules and objects?• Getter and setter concept• Concept of orientation and position• Difference between installation and coding• Usual parts of an Ardupilot code• Usual models of programming on Ardupilot codesReferences and suggested websites of Part 1Part 2: Sequential ModeChapter 4: Basic Input and Output Operations• About the header• About the setup• Writing to terminal• Terminal reading• Reading radios• Reading of orientation and position internal sensors• Reading of external position sensors (GPS)• Reading analog external sensors• Signal filtering• Reading and writing of external digital equipment• Battery reading• Use of visual alerts through the onboard LEDChapter 5: Advanced Operations: Serial Communications, Data Storage, Motion Units and Basis of Time Management• Wired and wireless serial communication• Interface with development cards• Writing to brushless motors• Code optimization• Writing to brushed motors• Use of stepper motors• Use of servomotors for auxiliary applications• Summary of the control of various compatible motors• Storage and use of flight data• Using the MissionPlanner GUI to plot flight data• Use of timeChapter 6: Application to Quadcopter Drone Control with a Smooth Flight Mode:• Modeling and Basic Control of a Multirotor with Application CodeReferences and suggested websites of Part 2Part 3: Real Time ModeChapter 7: Real Time Working Environment• Notions of modular programming• Description of the scheduler• Usual parts of an ardupilot code in parallel mode• Measurement of the time of execution of a taskChapter 8: Compendium of the Previous Chapters in Real Time Mode with Application CodeReferences and suggested websites of Part 3Appendices• Libraries installation• Comparison of commands with other SDKs• Thrust vectoring• Omnidirectionality• Methods of extended power• Extended header code• Extended setup code• Summary of the design of a quadcopter

Regulärer Preis: 56,99 €
Sale
Produktbild für 222 Anleitungen für den Raspberry Pi 4

222 Anleitungen für den Raspberry Pi 4

Raspbian, Office, Spiele, Programmierung und Elektronikprojekte - Dieses Buch enthält 222 Lösungen, die im Umgang mit dem Minicomputer Raspberry Pi 4 unabdingbar sind.In diesem Buch geht es um: • Betriebssystem installieren• Raspbian von A bis Z• Wichtige Kommandozeilenbefehle• Das unterscheidet die verschiedenen Raspberry-Pi-Modelle• LibreOffice auf dem Raspberry• Cloud-Speicher auf dem Raspberry Pi nutzen• E-Mails mit Thunderbird• KODI-Mediacenter mit LibreELEC• Das Smartphone als Fernbedienung für KODI• Die Hardware verstehen und erweitern• Festplatteneinrichtung mit GParted• WLAN einrichten• Raspberry Pi als Server einsetzen• Fotogalerie auf dem Webserver• Pi-Hole einrichten und administieren• Elektronik-Projekte via GPIO• Programmieren in Scratch und Python• Kultspiel Flappy Bird in Scratch nachbauen

Regulärer Preis: 20,00 €
Sale
Produktbild für Erste Schritte mit dem Raspberry Pi

Erste Schritte mit dem Raspberry Pi

Egal mit welchem Raspberry Pi Sie starten wollen, dieser Ratgeber macht den Einstieg in das Raspian-Betriebssystem und die Python-Programmierung extrem einfach. Von der der ersten Installation und Konfiguration bis zum Erstellen eines Spielwürfels bis zur Pi Camera.Inhalt:• Das Raspian-Betriebssystem• Speicherkarte für Raspian vorbereiten• Das brauchen Sie an Zubehör• Vorinstallierte Programme• Keine Angst vor Linux• Wichtige Kommandozeilenbefehle• Notebook-Tastatur & -Display für den Raspberry Pi nutzen• Programmieren mit Python• Python-Flashcards nutzen• Spielwürfel mit PyGame programmieren• KI – Labyrinthe bauen und auflösen• Elektronik über GPIO steuern• LED-Blinkmuster und Lauflichter• Sensorkontakte am GPIO-Port• Intuitiv programmieren mit Scratch• Fußgängerampel mit Scratch steuern• Offizielle Hardware-Erweiterungen• Pi Camera, Sense HAT, PoE HAT

Regulärer Preis: 15,00 €
Produktbild für Die Computerwerkstatt

Die Computerwerkstatt

Klaus Dembowski geht gleichermaßen auf PCs, Notebooks, Tablets und Smartphones (die unter dem Begriff Computer zusammengefasst werden) ein. Unterschiede und Gemeinsamkeiten der Gerätetypen erläutert er im ersten Teil des Buchs, »Geräteaufbau und Komponenten«, und liefert viel Hintergrundwissen zur Entstehungsgeschichte der Techniken. Im zweiten Teil widmet sich der Autor dem BIOS sowie den verschiedenen Betriebssystemen und beantwortet Fragen zu ihrer Installation, Einrichtung und Wartung. Die Anleitungen, darunter ein besonderer Abschnitt zur Vernetzung, sind so gehalten, dass der Leser sie versionsunabhängig anwenden kann. »Reparieren und Aufrüsten«, der dritte Teil des Buchs, wendet die im ersten Teil vermittelten Informationen in der Praxis an, und gibt darüber hinaus unverzichtbare Tipps zur Erweiterung bestehender Konfigurationen. Auf einem herausnehmbaren Poster sind Fehlersuchbäume für die häufigsten Problemfälle zusammengestellt, die Sie mit den Anleitungen im Buch effizient lösen können. Im letzten Teil werden Selbstbauvorschläge gezeigt, damit sich Hardware, die zu schade zum Wegwerfen ist, neu einsetzen lässt. Zu den Bauprojekten zählt der Umbau von Handys zum Fernschalter, die Konstruktion eines Netzwerktesters oder der Aufbau und die Programmierung von Interfaces für eigene Mess- und Steuerschaltungen. Inklusive großem Farbposter: Fehlersuchbäume mit Lösungen für die häufigsten Hardware-Probleme Zielgruppe: Engagierte Bastler Entwickler und Studenten Computer-Anwender Techniker Autor / Autorin: Klaus Dembowski hat Nachrichtentechnik studiert und ist an der Technischen Universität Hamburg-Harburg tätig. Seine Schwerpunkte liegen in den Bereichen Mikrocontrollerentwicklung, Hard- und Software für Mikrosysteme sowie Energy Harvesting. Bei der Vermittlung aktueller Inhalte aus den Bereichen der Elektronik sowie der Informations- und Netzwerktechnik kann er auf eine langjährige Erfahrung als Autor und Dozent zurückgreifen. Die mittlerweile über 40 erschienenen Buchtitel zeichnen sich ebenso wie die regelmäßig erscheinenden Zeitschriftveröffentlichungen, Seminare und Vorträge durch eine verständliche und praxisorientierte Darstellung auch komplexer Sachverhalte aus.

Regulärer Preis: 39,90 €