Using MAX7221


Results 1 to 12 of 12

Thread: Using MAX7221

Threaded View

  1. #1
    Join Date
    Apr 2005
    Location
    Virginia
    Posts
    65

    Default Using MAX7221

    Hello Ladies & Gents,

    I'm attempting to make a countdown timer using eight seven-segment digits controlled by a MAX7221. Upon initial breadboarding I got it to work. However, I decided to change some wiring to have the digit order better agree with the software and it hasn't worked since. At one point I accidently hooked up the current limiting resistor to the MAX7221 to the Vcc line. I've replaced the MAX7221 with a new one. I bought new breadboards and build a new circuit from scratch, also without luck. I'm blinking an LED to indicate when the program starts and stops and that works fine, so the program is running. I've also tried placing LEDs on the data, clock and enable lines to check the I/O pins and they work fine. I noticed in a previous topic that the there may be noise and added 10uF and 0.1uF capacitors - still no luck. I've included the code and a schematic of what I've build.

    Code:
    PORTA = $00		' Set all port a pins low
    PORTC = $00		' Set all port c pins low
    define OSC 4 	' Tell the program the oscillator is running at 4 MHz
    	TRISA = %11111111		' Make all port A pins inputs
    	TRISC = %11100000		' Make port C pins 4 & 5 inputs and the rest outputs
    	PORTA = $00				' Set all port a pins to low
    	PORTC = $00				' Set all port c pins to low
    	CMCON.0 = 1				' Turn off comparator module
    	CMCON.1 = 1				' Turn off comparator module
    	CMCON.2 = 1				' Turn off comparator module
    	ADCON0.6 = 0			' Use VDD as analog reference
    	ANSEL = %00001000		' Use AN3 as analog input and set all other analog 
    							' inputs to digital pins
    
    	CS_Max	             VAR	PORTC.3		' Chip select for MAX7221 IC
    	CS_DS	             VAR	PORTC.2		' Chip select for DS1302 IC
    	SPI_CLK	             VAR	PORTC.0		' Clock for SPI communication
    	SPI_SDO	             VAR	PORTC.1		' Serial Data Out for SPI communication
    	Tog_Switch	VAR	PORTA.1		' Toggle switch
    	Sel_Switch	VAR	PORTA.2		' Select switch
    	
    	b1		VAR	byte		' Button variable for toggle switch
    	b2		VAR	byte		' Button variable for select switch
    
    '***********************************************************************************************
    	HIGH CS_Max
    	pause 500					' Wait for 500ms
    
    Main:
    
    	HIGH PORTC.4
    	PAUSE 500
    	LOW PORTC.4
    	PAUSE 500
    
    	LOW CS_Max					' Enable the MAX7221 to receive data
    	SHIFTOUT SPI_SDO, SPI_CLK, 1, [$0F01\16]		' Turn on Display Test (light up all LEDs on all eight digits)
    	HIGH CS_Max				             ' Pull chip select to MAX7221 high to act on transmitted data
    
    	PAUSE 5000				             ' Wait one second
    
    	LOW CS_Max				             ' Enable the MAX7221 to receive data
    	SHIFTOUT SPI_SDO, SPI_CLK, 1, [$0F00\16]		' Turn off Display Test 
    	HIGH CS_Max					' Pull chip select to MAX7221 high to act on transmitted data
    
    	PAUSE 1000					' Wait one second	
    
    	HIGH PORTC.4
    	PAUSE 500					' Wait one second
    	LOW PORTC.4
    	PAUSE 500
    END							' End Program
    I do not have the DS1302, buttons or photoresistor connected yet as I'm stuck trying to get the MAX7221 to work. Outside of ESD problems or gremlins, I'm stuck. Any advice is greatly appreciated.
    Attached Images Attached Images

Similar Threads

  1. how can i shift between two max7221 with shiftout command
    By lutherblissett in forum mel PIC BASIC Pro
    Replies: 0
    Last Post: - 9th December 2005, 15:50
  2. can i drive four max7221 with 3 lines only?
    By lutherblissett in forum mel PIC BASIC Pro
    Replies: 0
    Last Post: - 24th November 2005, 18:16
  3. it's possible to drive four max7221 serially connected?
    By lutherblissett in forum General
    Replies: 0
    Last Post: - 23rd November 2005, 18:38
  4. max7221 cascade mode
    By lutherblissett in forum General
    Replies: 1
    Last Post: - 10th November 2005, 11:52

Members who have read this thread : 1

You do not have permission to view the list of names.

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts