How to make display move left and right


Closed Thread
Results 1 to 4 of 4

Hybrid View

  1. #1
    Join Date
    May 2005
    Posts
    70


    Did you find this post helpful? Yes | No

    Default

    hi friend's,I did save in attached file , basic code , proteus sim

  2. #2
    Join Date
    May 2005
    Posts
    70


    Did you find this post helpful? Yes | No

    Default

    Hi frend here is my code
    Code:
    ' FONT OF DOT MATRIX 
    EEPROM 0,[0,127,32,16,0]    ' 1
    EEPROM 5,[49,73,73,73,39]    ' 2
    EEPROM 10,[54,73,73,65,34]    ' 3
    EEPROM 15,[4,127,36,20,12]     '4
    EEPROM 20,[70,73,73,73,122]    '5
    EEPROM 25,[38,73,73,73,62]      '6 
    EEPROM 30,[96,80,72,71,64]      ' 7
    EEPROM 35,[54,73,73,73,54]      ' 8
    EEPROM 40,[62,73,73,73,50]       '9
    EEPROM 45,[62,65,65,65,62]       '0
    
    include "modedefs.bas" 
    ' -----[ Program Description ]---------------------------------------------
    ' 4 Sets of 8 LED's (32 total). Each Dig# able to have an 8 bit number
    ' assigned to it.
    
    ' -----[ Revision History ]------------------------------------------------
    
    ' -----[ I/O Definitions ]-------------------------------------------------
    
    
    symbol DOUT = PORTb.0 'line for data input connected to RC5
    symbol CLK = PORTb.2 'CLK line connected to pin RC3 
    symbol Load = PORTb.1 
    Digit var byte
    X Var byte
    FONT_N VAR BYTE
    VALUE VAR WORD
    VALUE_SHOW VAR BYTE
    DOT_DATA VAR BYTE
    loaddata VAR BYTE
    N VAR BYTE
    I VAR BYTE
    
    ' -----[ Constants ]-------------------------------------------------------
    IsLow CON 0
    IsHigh CON 1
    
    ' -----[ Variables ]-------------------------------------------------------
    COUNter var byte
    ' -----[ EEPROM Data ]-----------------------------------------------------
    
    ' -----[ Initialization ]--------------------------------------------------
    
    ' -----[ Program Code ]----------------------------------------------------
    Begin:
    
    GOSUB DecodeMode
    GOSUB ShutDownMode
    GOSUB ScanLimit
    GOSUB Intensity
    ' gosub displaytest 
    VALUE = 4513
    FOR I = 3 TO 0 STEP -1  
    N = VALUE Dig I	' Get digit to display
        GoSub Display1	' Display the digit 
          
    Continue:
        SELECT CASE loaddata
          CASE 1 
            DOT_DATA = 0 
          CASE 2 
            DOT_DATA = 5
          CASE 3 
            DOT_DATA = 10
          CASE 4 
            DOT_DATA = 15
          CASE 5 
            DOT_DATA = 20
          CASE 6 
            DOT_DATA = 25
          CASE 7 
            DOT_DATA = 30
          CASE 8 
            DOT_DATA = 35
          CASE 9 
            DOT_DATA = 40
          CASE 0 
            DOT_DATA = 45
          CASE ELSE
            GOTO Begin
        END SELECT
        
        For x = 1 TO 5
            READ DOT_DATA, VALUE_SHOW
            
            LOW Load
            ShiftOut DOUt,clk,MSBFIRST,[X,VALUE_SHOW]
            HIGH Load
            PAUSE 10
            pause 250
            DOT_DATA=DOT_DATA + 1
        NEXT X
    
        
    NEXT I
    I = 0
    GOTO BEGIN
    
    Display1:  ' looup data for 7 seg                                               
    LookUp N, [0,1,2,3,4,5,6,7,8,9],loaddata
    Return       
    ' Test the display by writting 8's to each digit and scrolling them across
    '=========================
    'digit = 8
    'For x = 1 TO 8
    
    'ShiftOut DOUt,clk,MSBFIRST,[digit,$67]  '$67  = p
    
    'PulsOut Load,10
    'Pause 500
    'ShiftOut DOUt,clk,MSBFIRST,[digit,$00] 
    'PulsOut Load,10
    'digit = digit - 1
    'Next 
    
    
    GOTO continue
    END 
    ' NEXT
    
    
    ' -----[ Subroutines ]-----------------------------------------------------
    DecodeMode:
    LOW Load
    SHIFTOUT DOUT, CLK, MSBFIRST,[$0900\16]
    PulsOut Load,10
    'HIGH Load
    'PAUSE 20 
    RETURN
    'Set shutdown mode so device is active
    ShutDownMode:
    LOW Load
    SHIFTOUT DOUT, CLK, MSBFIRST,[$0C01\16]    ' Reg. C normal operate/Shutdown OFF
    PulsOut Load,10
    
    RETURN
    'Set scan limit mode for three digits
    ScanLimit:
    LOW Load
    SHIFTOUT DOUT, CLK, MSBFIRST,[$0B07\16]    ' 07 = scan 8 digit ,04 scan 4 digit
    PulsOut Load,10
    
    RETURN
    'Set intensity of LEdDs
    Intensity:
    LOW Load
    SHIFTOUT DOUT, CLK, MSBFIRST,[$0A09\16]
    PulsOut Load,10
    
    RETURN 
    'Set Display Test mode active
    DisplayTest:
    LOW Load
    SHIFTOUT DOUT, CLK, MSBFIRST,[$0F01\16]
    PulsOut Load,10
    
    RETURN

Members who have read this thread : 0

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