We’ve worked our way from machine code up to language-dependent syntax, and hopefully, if you’ve stuck with us, those two terms make sense! Now, we move on to two final general software structures: functions and objects.
Up to this point in our series, we’ve intentionally kept things pretty broad. The fundamentals in the last two “levels” of software are relatively applicable across most languages, but now it’s time to get a bit more specific. And the first step to that is looking at the concept of software syntax.
Because of the ever-increasing power density in today's electronics thanks to the miniaturization of semiconductor packages and electronic systems and trends for thin-form consumer products, today’s electronics often have heat dissipation challenges that need to be resolved during design.
In our last article, we looked at two of the most basic concepts in software: variables and operators. Without these two integral parts of software “language” it’s nearly impossible to do anything. Now, we’re going to build on those simple concepts to see how they’re used to execute more complex functions and operations.
As I’m sure all of you know, software languages can be tricky to understand, especially when you consider the myriad of differences that separate each language from the others. But there are certain components that remain relatively consistent across most languages.
In the past decade, IoT, or the Internet of Things, has become increasingly prevalent in our day-to-day lives. Despite — or perhaps because of — the abundance of IoT devices commonly used in all sorts of places, it can often feel like a nebulous concept to define. So, what actually is the Internet of Things?
MILWAUKEE. In September, Rockwell Automation, Inc. released its Embedded Edge Compute module (EEC), which was designed with improved processing power and versatility for edge computing applications in mind. This module enables informational technology (IT)/operational technology (OT) convergence at the Logix level for more direct control monitoring.
TOKYO. Renesas Electronics recently introduced its RA8 Series of microcontrollers (MCUs), which provide a performance level of over 3000 CoreMark points, as well as deterministic, low latency, real-time operation. The series' implementation of the Arm Cortex-M85 processor enables 6.39 CoreMark/MHz performance, which will allow system designers to use the RA MCUs in applications that previously required microprocessors (MPUs). The new series is part of Renesas’ popular RA Family of MCUs based on Arm Cortex processors. Existing designs built for other RA devices can easily be ported to the new RA8 MCUs.
With the advent of the digital age, we daily put more and more of our lives into computers, the internet, and digital devices. This increase in digitization means the amount of value that can be found online is staggering. While this is a good thing in many ways, it also means that there is increased opportunity for bad actors to exploit this digital land of plenty.
Artificial intelligence (AI) is another one of those nebulous concepts that people throw around pretty often as an overarching umbrella term for a lot of things that, technically speaking, are not quite AI.
SAN JOSE, CALIFORNIA. QuickLogic Corporation and YorChip recently formed a strategic partnership to develop a lineup of FPGA chiplets that are designed with low cost and power consumption in mind, and are suitable for use in a range of application areas, including edge IoT and AI/ML.
Releasing your code is the final step in the software development process. Your project should be finished now, so it's time to release it into the wild.
SAN JOSE, CALIFORNIA. KIOXIA America, Inc. recently announced sampling of high-performing JEDEC e-MMC Ver. 5.1-compliant embedded flash memory products for consumer applications. The new devices are integrated with an updated version of KIOXIA’s BiCS FLASH 3D flash memory and a controller in a single package to help decrease processor workload and improve usability.
In our last article, we broke down the debugging process and its many woes, but also reviewed some tools and tips to make it as easy and painless as possible. Where debugging is the process of finding bugs that you know exist in your code, quality assurance testing is when you find bugs that you weren’t aware of.
We all know the suffering that is the debugging process. The hours spent banging your head against the desk… the sleepless nights spent screaming into the void over three lines of code… the moment when you realize that you sacrificed your firstborn child just to find out that you were missing a single semicolon. Coding is sometimes pain.
At this stage of your project, you’ve not only meticulously chosen and gathered materials, resources, tools, and an IDE that’s suitable for your project; but you’ve also created your pseudocode roadmap. And now, finally, it’s time to begin the real coding.
Every step in this process has built on knowing what the plan is for your code. But we have one final planning step that will help ensure you know exactly where you’re going when you do start writing code before it’s time to get into the trenches of writing code: pseudo-coding
In the last installment of this series, we reviewed the crucial steps of identifying and acquiring a development stack and tools that work best for you and your project’s needs. This time, we’ll be getting into choosing and configuring your development environment, and how the choices you’ve been making so far will help you determine what that looks like.
In this section, we’ll look at a new set of essential questions to ask yourself to determine what sort of workspace you’ll need to actually begin developing your software.
One thing every engineer — whether you’re a beginner, hobbyist, or pro — will need to do at some point is conceptualize a project. But what does that process look like from start to finish? Where do you even begin? Well, we’ve got you covered.