3 Gordon Drive, P.O.Box 1347 Rockland, Maine 04841 U.S.A.
Find Tools for Your Chip


 

© 2004 Avocet Systems, Inc.
Call Us Today at 207-596-7766 ("Picton Press")
Avocet Systems, Inc. : The Complete Solution for Embedded Systems Development Tools

Article Index

Click on one of the following to get to the appropriate list of articles you'd like to look at.


Philosophical Articles
  • Magic - an article about our society's inability to embrace the new technologies we techies create.
  • When the Thrill is Gone - Will you be an engineer forever? Think this through. Life has a funny way of changing.... just when you thought you had it all figured out.
  • Non-Degreed Engineers - How important is a degree in this industry?
  • The Olden Days - The engineering dark ages still haunt us.
  • Core Memory - A story about the ancient past of computers.

Embedded Systems Articles
  • Prototyping - Prototyping is a critical skill - in hardware and software. This is part 2 of a two part series on the skill.
  • Prototyping - Prototyping is a critical skill - in hardware and software. This is part 1 of a two part series on the skill.
  • Java - Ready for Prime Time? - Is Java really the next silver bullet for embedded programming?
  • Guardian Angels - Every project needs a guardian angel, someone who watches over the code.
  • Debugging ISRs - Part 1 - This is part 1 of a two part series on debugging interrupt service routines.
  • Debugging ISRs - Part 2 - This is part 2 of a two part series on debugging interrupt service routines.
  • Built-In Diagnostics - No system is useful unless it can be built in production. Add simple diagnostics.
  • Tool Quest - Decent tools have less than zero cost... if you make more than a dollar an hour.
  • Prototyping with SMT - One person's experience with using SMT devices on prototypes.
  • Tricks of the Trade - Troubleshooting hints and kinks.
  • Troubleshooting 101 - Troubleshooting is more art than science. Here's some ideas.
  • An Embedded Library - More books; reading improves your mind!
  • Banking Basics - Ideas to help you expand your system's address space.
  • What Happens at 100Mhz? - At very high speeds we'll have to change debugging strategies. Here's some ideas.
  • Living to Learn - Engineers need a philosophy of lifelong learning. Here's a few books we recommend.
  • Small is Beautiful - Small Processors dominate this industry. This is why.
  • Serial Data Transmission - Here's a primer to using UARTs in embedded systems.
  • Thanks for the Memories - Here's some advice about testing RAM and ROMs in your embedded system.
  • Read That Datasheet - Never assume a part has certain electrical or timing parameters. Often little surprises lurk. Did you know that virtually all microprocessors do not accept TTL levels for clock and reset?
  • Drawing Systems - Most small companies never organize their drawings in a logical fashion, and instead all-too-often rely on memory when building production units. Here's an easy system that will get your drawings in order.
  • The Case of the Crashing 68000 - No, this is not about 68000s specifically. It's a detective story about dealing with erratic operation of any embedded system.
  • Computing CRCs in Parallel - How to use a PLD to figure CRCs in a single clock cycle.
  • The Organized Bench - Lab pigs beware! This is your 12 step plan to recovery.
  • Resistors - Be careful how you design resistors and R-packs into your digital circuits. This article tells how.
  • Troubleshooting - Troubleshooting is a mental exercise requiring a firm grasp of the technical concepts involved, along with the right philosophy. This article describes Softaid's philosophy (i.e., the right one!).
  • Boolean Algebra - Do you get the boolean blues? Those hardware weenies keep chatting about DeMorgan, truth and evil... and you're feeling left out? Read on.
  • Bus Cycles - Software folks need to understand how a microprocessor handles data on its busses. Here's the short intro.
  • Chaotic Systems - The new science of chaos is fascinating in its own right, and may have important implications for designers of embedded systems.
  • Coding ISRs - Handling interrupts is tricky at best. Here's a few suggestions.
  • Data Compression - Transmission bandwidth is always limited (hey... if you're reading this over a 28.8kb link, you get the picture!). Data compression can help a lot.
  • Convolutions - Convolutions are a really cool way to smooth and even differentiate data. You gotta check this out.
  • DMA - Too many of us don't really understand DMA. Read on...
  • An Embedded Infobahn - We electronics people are the last to take advantage of the miracles we create. It's time the embedded designers of the world get into the Internet to start communicating more, and not working so damn hard!
  • What Goes In Must Come Out - FIFOs are hardware analogs of a sort of reverse stack. Here's how they work.
  • The C Blues - C is still a long way from what we embedded folks need in a language. Here's some ideas and complaints.
  • Interrupt Predictability - How do you know if your ISRs will be fast enough?
  • Embedded Lingos - How do you pick a language? Here's some thoughts about C++
  • Built-in Debuggers - More and more processors have built-in debugging resources. Here's a look at what features they offer.
  • Reentrancy - Most real time systems require a certain amount of reentrant code, yet too many programmers have no idea what this entails
  • An OS in a Can - Using a commercial RTOS will save big bucks... and is rather fun.
  • Oscilloscope Upate - The wise embedded engineer will be a master of many tools. The scope is one of the most important.
  • Self Calibrating Systems - Here's an algorithm to make an instrument read correct values without ever manually setting gain and offset coefficients.
  • Programming Style - Programming style is just as important as any other parameter that goes into a coding task. Here are a few ideas, rants, and raves.
  • The Future of Embedded Programming - Here's a set of prognostications about programming in the future. Read 'em and weep.
  • The ICE Blues - Using an emulator? Here are some gotchas to watch out for.
  • The Zen of Diagnostics - part 1 of a two part series on embedded diagnostics
  • The Tao of Diagnostics - part 2 of a two part series on embedded diagnostics
  • The Z80 Lives! - The Z80 and its derivatives continues to be tremendously successful. Here's the current state of the art.
  • The Perils of NMI - NMI is a critical resource, yet all too often it's misused.
  • Using the Z180 MMU - Extend your Z80 address spaces to 1 Mb with the Z180.
  • Understand Your User's Needs - Understand your user's needs; only then can you be sure the code is useful, as well as correct.
  • Pipelines and Prefetchers - All modern processors use pipelines and/or prefetchers to increase performance. Here's how they work.
  • Embedded Trig - Here's some algorithms to make it easier to compute complex trig functions.
  • VCO Based Sensors - VCOs can form a clever way to digitize analog data.
  • Bit Banging - You don't need a UART to send and receive serial data. Software alone suffices. Here's the code.
  • Smoothing Digital Inputs - There's a lot of way ways to debounce digital inputs. A few are listed in this article.
  • Speed Kills - Data comm over cheap serial links might be more cost effective than other, faster, options.
  • Green Motor Control - As a designer, you can make decisions that greatly impact the environment. Here's how to save energy.
  • Memory as a Device - Clever use of memory devices can really enhance your products.
  • Huge Data on the Z180 - The Z180's banking scheme is great for handling code; data is a bit more complex. Here's example code.
  • Position Encoders - Encoders transmit position or frequency info to the computer. Here's a few ways to make life with them easier.
  • 386 Protected Mode - Part 1 of a two part article about protected mode.
  • 386 Protected Mode - Part 2 of a two part article about protected mode
  • Picking a CPU - How do you decide what CPU to use? Here's some factors to consider.
  • Taming Analog Noise - Here's a few ways to use smart software to reduce the amount of noise in your system.
  • Perform or Perish - How do you deal with software performance problems?
  • Refreshing Software - Refresh is yet one more thing that software can, in some situation, replace.
  • Relocatable Code - Some embedded code must run at more than on address.
  • C for Microcontrollers - This article discusses the state of C for controllers circa 1990.

Business Articles
  • Business 101 - You can't be an effective engineer unless you understand how your engineering role impacts the business as a whole. Step back, get a new zeitgeist, and expand your horizons a bit.
  • I, Consultant (part 1) - Here's how to get rich quick: quit your job, become a consultant, and charge $90/hour. NOT!
  • I, Consultant (part 2) - This is a follow-on the the previous article. Stay tuned for part 3.
  • Survival of the Fittest - Do you work hard? How about smart? This article might make you mad, but hopefully it's start some ideas flowing. Feel free to send flames to us via email!