He delves into some of the most common options, such as adding a shift register, a multiplexer, or an I/O expander, along with a few less conventional approaches. You could have as much I/O as your heart desires yet some approaches come with cost, size and development time tradeoffs.
It seems like microcontroller memory just gets bigger and bigger, and often, it doesn't make a significant dent in program space. When I mention this to the players in the firmware game that have been doing this for a while, they are quick to say how lucky we 'youngins' are to have limitless memory so that even the most inefficient code can get the job done right.
And they are correct! I seldom need to optimize my code for limited program space. For speed, yes, I do sometimes need to be sensitive to certain places in my program, but not for the entire program space. Instead, I can focus on abstracting my program such that it has multiple layers of files that nearly anyone can read without a hassle.
Even when I'm developing small microcontroller projects, I typically use only a small part of the memory, while still maintaining the price point the product is supposed to hit.
But for the amount of I/O, this is a completely different story.
In fact, I often find myself needing more digital and even analog inputs and outputs. Sure, I could just upsize and get a bigger microcontroller, but this is rarely the solution, because the microcontroller seems to be locked down.
هذه القصة مأخوذة من طبعة August 2024 من Circuit Cellar.
ابدأ النسخة التجريبية المجانية من Magzter GOLD لمدة 7 أيام للوصول إلى آلاف القصص المتميزة المنسقة وأكثر من 9,000 مجلة وصحيفة.
بالفعل مشترك ? تسجيل الدخول
هذه القصة مأخوذة من طبعة August 2024 من Circuit Cellar.
ابدأ النسخة التجريبية المجانية من Magzter GOLD لمدة 7 أيام للوصول إلى آلاف القصص المتميزة المنسقة وأكثر من 9,000 مجلة وصحيفة.
بالفعل مشترك? تسجيل الدخول
Bringing Cost-Effective, On-Device AI to Home Appliances - Sparse Weights and Interactions Negate GPUs and Cloud Computing
GPU silicon and cloud computing infrastructure are too costly for mass markets devices like refrigerators and washers. By deploying compute resources only to the necessary parts of AI inference, Sparse AI allows product designers to practically incorporate new AI features like natural voice interfaces into their consumer offerings without breaking the bank or electric bill surprises.
Thin Film Transistor LED Displays - Visual I/O
To add a resistive touchscreen on top of a TFT display, Jeff explores the technology offerings and libraries needed to accomplish his task. Calibrating the touchscreen's computed coordinates with the actual pixel coordinates of the display proved difficult with a modular framework but separating functions allows easy expansion.
Mobile APP Development with React Native
This month, Bob continues his series on mobile app development from an embedded designer's perspective. He programs a React Native app and he offers guidelines for picking a tutorial for React Native. He further explores how it handles concurrency and asynchronous programming. Bob expected a few nuances during the process but to say there were more than a few would be an understatement.
Power Analysis Over JTAG Ports: Hidden Debug Dangers - Block Side-Channel Analysis Attacks
Small changes in the phase of clock signals can encode power leakages. An attacker can use standard interfaces such as the JTAG port to drive clocks across targets, using them as measurement techniques for sidechannel analysis attacks despite limited physical access. This article demonstrates how you can test devices for vulnerability and how to modify devices to prevent attacks.
The Blues Wireless Notecard-LoRa
After having built a number of Wi-Fi IoT gadgets for the home, Brian became curious to see how LoRaWAN-based IoT devices would work. He decided to investigate the Notecard LoRa IoT modules made by Blues Wireless.
IoT Protection with MCU Security - Ward Off Attacks with Trust Zones, Encryption, Secure Keys and Tamper Detection
Security breaches jumped 107 percent as malevolent forces increasingly focused on IoT devices for side attacks, IP and data theft. Semiconductor vendors supplying on-chip cryptography, memory protection, unclonable technology, random number generation and other measures hope to shut the door on attackers.
Fill AI with Computer Vision - On the Leading Edge of Adoption in Industrial IoT
In just about any factory, production lines hum along like a symphonic orchestra. However, makers of artificial intelligence hardware are pushing transformative technology with mind-boggling productivity gains to unlock unrealized potential. Just how fast will AI seamlessly integrate into the means of production?
No Blues with Bluetooth! GATT Explained - Part 5 - Understanding Higher Protocol Layers Provides Interoperability Help
After exploring low-level layers of Bluetooth Low Energy in previous editions, and establishing connections in Part 4, Robert examines Attribute Protocol and Generic Attribute Profile or GATT in Part 5. These higher layer protocols provide developers with greater opportunity for interoperability with third-party applications or products.
Retro-style Miniature Sports Scoreboard - RGB LED Matrix and Raspberry Pi Provide In-Game Updates
This Cornell University graduate describes how he built a miniature, retrostyle scoreboard that pulls and displays live college and professional sports scores from the ESPN API-bringing the excitement of being at a sporting event to your living room. Pre-game information, in-game scores, and post-game results are displayed on a built-in PiTFT touchscreen.
Exploring Infrasound - Tornado Early Warning Detection Project Using Raspberry Pi Pico and a Python Supervisory Program
Inspired by the possibility of building an early warning system for tornadoes, Dev developed an infrasound detector. Tornadoes are rare in his area, but his detector found other infrasound activity using sensor circuitry based on a Raspberry Pi Pico, combined with a Python supervisory program that stores data on a computer for analysis.