Repeater ID and controller


Closed Thread
Results 1 to 13 of 13

Hybrid View

  1. #1
    Join Date
    Aug 2005
    Location
    Michigan, USA
    Posts
    224


    Did you find this post helpful? Yes | No

    Default Re: Repeater ID and controller

    That's a very nice method, Dave. It won't accommodate a comma, question mark, or any character with more than five elements, but you probably don't need those characters in that application.

    One method I've used involves inserting a single '1' bit terminator after the last element. This allows for characters or pro-signs up to seven elements in length and eliminates the need for an element counter. A space character is empty except for the terminator bit ('10000000'). Processing the dits and dahs is similar to the method in Dave's example.

    Code:
    id
            retlw   b'10010000'     ; 'd', dah-di-dit
            retlw   b'01000000'     ; 'e', dit
            retlw   b'10000000'     ; ' ', space
            retlw   b'10110000'     ; 'k', dah-di-dah
            retlw   b'11100100'     ; '8', dah-dah-dah-di-dit
            retlw   b'01001000'     ; 'l', di-dah-di-dit
            retlw   b'00001000'     ; 'h', di-di-di-dit
            retlw   b'10010100'     ; '/', dah-di-di-dah-dit
            retlw   b'01010000'     ; 'r', di-dah-dit
            retlw   0               ; end-of-table

  2. #2


    Did you find this post helpful? Yes | No

    Default Re: Repeater ID and controller

    Mike, Dave,

    Great job, very nicely done! I will use this method when optimising my code. I have it working via sub calls and it is working nicely. I have to add program mode (to alter the parameters of my repeater including call sign), add a serial display for remote mounting along with a keypad. All of which I have written in modular form for other projects. I need to message it all together...LOL....yeah like that ever goes smoothly. I will post the code when I am done, since this is not propietary or for a client.

    Nick

  3. #3
    Join Date
    Aug 2005
    Location
    Michigan, USA
    Posts
    224


    Did you find this post helpful? Yes | No

    Default Re: Repeater ID and controller

    Hi Nick,

    Glad to hear you've got it up-n'-runnin'.

    If you were to try that other character format you'd need to change the algorithm. I don't have PBP but I think it would use one less variable (below). Other than that, the algorithms are so close I'm not sure there would be any advantage using one format over the other.

    I'd love to see your code when you're finished (is there such a thing as "finished"?)...

    Cheerful regards, Mike, K8LH

    <note> that outer loop doesn't look quite right, does it?
    Code:
      while idchar <> 0                     '
        lookup pointer,[$90,$40,$80,$B0,$E4,$48,$08,$94,$50,$00],idchar
        '              " d   e       k   8   l   h   /   r "
        if idchar = 128 then                ' if <space> char
          pause wordtime                    '   do word space
        else                                ' otherwise
          while idchar <> 128               '   while unprocessed bits
            if idchar.7 = 1 then            '
              sound data_out,[freq,dah]     '     do 'dah'
            else                            '
              sound data_out,[freq,dit]     '     do 'dit'
            endif                           '
            data_out = 0                    '     force output to 0
            pause interditdah               '     1 dit space
            idchar = idchar << 1            '     prep for next bit
          wend                              '
          pause chartime                    '   pause between chars
        endif                               '
        pointer = pointer + 1               ' bump table pointer
      wend                                  '
    Last edited by Mike, K8LH; - 28th March 2012 at 18:55.

  4. #4
    Join Date
    Aug 2005
    Location
    Michigan, USA
    Posts
    224


    Did you find this post helpful? Yes | No

    Default Re: Repeater ID and controller

    Dave,

    I'm running an assembly language version of your program on a 10F200 (100 words of memory) and it works great.

  5. #5
    Join Date
    Mar 2003
    Location
    Commerce Michigan USA
    Posts
    1,166


    Did you find this post helpful? Yes | No

    Default Re: Repeater ID and controller

    Mike, <note> that outer loop doesn't look quite right, does it? The outer loop allows the lookup table statement to be dynamic in nature. If one decides to, there can be multiple lookup statements for messages with out having to place a separate variable for the length of each of the messages. It was designed to to have the spare input bit possibly select another message if triggered by a branch statement.
    Dave Purola,
    N8NTA
    EN82fn

  6. #6
    Join Date
    Aug 2005
    Location
    Michigan, USA
    Posts
    224


    Did you find this post helpful? Yes | No

    Default Re: Repeater ID and controller

    Hey Dave... I meant it didn't look right with my code which won't process a 0x00 character. It looks great with your code Sir...

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