Intro

sine capture thumbnail

In the previous post code-oriented post, we got the DAC generating waveforms of reasonable frequencies.  Unfortunately, a DAC usually has a high output impedance, which will distort our signals if we place it in the wrong circuit.  Fortunately, we can make up for this using the on-board operational amplifiers …

more ...

schematic revisions

As always, there are some schematic errors.  This is one of the issues with highly integrated ICs, it is so easy to mix up the pins!  Maybe I should stop doing schematic and layout so late at night...

  • Vcap should be on pin 20, nothing else.  This error arose from …
more ...

Go back to the first post to get some background on this project!

Hardware Patch

Curve Tracer board pic

Just a couple of notes before we begin coding.  I was using the pinout for the "PIC24F" part on the datasheet whereas I should have been using the "PIC24FJ" part.  This will involve a small …

more ...

filter pic

Intro

You have all had to implement a moving average algorithm from time-to-time.  Moving averages make life easier, especially for mixed-signal applications in which you have a few extra A/D cycles available.

This article is intended for a fixed-point audience; however, the techniques shown can apply to floating point …

more ...

Intro

Interfacing INA139 with an ADC

There have been several times that I have had to sense current in an application for one reason or another.  I was working on just such an application recently when I thought to myself, "Hey, why don't I just make a quick solderable module and just always use that …

more ...

You may also be interested in our article regarding fixed-point math!

Intro

Division and modulo operations should be avoided on 8- and 16-bit hardware.  We would like to present you with a few techniques that can help you avoid the cycle-heavy division operations by replacing your modulo operators with bit …

more ...

Boards are on the way from OSH Park, along with parts from Digikey!

curve tracer board render

We should be able to start coding sometime next week - I always take the free shipping.

I will likely have them soldered up the day they get here since they have so few parts.

As mentioned in …

more ...

For a quick primer on libmathq15, check out How Fixed-Point Math Works.

Intro

Recently, I have been curious as to the accuracy of libmathq15 over
the entire sine range, which is 0 to 65535 for trigonometric functions and -32768 to 32767 for the standard Q1.15 functions.  Realizing quickly that …

more ...

If you haven't read the project documentation up to this point, you may want to go back to the beginning.

If you are ready to dive into the layout, then lets get started!

This will probably be a short post.  The layout process was fairly straightforward and resulted in a …

more ...

In the last post, we talked about the component selection.  In this post, we will make all connections of the schematic and fill in the details that we skipped.

High-Level Design

I believe that it is often instructive to make a high-level block diagram:

curve tracer block diagram

There is obviously going to be …

more ...


© by Jason R. Jones 2016
My thanks to the Pelican and Python Communities.