Code Monkey home page Code Monkey logo

serial7segmentdisplay's Introduction

7-Segment Serial Display

7-Segment Serial Display
7-Segment Serial Display (COM-11629)

The 7-Segment Serial Display combines a classic 4-digit 7-segment display and an ATMega328 microcontroller allowing you to control every segment individually using only a few serial lines.

Repository Contents

  • /firmware - Arduino firmware and test code
  • /hardware - PCB design files (created with Eagle 6.1.0)

Documentation

  • Hookup Guide - Basic hookup guide for the Serial Enabled 7-Segment Displays.
  • Datasheet - Specifications

Product Versions

COM-11629 - white, OEM packaging
The 7-Segment Serial Display with white segments in standard OEM packaging.

COM-11442 - blue, OEM packaging
The 7-Segment Serial Display with blue segments in standard OEM packaging.

COM-11441 - red, OEM packaging
The 7-Segment Serial Display with red segments in standard OEM packaging.

COM-11443 - yellow, OEM packaging
The 7-Segment Serial Display with yellow segments in standard OEM packaging.

COM-11440 - kelly green, OEM packaging
The 7-Segment Serial Display with kelly green segments in standard OEM packaging.

RTL-11381 - blue, retail packaging
The 7-Segment Serial Display with blue segments in a retail-ready plastic clam shell.

RTL-11386 - red, retail packaging
The 7-Segment Serial Display with red segments in a retail-ready plastic clam shell.

License Information

All contents of this repository are released under Creative Commons Share-alike 3.0.

Author

Jim Lindblom, SparkFun Electronics

serial7segmentdisplay's People

Contributors

bboyho avatar frencil avatar nseidle avatar robert-hunke avatar sfe-jordan avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

serial7segmentdisplay's Issues

Move to SparkFun main branch

Hey Jim - I think this firmware is quickly become stable. If we're shipping it as live code, we should probably transfer ownership of the repo to /sparkfun/.

Rename repo/project

What was originally a Serial interface for seven segment displays has grown to accomodate a few other protocols (namely I2C and SPI). I'm also adding a 'counter' function to my backpack that allows a pin to be toggled and the display to increase (or decrease) by one.

We should consider renaming this project. My backpack (with PNPs and NPNs to drive higher currents) is called OpenSegment (kind of in the same fashion as OpenLog - admittedly not very creative). I would currently recommend 'OpenSegment' unless you have another name.

The problem however, is that we are quickly headed towards a mixed up world with two different layouts (I'd like to add my layout to this repo), and two slightly different firmwares (for example my hardware supports the counter option but yours may not). I'm not sure how to resolve this but I do believe it starts with some sort of rename.

Error check

I use Serial7SegmentDisplay with a RaspberryPi. It works both with I2C, and with Serial.

Everything is fine 90% of the time. But sometimes, some characters are not well sent/received by the display, and one character is missing. This is happening for some other people (I found on some forums).

Could we add basic error check, so that if a byte is not well received, the serial or SPI interface will resend?

Tried:

  • sleep 5 ms between each byte send, it improves a bit but does not solve 100%
  • change bps rate, but doesn't change anything

Display refresh rate

I've noticed that when viewed on a 60fps camera the display visibly flickers. I assume this has something to do with the rate at which the segments are illuminated. I'm also assuming that one potential remedy would be adjusting the shutter rate of the camera.

Is dimming accomplished by leaving each segment on a smaller slice of time? Is there a way to increase the speed of redrawing the segments to overcome the aliasing effect on the camera?

Update datasheet to exclude colon/apostrophe

The larger serial display doesn't have a colon or apostrophe. Would be good to modify the datasheet to make it explicit (an image of the larger display would be good to include).

Technical data for Sparkfun PCB missing -- measures provided

I have searched but not been able to find the technical data for the PCB dimensions. Data is available for the 7-segment display itself, but not the PCB.

These are my measures using a caliper:

width: 41.3mm
depth: 23.5mm
thickness: 1.6mm

stand-off holes diameter: 3.0mm
stand-off holes width offset (to center of hole): 5.2 (possibly should be 0.2in)
stand-off holes depth offset (to center of hole): 2.7 (possibly should be 0.1in)

basic display driver

I need to display temperatures from -99.9 to 99.9 (with the leading digit blanked when the value is positive.
I will be driving 10 serial displays and I need to assign the CS pin.

Display something on power up

I'm using the 7segment display with a raspberry pi.
During the Linux booting time (~15 seconds), the 7segment display displays nothing.

Is it possible to show "___", "----" once it is powered up?

So the user will know the system is "booting".

How to do this?

Compilation Error

Hi,
I am getting two compilation errors in the Arduino IDE. One was a capitalization error on setBrightness. The other is

Compilation error: 'class SevSeg' has no member named 'displayString'

\Arduino\Serial_7_Segment_Display_Firmware\Serial_7_Segment_Display_Firmware.ino: In function 'void displayData()':
\Arduino\Serial_7_Segment_Display_Firmware\Serial_7_Segment_Display_Firmware.ino:114:15: error: 'class SevSeg' has no member named 'displayString'
myDisplay.displayString(display.digits, display.decimals); //(numberToDisplay, decimal point location)

I couldn't find this function in the SevSeg .cpp or .h. Can you advise? I thought it might have just been a mistake and looked for other ones that have the same inputs but to no avail. I think setChars was the closest.

Analog inputs

Hi,
My name is Omri, and I'm considering the use of your nice S7S for a project I'm working on.

The main goal is using this S7S to display voltage measurements. By considering the 2 analog input pins there is on the breakout board it could be more simple than I thought.

After reading the "Hardware specifications" I'm a little bit confused.
With the current stat of the breakout and firmware, can I use the pins to measure the analog voltage?
and if I can, what is the voltage limitation?

I hope I was clear, thanks for helping

Clarify cursor position after Digit Control commands

Can you update the Wiki with what happens to the cursor after you issue one of the Digit Control special commands 0x7B - 0x7E? For example, what is the result of:

Serial.write(0x76);        // Clear display command, resets cursor
Serial.write('1');         // will display '1'
Serial.write('2');         // will display '2'
Serial.write(0x7D);        // Control Digit 3
Serial.write(0b01001000);  // binary for equal sign '='
Serial.write('C');         // will display 'C'

Is it "12=C" or "12C "?

Refresh rate / flicker

I'm currently filming my hardware project (including a 7seg display) with a camera.

The result is flickering because probably the refresh rate does not fit well with 24fps or 30fps of my camera.

Any idea on how to change refresh rate of Serial7SegmentDisplay?

Missing 'E' Segment (COM-11440)

This is an issue complained about in several comments across all of the 7 Segment product pages. Where everything appears normal, expect Segment 'E' on each digit does not display. I've verified the hardware is physically connected by switching pin assignments around and it does in fact light up.

Reading comments I've seen and tried several fixes.

Changing BOARD_TYPE to S7S.

Initially the text is totally scrambled, this change fixes it, except the E Segment.

Appending PB6/PB7 to pin_arduino.h

As I'm using the current code from this repo and (I think...) properly installing the hardware profile, this is taken care of for me.

I'm using Arduino 1.6.4

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.