Counting led blinks..


Results 1 to 40 of 93

Threaded View

  1. #25
    Join Date
    Jun 2011
    Location
    Philippines
    Posts
    223


    Did you find this post helpful? Yes | No

    Default Re: Counting led blinks..

    Hi everyone, now the usb device is recognized and its in Port COM2. My only problem is that my pulse counter variable i is reseting back to zero when a pulse(acctually I'm using a button on RA4 to simulate the pulse) is detected. In the code I did not yet insert the command "USBOut 3, buffer, cnt, Main" to send to pc.
    Code:
    asm    ;__CONFIG    _CONFIG1L, _PLLDIV_5_1L & _CPUDIV_OSC1_PLL2_1L & _USBDIV_2_1L
        __CONFIG    _CONFIG1L, _PLLDIV_2_1L & _CPUDIV_OSC1_PLL2_1L & _USBDIV_2_1L 
        __CONFIG    _CONFIG1H, _FOSC_XTPLL_XT_1H & _FCMEN_OFF_1H & _IESO_OFF_1H 
                                ;                  ;               ; Oscillator Switchover mode disabled
                                ;                  ; Fail-Safe Clock Monitor disabled
                                ; XT oscillator, PLL enabled, XT used by USB
        __CONFIG    _CONFIG2L, _PWRT_ON_2L & _BOR_ON_2L  & _BORV_2_2L  & _VREGEN_ON_2L   
        __CONFIG    _CONFIG2H, _WDT_OFF_2H 
        __CONFIG    _CONFIG3H, _MCLRE_ON_3H & _LPT1OSC_OFF_3H & _PBADEN_OFF_3H & _CCP2MX_ON_3H 
        __CONFIG    _CONFIG4L, _STVREN_ON_4L & _LVP_OFF_4L & _ICPRT_OFF_4L  & _XINST_OFF_4L & _DEBUG_OFF_4L 
        endasm
    DEFINE OSC 48 
    DEFINE LCD_DREG PORTB
    DEFINE LCD_DBIT 0
    DEFINE LCD_EREG PORTB
    DEFINE LCD_EBIT 5
    DEFINE LCD_RSREG PORTB
    DEFINE LCD_RSBIT 4
    DEFINE LCD_BITS 4
    DEFINE LCD_LINES 2
    DEFINE LCD_COMMANDUS 2000
    DEFINE LCD_DATAUS 50
    PAUSE 100
    
    
    Include    "cdc_desc.bas"    ' Include the HID descriptors 
    buffer    Var    Byte[16]
    Cnt       VAR BYTE 
    Cnt = 2
     
    
    
    TRISA.4 = 1 ' RA4/T0CKI = input to TMR0 counter
    TRISA.0 = 0 ' RA0 = output for LED
    CMCON = 7   ' All digital 
    ADCON1 = 001111      ' A/D converter off
    
    
    'If you prefer, then increment on low-to-high transitions
    T0CON   = 111000       
    USBInit                   ' Initialize USART
    
    
    i var byte
    i=0
    ' Assign prescaler to WDT for 1:1 prescale on TMR0
    ' TMR0 clock will be from your external input on RA4/T0CKI
    ' Increment on high-to-low transitions
    
    
                                '         
    Lcdout $fe, 128, "Counter: ", #i 
    'pause 20
    Main:
        USBService    ' Must service USB regularly
        TMR0L = 0     ' Clear TMR0 count before start    
        
    Loop1:
        
        WHILE TMR0L = 0 ' Wait for high-to-low transition  
        USBService    
        WEND           ' on RA4/T0CKI
        pause 5
        PORTB.0 = 1    ' LED on to indicate transition seen 
        i=i+1       ' increment i 
        Lcdout $fe, 128, "Counter: ", #i 
        USBService
        PORTB.0 = 0    ' LED off
    I appreciate any help...

    thanks in advance,
    tacbanon
    Last edited by tacbanon; - 6th October 2011 at 13:12.

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