<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic How to capture data into variables? in 8-bit Microcontrollers</title>
    <link>https://community.nxp.com/t5/8-bit-Microcontrollers/How-to-capture-data-into-variables/m-p/292685#M20536</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi All,&lt;/P&gt;&lt;P&gt;I am trying to replace an obsolete TSM5055 display. This display basically has a 35bit shift register in it something like the MM5451. I would like to replace this with a hcs08 variant (SE8) and 4 7segment displays. I think i can display the data to the 7segment displays once I capture the data. What I am needing help with is capturing the data that is sent to it. The TSM5055 has an enable line, data line and clock line. I have tried using the clock line to trigger&amp;nbsp; a KBInterrupt and capture the data pin. I have pieced together pieces of ASM code I have gleaned from other people but the micro keeps resetting in the debugger saying illegal something or other. I am not at my test bench right now. Has anyone done this type of thing before and could share some code. I do not know C and am a beginner in ASM.&lt;/P&gt;&lt;P&gt;Thank you for taking the time to read this,&lt;/P&gt;&lt;P&gt;Dan&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Sat, 15 Jun 2013 20:52:25 GMT</pubDate>
    <dc:creator>marbomb</dc:creator>
    <dc:date>2013-06-15T20:52:25Z</dc:date>
    <item>
      <title>How to capture data into variables?</title>
      <link>https://community.nxp.com/t5/8-bit-Microcontrollers/How-to-capture-data-into-variables/m-p/292685#M20536</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi All,&lt;/P&gt;&lt;P&gt;I am trying to replace an obsolete TSM5055 display. This display basically has a 35bit shift register in it something like the MM5451. I would like to replace this with a hcs08 variant (SE8) and 4 7segment displays. I think i can display the data to the 7segment displays once I capture the data. What I am needing help with is capturing the data that is sent to it. The TSM5055 has an enable line, data line and clock line. I have tried using the clock line to trigger&amp;nbsp; a KBInterrupt and capture the data pin. I have pieced together pieces of ASM code I have gleaned from other people but the micro keeps resetting in the debugger saying illegal something or other. I am not at my test bench right now. Has anyone done this type of thing before and could share some code. I do not know C and am a beginner in ASM.&lt;/P&gt;&lt;P&gt;Thank you for taking the time to read this,&lt;/P&gt;&lt;P&gt;Dan&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 15 Jun 2013 20:52:25 GMT</pubDate>
      <guid>https://community.nxp.com/t5/8-bit-Microcontrollers/How-to-capture-data-into-variables/m-p/292685#M20536</guid>
      <dc:creator>marbomb</dc:creator>
      <dc:date>2013-06-15T20:52:25Z</dc:date>
    </item>
    <item>
      <title>Re: How to capture data into variables?</title>
      <link>https://community.nxp.com/t5/8-bit-Microcontrollers/How-to-capture-data-into-variables/m-p/292686#M20537</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hello Dan,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Ideally, the device that you select should have a SPI peripheral - unfortunately the 'SE8 device does not.&amp;nbsp; Therefore, to make use of the 'SE8 (maybe because it has more GPIO available, and is available in a through-hole package), you will need to "bit-bang" the serial interface.&amp;nbsp; This process is not too complex, but its feasibility will depend on the clock rate generated by the source of the display data, and to some extent, the display refresh rate.&amp;nbsp; You will need a clock rate that is sufficiently slow to accommodate the bit-bang process.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;When a SPI module is available, processing is required every 8 clock cycles, rather than every clock cycle.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I might suggest that you post your current, non-working code so we are not guessing at your problems.&amp;nbsp; The continual resetting may possibly be due to COP (watchdog) timeout.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Mac&lt;/P&gt;&lt;P&gt;&lt;BR /&gt; &lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sun, 16 Jun 2013 04:49:34 GMT</pubDate>
      <guid>https://community.nxp.com/t5/8-bit-Microcontrollers/How-to-capture-data-into-variables/m-p/292686#M20537</guid>
      <dc:creator>bigmac</dc:creator>
      <dc:date>2013-06-16T04:49:34Z</dc:date>
    </item>
    <item>
      <title>Re: How to capture data into variables?</title>
      <link>https://community.nxp.com/t5/8-bit-Microcontrollers/How-to-capture-data-into-variables/m-p/292687#M20538</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P dir="ltr" style="color: #222222; font-family: arial, sans-serif; background-color: #ffffff;"&gt;Thank you for investing your time to help me.&lt;/P&gt;&lt;DIV&gt;I do not think it is a COP problem.&lt;P&gt;&lt;/P&gt;&lt;P&gt;I think I have it turned off.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;DIV&gt;&amp;nbsp; ; Common initialization of the write once registers &lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ; SOPT1: COPT=0,STOPE=0,TPM1PS=0,BKGDPE=1,RSTPE=0 &lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; LDA&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; #$02&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; STA&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; SOPT1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/P&gt;&lt;P&gt;Please find below the code I am attempting to make work.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;DIV&gt;;***************************************************************&lt;P&gt;&lt;/P&gt;&lt;P&gt;;12-18-12 REPLACEMENT OF DISPLAY TSM6055&lt;/P&gt;&lt;P&gt;;Code to read in Display values to Clone module&lt;/P&gt;&lt;P&gt;;Original control used Three Five Systems Display TSM6X55 Series&lt;/P&gt;&lt;P&gt;;These modules had 35 bit serial shift registers in them&lt;/P&gt;&lt;P&gt;;Display sequence consisted of 1 High Start Bit followed by 4 bytes of data &lt;/P&gt;&lt;P&gt;;for 4 digits the bit 33= Upper Colon and bit 34= Lower Colon then one&lt;/P&gt;&lt;P&gt;;more bit to latch registers to output.&lt;/P&gt;&lt;P&gt;;Bit 01 = Digit 4 Segment DP&lt;/P&gt;&lt;P&gt;;Bit 02 = Digit 4 Segment D&lt;/P&gt;&lt;P&gt;;Bit 03 = Digit 4 Segment C&lt;/P&gt;&lt;P&gt;;Bit 04 = Digit 4 Segment G&lt;/P&gt;&lt;P&gt;;Bit 05 = Digit 4 Segment B&lt;/P&gt;&lt;P&gt;;Bit 06 = Digit 4 Segment A&lt;/P&gt;&lt;P&gt;;Bit 07 = Digit 4 Segment F&lt;/P&gt;&lt;P&gt;;Bit 08 = Digit 4 Segment E&lt;/P&gt;&lt;P&gt;;Bit 09 = Digit 3 Segment DP&lt;/P&gt;&lt;P&gt;;Bit 10 = Digit 3 Segment D&lt;/P&gt;&lt;P&gt;;Bit 11 = Digit 3 Segment C&lt;/P&gt;&lt;P&gt;;Bit 12 = Digit 3 Segment G&lt;/P&gt;&lt;P&gt;;Bit 13 = Digit 3 Segment B&lt;/P&gt;&lt;P&gt;;Bit 14 = Digit 3 Segment A&lt;/P&gt;&lt;P&gt;;Bit 15 = Digit 3 Segment F&lt;/P&gt;&lt;P&gt;;Bit 16 = Digit 3 Segment E&lt;/P&gt;&lt;P&gt;;Bit 17 = Digit 2 Segment DP&lt;/P&gt;&lt;P&gt;;Bit 18 = Digit 2 Segment D&lt;/P&gt;&lt;P&gt;;Bit 19 = Digit 2 Segment C&lt;/P&gt;&lt;P&gt;;Bit 20 = Digit 2 Segment G&lt;/P&gt;&lt;P&gt;;Bit 21 = Digit 2 Segment B&lt;/P&gt;&lt;P&gt;;Bit 22 = Digit 2 Segment A&lt;/P&gt;&lt;P&gt;;Bit 23 = Digit 2 Segment F&lt;/P&gt;&lt;P&gt;;Bit 24 = Digit 2 Segment E&lt;/P&gt;&lt;P&gt;;Bit 25 = Digit 1 Segment DP&lt;/P&gt;&lt;P&gt;;Bit 26 = Digit 1 Segment D&lt;/P&gt;&lt;P&gt;;Bit 27 = Digit 1 Segment C&lt;/P&gt;&lt;P&gt;;Bit 28 = Digit 1 Segment G&lt;/P&gt;&lt;P&gt;;Bit 29 = Digit 1 Segment B&lt;/P&gt;&lt;P&gt;;Bit 30 = Digit 1 Segment A&lt;/P&gt;&lt;P&gt;;Bit 31 = Digit 1 Segment F&lt;/P&gt;&lt;P&gt;;Bit 32 = Digit 1 Segment E&lt;/P&gt;&lt;P&gt;;Bit 33 = UPPER COLON&lt;/P&gt;&lt;P&gt;;Bit 34 = LOWER COLON&lt;/P&gt;&lt;P&gt;;This code based on MC14489 replacement using HC08QY1 chip &lt;/P&gt;&lt;P&gt;;by Eng.Gabriel Dubatti (c)2004 &lt;A href="mailto:info@ingdubatti.com.ar" style="color: #1155cc;" target="_blank"&gt;info@ingdubatti.com.ar&lt;/A&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ;&lt;/P&gt;&lt;P&gt;;&lt;A href="http://www.ingdubatti.com.ar/" style="color: #1155cc;" target="_blank"&gt;www.ingdubatti.com.ar&lt;/A&gt;&lt;/P&gt;&lt;P&gt;;I think the clock line is used in some interupt fashion to capture&lt;/P&gt;&lt;P&gt;;the 32 bits coming in from micro. This is loaded into 4 bytes in this&lt;/P&gt;&lt;P&gt;;case and then every 5 msec the timer overflow would run VECTOR_TIM_OVF:&lt;/P&gt;&lt;P&gt;;which would build the display segments into bytes to send to the&lt;/P&gt;&lt;P&gt;;7Segment Displays and turn on one digit at a time.&lt;/P&gt;&lt;P&gt;;===========================================================&lt;/P&gt;&lt;P&gt;; VECTOR_IRQ:&amp;nbsp; This is clk line of display.&lt;/P&gt;&lt;P&gt;; In each IRQ reads 1 bit and shifts in "rxbuff"&lt;/P&gt;&lt;P&gt;; After 5 to 10 msec from the last IRQ updates the display&lt;/P&gt;&lt;P&gt;;===========================================================&lt;/P&gt;&lt;P&gt;;BELOW IS MY ATTEMPT TO CAPTURE DATA USING KEYBOARD INTERRUPT&lt;/P&gt;&lt;P&gt;;*************************************************************&lt;/P&gt;&lt;P&gt;;PIN 23 PTA3/KBIP3 CONNECT TO CLK PIN TRIGGERS&lt;/P&gt;&lt;P&gt;;DATA CAPTURE FROM TSM6055 MODULE MICRO&lt;/P&gt;&lt;P&gt;;*************************************************************&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Init_PinIRQ:&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ; INIT FOR KEYBOARD INTERRUPT&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ; Called once in startup&lt;/P&gt;&lt;P&gt;&amp;nbsp; bclr&amp;nbsp;&amp;nbsp;&amp;nbsp; KBISC_KBIE,KBISC&amp;nbsp;&amp;nbsp; ; mask interrupts&lt;/P&gt;&lt;P&gt;;USE ONE OR OTHER BUT NOT BOTH BELOW&lt;/P&gt;&lt;P&gt;;&amp;nbsp; BSET&amp;nbsp;&amp;nbsp;&amp;nbsp; KBIES_KBEDG3,KBIES ; SELECT RISING EDGE/HIGH LEVEL&lt;/P&gt;&lt;P&gt;&amp;nbsp; BCLR&amp;nbsp;&amp;nbsp;&amp;nbsp; KBIES_KBEDG3,KBIES ; SELECT FALLING EDGE/LOW LEVEL&lt;/P&gt;&lt;P&gt;;CONFIGURE PULLUP ENABLE BITS IN PTxPE&lt;/P&gt;&lt;P&gt;&amp;nbsp; BSET&amp;nbsp;&amp;nbsp;&amp;nbsp; PTAPE_PTAPE3,PTAPE&amp;nbsp; ;SET ENABLE PULLUP&lt;/P&gt;&lt;P&gt;;ENABLE KBI PINS BY SETTING KBIPEn BITS IN KBIPE&amp;nbsp; &lt;/P&gt;&lt;P&gt;&amp;nbsp; BSET&amp;nbsp;&amp;nbsp;&amp;nbsp; KBIPE_KBIPE3,KBIPE ; ENABLE PIN FOR KBI&lt;/P&gt;&lt;P&gt;&amp;nbsp; bset&amp;nbsp;&amp;nbsp;&amp;nbsp; KBISC_KBACK,KBISC&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ; clear any false interrupts&lt;/P&gt;&lt;P&gt;&amp;nbsp; bclr&amp;nbsp;&amp;nbsp;&amp;nbsp; KeyPad,Flag&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ; clear flag MAY NOT NEED&lt;/P&gt;&lt;P&gt;&amp;nbsp; bset&amp;nbsp;&amp;nbsp;&amp;nbsp; KBISC_KBIE,KBISC&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ; ENABLE KBI clear the mask&lt;/P&gt;&lt;P&gt;&amp;nbsp; rts&lt;/P&gt;&lt;P&gt;Kpad_Isr:&lt;/P&gt;&lt;P&gt;&amp;nbsp; bset&amp;nbsp;&amp;nbsp;&amp;nbsp; KeyPad,Flag&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ; set the flag&lt;/P&gt;&lt;P&gt;&amp;nbsp; bset&amp;nbsp;&amp;nbsp;&amp;nbsp; KBISC_KBACK,KBISC&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ; clear interrupt&lt;/P&gt;&lt;P&gt;&amp;nbsp; BRSET&amp;nbsp;&amp;nbsp; PTCD_PTCD2,PTCD,KpadEXT&amp;nbsp; ; CHK DISPLAY ENABLE IS LOW&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ; EEPROM ALSO ADDRESSED IN DEVICE&lt;/P&gt;&lt;P&gt;&amp;nbsp; NOP&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ;SOME DELAY ???? BEFORE READ DATA ON PIN&lt;/P&gt;&lt;P&gt;&amp;nbsp; NOP&lt;/P&gt;&lt;P&gt;&amp;nbsp; NOP&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/P&gt;&lt;P&gt;; ORIGINAL CODE USED THIS LABEL - VECTOR_IRQ:&amp;nbsp; &lt;/P&gt;&lt;P&gt;&amp;nbsp; inc&amp;nbsp;&amp;nbsp; rxnbits&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ;inc the number of bits received&lt;/P&gt;&lt;P&gt;&amp;nbsp; bne&amp;nbsp;&amp;nbsp; _ElseIfTimer17&lt;/P&gt;&lt;P&gt;&amp;nbsp; dec&amp;nbsp;&amp;nbsp; rxnbits&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ;&lt;/P&gt;&lt;P&gt;_ElseIfTimer17:&lt;/P&gt;&lt;P&gt;&amp;nbsp; &lt;/P&gt;&lt;P&gt;&amp;nbsp; mov&amp;nbsp; #2,rxtimer&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ;reset detected sending end&lt;/P&gt;&lt;P&gt;; BELOW CAPTURES DATA PIN AND LOADS 5BYTES 35or 36 BITS ETC&lt;/P&gt;&lt;P&gt;&amp;nbsp; &lt;/P&gt;&lt;P&gt;&amp;nbsp; brclr 1,PTCD,_ElseIfTimer18 ;CHANGE TO CORRECT DATA PIN&lt;/P&gt;&lt;P&gt;_ElseIfTimer18:&lt;/P&gt;&lt;P&gt;&amp;nbsp; rol&amp;nbsp;&amp;nbsp; rxbuff+4&lt;/P&gt;&lt;P&gt;&amp;nbsp; rol&amp;nbsp;&amp;nbsp; rxbuff+3&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ;input shift&lt;/P&gt;&lt;P&gt;&amp;nbsp; rol&amp;nbsp;&amp;nbsp; rxbuff+2&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/P&gt;&lt;P&gt;&amp;nbsp; rol&amp;nbsp;&amp;nbsp; rxbuff+1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/P&gt;&lt;P&gt;&amp;nbsp; rol&amp;nbsp;&amp;nbsp; rxbuff+0&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/P&gt;&lt;P&gt;;FROM ORIGINAL CODE&amp;nbsp;&amp;nbsp;&amp;nbsp; bset 2,INTSCR&amp;nbsp;&amp;nbsp;&amp;nbsp; ;force in case of IRQ ACK&lt;/P&gt;&lt;P&gt;;WHAT DID ABOVE DO IN QY1 CHIP??????????? CLEAR INTERRUPT&lt;/P&gt;&lt;P&gt;&amp;nbsp; bset&amp;nbsp;&amp;nbsp;&amp;nbsp; KBISC_KBACK,KBISC&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ; clear interrupt&lt;/P&gt;&lt;P&gt;KpadEXT&lt;/P&gt;&lt;P&gt;&amp;nbsp; rti &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;DIV&gt;; Subroutine to display DATA CAPTURED SCI.&lt;P&gt;&lt;/P&gt;&lt;P&gt;DisprxbuffHex&lt;/P&gt;&lt;P&gt;LDHX #BigBuf ;Point to &amp;amp; build Display buffer&lt;/P&gt;&lt;P&gt;LDA rxbuff+4&lt;/P&gt;&lt;P&gt;JSR Put1Hex&amp;nbsp; ;Convert and enter into buffer&lt;/P&gt;&lt;P&gt;LDA #SPACE&amp;nbsp;&amp;nbsp;&amp;nbsp; ;Blank character&lt;/P&gt;&lt;P&gt;STA ,X&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ;Put it in the buffer&lt;/P&gt;&lt;P&gt;AIX #1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ;Increment the pointer&lt;/P&gt;&lt;P&gt;LDA rxbuff+3&lt;/P&gt;&lt;P&gt;JSR Put1Hex&amp;nbsp; ;Convert and enter into buffer&lt;/P&gt;&lt;P&gt;LDA #SPACE&amp;nbsp;&amp;nbsp;&amp;nbsp; ;Blank character&lt;/P&gt;&lt;P&gt;STA ,X&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ;Put it in the buffer&lt;/P&gt;&lt;P&gt;AIX #1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ;Increment the pointer&lt;/P&gt;&lt;P&gt;LDA rxbuff+2&lt;/P&gt;&lt;P&gt;JSR Put1Hex&amp;nbsp; ;Convert and enter into buffer&lt;/P&gt;&lt;P&gt;LDA #SPACE&amp;nbsp;&amp;nbsp;&amp;nbsp; ;Blank character&lt;/P&gt;&lt;P&gt;STA ,X&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ;Put it in the buffer&lt;/P&gt;&lt;P&gt;AIX #1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ;Increment the pointer&lt;/P&gt;&lt;P&gt;LDA rxbuff+1&lt;/P&gt;&lt;P&gt;JSR Put1Hex&amp;nbsp; ;Convert and enter into buffer&lt;/P&gt;&lt;P&gt;LDA #SPACE&amp;nbsp;&amp;nbsp;&amp;nbsp; ;Blank character&lt;/P&gt;&lt;P&gt;STA ,X&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ;Put it in the buffer&lt;/P&gt;&lt;P&gt;AIX #1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ;Increment the pointer&lt;/P&gt;&lt;P&gt;LDA rxbuff+0&lt;/P&gt;&lt;P&gt;JSR Put1Hex&amp;nbsp; ;Convert and enter into buffer&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; lda&amp;nbsp; #EOS&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; sta ,X&lt;/P&gt;&lt;P&gt;LDHX #BigBuf ;Point to start of buffer&lt;/P&gt;&lt;P&gt;JSR OUTSTRG&amp;nbsp;&amp;nbsp; ;Send it&lt;/P&gt;&lt;P&gt;RTS&lt;/P&gt;&lt;/DIV&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/P&gt;&lt;P&gt;Here is the fault that I get in the debugger.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;DIV&gt;Illegal Address Reset&lt;P&gt;&lt;/P&gt;&lt;P&gt; óóõ bõoåkå5 xxåÄ&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;P class="gmail_extra" style="color: #222222; font-family: arial, sans-serif; background-color: #ffffff;"&gt;&lt;/P&gt;&lt;DIV&gt;Thank You, Dan&lt;BR /&gt;&lt;P&gt;&lt;/P&gt;&lt;/DIV&gt;&lt;P&gt;&lt;SPAN class="mce_paste_marker"&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 17 Jun 2013 18:42:20 GMT</pubDate>
      <guid>https://community.nxp.com/t5/8-bit-Microcontrollers/How-to-capture-data-into-variables/m-p/292687#M20538</guid>
      <dc:creator>marbomb</dc:creator>
      <dc:date>2013-06-17T18:42:20Z</dc:date>
    </item>
    <item>
      <title>Re: How to capture data into variables?</title>
      <link>https://community.nxp.com/t5/8-bit-Microcontrollers/How-to-capture-data-into-variables/m-p/292688#M20539</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Thank you for investing your time to help me.&lt;/P&gt;&lt;P&gt;I do not think it is a COP problem.&lt;/P&gt;&lt;P&gt;I think I have it turned off.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;DIV&gt;&amp;nbsp; ; Common initialization of the write once registers &lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ; SOPT1: COPT=0,STOPE=0,TPM1PS=0,BKGDPE=1,RSTPE=0 &lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; LDA&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; #$02&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; STA&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; SOPT1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/P&gt;&lt;P&gt;Please find below the code I am attempting to make work.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;DIV&gt;;***************************************************************&lt;P&gt;&lt;/P&gt;&lt;P&gt;;12-18-12 REPLACEMENT OF DISPLAY TSM6055&lt;/P&gt;&lt;P&gt;;Code to read in Display values to Clone module&lt;/P&gt;&lt;P&gt;;Original control used Three Five Systems Display TSM6X55 Series&lt;/P&gt;&lt;P&gt;;These modules had 35 bit serial shift registers in them&lt;/P&gt;&lt;P&gt;;Display sequence consisted of 1 High Start Bit followed by 4 bytes of data &lt;/P&gt;&lt;P&gt;;for 4 digits the bit 33= Upper Colon and bit 34= Lower Colon then one&lt;/P&gt;&lt;P&gt;;more bit to latch registers to output.&lt;/P&gt;&lt;P&gt;;Bit 01 = Digit 4 Segment DP&lt;/P&gt;&lt;P&gt;;Bit 02 = Digit 4 Segment D&lt;/P&gt;&lt;P&gt;;Bit 03 = Digit 4 Segment C&lt;/P&gt;&lt;P&gt;;Bit 04 = Digit 4 Segment G&lt;/P&gt;&lt;P&gt;;Bit 05 = Digit 4 Segment B&lt;/P&gt;&lt;P&gt;;Bit 06 = Digit 4 Segment A&lt;/P&gt;&lt;P&gt;;Bit 07 = Digit 4 Segment F&lt;/P&gt;&lt;P&gt;;Bit 08 = Digit 4 Segment E&lt;/P&gt;&lt;P&gt;;Bit 09 = Digit 3 Segment DP&lt;/P&gt;&lt;P&gt;;Bit 10 = Digit 3 Segment D&lt;/P&gt;&lt;P&gt;;Bit 11 = Digit 3 Segment C&lt;/P&gt;&lt;P&gt;;Bit 12 = Digit 3 Segment G&lt;/P&gt;&lt;P&gt;;Bit 13 = Digit 3 Segment B&lt;/P&gt;&lt;P&gt;;Bit 14 = Digit 3 Segment A&lt;/P&gt;&lt;P&gt;;Bit 15 = Digit 3 Segment F&lt;/P&gt;&lt;P&gt;;Bit 16 = Digit 3 Segment E&lt;/P&gt;&lt;P&gt;;Bit 17 = Digit 2 Segment DP&lt;/P&gt;&lt;P&gt;;Bit 18 = Digit 2 Segment D&lt;/P&gt;&lt;P&gt;;Bit 19 = Digit 2 Segment C&lt;/P&gt;&lt;P&gt;;Bit 20 = Digit 2 Segment G&lt;/P&gt;&lt;P&gt;;Bit 21 = Digit 2 Segment B&lt;/P&gt;&lt;P&gt;;Bit 22 = Digit 2 Segment A&lt;/P&gt;&lt;P&gt;;Bit 23 = Digit 2 Segment F&lt;/P&gt;&lt;P&gt;;Bit 24 = Digit 2 Segment E&lt;/P&gt;&lt;P&gt;;Bit 25 = Digit 1 Segment DP&lt;/P&gt;&lt;P&gt;;Bit 26 = Digit 1 Segment D&lt;/P&gt;&lt;P&gt;;Bit 27 = Digit 1 Segment C&lt;/P&gt;&lt;P&gt;;Bit 28 = Digit 1 Segment G&lt;/P&gt;&lt;P&gt;;Bit 29 = Digit 1 Segment B&lt;/P&gt;&lt;P&gt;;Bit 30 = Digit 1 Segment A&lt;/P&gt;&lt;P&gt;;Bit 31 = Digit 1 Segment F&lt;/P&gt;&lt;P&gt;;Bit 32 = Digit 1 Segment E&lt;/P&gt;&lt;P&gt;;Bit 33 = UPPER COLON&lt;/P&gt;&lt;P&gt;;Bit 34 = LOWER COLON&lt;/P&gt;&lt;P&gt;;This code based on MC14489 replacement using HC08QY1 chip &lt;/P&gt;&lt;P&gt;;by Eng.Gabriel Dubatti (c)2004 &lt;A href="mailto:info@ingdubatti.com.ar" style="color: #1155cc;" target="_blank"&gt;info@ingdubatti.com.ar&lt;/A&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ;&lt;/P&gt;&lt;P&gt;;&lt;A href="http://www.ingdubatti.com.ar/" style="color: #1155cc;" target="_blank"&gt;www.ingdubatti.com.ar&lt;/A&gt;&lt;/P&gt;&lt;P&gt;;I think the clock line is used in some interupt fashion to capture&lt;/P&gt;&lt;P&gt;;the 32 bits coming in from micro. This is loaded into 4 bytes in this&lt;/P&gt;&lt;P&gt;;case and then every 5 msec the timer overflow would run VECTOR_TIM_OVF:&lt;/P&gt;&lt;P&gt;;which would build the display segments into bytes to send to the&lt;/P&gt;&lt;P&gt;;7Segment Displays and turn on one digit at a time.&lt;/P&gt;&lt;P&gt;;===========================================================&lt;/P&gt;&lt;P&gt;; VECTOR_IRQ:&amp;nbsp; This is clk line of display.&lt;/P&gt;&lt;P&gt;; In each IRQ reads 1 bit and shifts in "rxbuff"&lt;/P&gt;&lt;P&gt;; After 5 to 10 msec from the last IRQ updates the display&lt;/P&gt;&lt;P&gt;;===========================================================&lt;/P&gt;&lt;P&gt;;BELOW IS MY ATTEMPT TO CAPTURE DATA USING KEYBOARD INTERRUPT&lt;/P&gt;&lt;P&gt;;*************************************************************&lt;/P&gt;&lt;P&gt;;PIN 23 PTA3/KBIP3 CONNECT TO CLK PIN TRIGGERS&lt;/P&gt;&lt;P&gt;;DATA CAPTURE FROM TSM6055 MODULE MICRO&lt;/P&gt;&lt;P&gt;;*************************************************************&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Init_PinIRQ:&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ; INIT FOR KEYBOARD INTERRUPT&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ; Called once in startup&lt;/P&gt;&lt;P&gt;&amp;nbsp; bclr&amp;nbsp;&amp;nbsp;&amp;nbsp; KBISC_KBIE,KBISC&amp;nbsp;&amp;nbsp; ; mask interrupts&lt;/P&gt;&lt;P&gt;;USE ONE OR OTHER BUT NOT BOTH BELOW&lt;/P&gt;&lt;P&gt;;&amp;nbsp; BSET&amp;nbsp;&amp;nbsp;&amp;nbsp; KBIES_KBEDG3,KBIES ; SELECT RISING EDGE/HIGH LEVEL&lt;/P&gt;&lt;P&gt;&amp;nbsp; BCLR&amp;nbsp;&amp;nbsp;&amp;nbsp; KBIES_KBEDG3,KBIES ; SELECT FALLING EDGE/LOW LEVEL&lt;/P&gt;&lt;P&gt;;CONFIGURE PULLUP ENABLE BITS IN PTxPE&lt;/P&gt;&lt;P&gt;&amp;nbsp; BSET&amp;nbsp;&amp;nbsp;&amp;nbsp; PTAPE_PTAPE3,PTAPE&amp;nbsp; ;SET ENABLE PULLUP&lt;/P&gt;&lt;P&gt;;ENABLE KBI PINS BY SETTING KBIPEn BITS IN KBIPE&amp;nbsp; &lt;/P&gt;&lt;P&gt;&amp;nbsp; BSET&amp;nbsp;&amp;nbsp;&amp;nbsp; KBIPE_KBIPE3,KBIPE ; ENABLE PIN FOR KBI&lt;/P&gt;&lt;P&gt;&amp;nbsp; bset&amp;nbsp;&amp;nbsp;&amp;nbsp; KBISC_KBACK,KBISC&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ; clear any false interrupts&lt;/P&gt;&lt;P&gt;&amp;nbsp; bclr&amp;nbsp;&amp;nbsp;&amp;nbsp; KeyPad,Flag&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ; clear flag MAY NOT NEED&lt;/P&gt;&lt;P&gt;&amp;nbsp; bset&amp;nbsp;&amp;nbsp;&amp;nbsp; KBISC_KBIE,KBISC&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ; ENABLE KBI clear the mask&lt;/P&gt;&lt;P&gt;&amp;nbsp; rts&lt;/P&gt;&lt;P&gt;Kpad_Isr:&lt;/P&gt;&lt;P&gt;&amp;nbsp; bset&amp;nbsp;&amp;nbsp;&amp;nbsp; KeyPad,Flag&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ; set the flag&lt;/P&gt;&lt;P&gt;&amp;nbsp; bset&amp;nbsp;&amp;nbsp;&amp;nbsp; KBISC_KBACK,KBISC&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ; clear interrupt&lt;/P&gt;&lt;P&gt;&amp;nbsp; BRSET&amp;nbsp;&amp;nbsp; PTCD_PTCD2,PTCD,KpadEXT&amp;nbsp; ; CHK DISPLAY ENABLE IS LOW&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ; EEPROM ALSO ADDRESSED IN DEVICE&lt;/P&gt;&lt;P&gt;&amp;nbsp; NOP&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ;SOME DELAY ???? BEFORE READ DATA ON PIN&lt;/P&gt;&lt;P&gt;&amp;nbsp; NOP&lt;/P&gt;&lt;P&gt;&amp;nbsp; NOP&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/P&gt;&lt;P&gt;; ORIGINAL CODE USED THIS LABEL - VECTOR_IRQ:&amp;nbsp; &lt;/P&gt;&lt;P&gt;&amp;nbsp; inc&amp;nbsp;&amp;nbsp; rxnbits&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ;inc the number of bits received&lt;/P&gt;&lt;P&gt;&amp;nbsp; bne&amp;nbsp;&amp;nbsp; _ElseIfTimer17&lt;/P&gt;&lt;P&gt;&amp;nbsp; dec&amp;nbsp;&amp;nbsp; rxnbits&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ;&lt;/P&gt;&lt;P&gt;_ElseIfTimer17:&lt;/P&gt;&lt;P&gt;&amp;nbsp; &lt;/P&gt;&lt;P&gt;&amp;nbsp; mov&amp;nbsp; #2,rxtimer&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ;reset detected sending end&lt;/P&gt;&lt;P&gt;; BELOW CAPTURES DATA PIN AND LOADS 5BYTES 35or 36 BITS ETC&lt;/P&gt;&lt;P&gt;&amp;nbsp; &lt;/P&gt;&lt;P&gt;&amp;nbsp; brclr 1,PTCD,_ElseIfTimer18 ;CHANGE TO CORRECT DATA PIN&lt;/P&gt;&lt;P&gt;_ElseIfTimer18:&lt;/P&gt;&lt;P&gt;&amp;nbsp; rol&amp;nbsp;&amp;nbsp; rxbuff+4&lt;/P&gt;&lt;P&gt;&amp;nbsp; rol&amp;nbsp;&amp;nbsp; rxbuff+3&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ;input shift&lt;/P&gt;&lt;P&gt;&amp;nbsp; rol&amp;nbsp;&amp;nbsp; rxbuff+2&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/P&gt;&lt;P&gt;&amp;nbsp; rol&amp;nbsp;&amp;nbsp; rxbuff+1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/P&gt;&lt;P&gt;&amp;nbsp; rol&amp;nbsp;&amp;nbsp; rxbuff+0&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/P&gt;&lt;P&gt;;FROM ORIGINAL CODE&amp;nbsp;&amp;nbsp;&amp;nbsp; bset 2,INTSCR&amp;nbsp;&amp;nbsp;&amp;nbsp; ;force in case of IRQ ACK&lt;/P&gt;&lt;P&gt;;WHAT DID ABOVE DO IN QY1 CHIP??????????? CLEAR INTERRUPT&lt;/P&gt;&lt;P&gt;&amp;nbsp; bset&amp;nbsp;&amp;nbsp;&amp;nbsp; KBISC_KBACK,KBISC&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ; clear interrupt&lt;/P&gt;&lt;P&gt;KpadEXT&lt;/P&gt;&lt;P&gt;&amp;nbsp; rti &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;DIV&gt;; Subroutine to display DATA CAPTURED SCI.&lt;P&gt;&lt;/P&gt;&lt;P&gt;DisprxbuffHex&lt;/P&gt;&lt;P&gt;LDHX #BigBuf ;Point to &amp;amp; build Display buffer&lt;/P&gt;&lt;P&gt;LDA rxbuff+4&lt;/P&gt;&lt;P&gt;JSR Put1Hex&amp;nbsp; ;Convert and enter into buffer&lt;/P&gt;&lt;P&gt;LDA #SPACE&amp;nbsp;&amp;nbsp;&amp;nbsp; ;Blank character&lt;/P&gt;&lt;P&gt;STA ,X&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ;Put it in the buffer&lt;/P&gt;&lt;P&gt;AIX #1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ;Increment the pointer&lt;/P&gt;&lt;P&gt;LDA rxbuff+3&lt;/P&gt;&lt;P&gt;JSR Put1Hex&amp;nbsp; ;Convert and enter into buffer&lt;/P&gt;&lt;P&gt;LDA #SPACE&amp;nbsp;&amp;nbsp;&amp;nbsp; ;Blank character&lt;/P&gt;&lt;P&gt;STA ,X&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ;Put it in the buffer&lt;/P&gt;&lt;P&gt;AIX #1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ;Increment the pointer&lt;/P&gt;&lt;P&gt;LDA rxbuff+2&lt;/P&gt;&lt;P&gt;JSR Put1Hex&amp;nbsp; ;Convert and enter into buffer&lt;/P&gt;&lt;P&gt;LDA #SPACE&amp;nbsp;&amp;nbsp;&amp;nbsp; ;Blank character&lt;/P&gt;&lt;P&gt;STA ,X&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ;Put it in the buffer&lt;/P&gt;&lt;P&gt;AIX #1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ;Increment the pointer&lt;/P&gt;&lt;P&gt;LDA rxbuff+1&lt;/P&gt;&lt;P&gt;JSR Put1Hex&amp;nbsp; ;Convert and enter into buffer&lt;/P&gt;&lt;P&gt;LDA #SPACE&amp;nbsp;&amp;nbsp;&amp;nbsp; ;Blank character&lt;/P&gt;&lt;P&gt;STA ,X&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ;Put it in the buffer&lt;/P&gt;&lt;P&gt;AIX #1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ;Increment the pointer&lt;/P&gt;&lt;P&gt;LDA rxbuff+0&lt;/P&gt;&lt;P&gt;JSR Put1Hex&amp;nbsp; ;Convert and enter into buffer&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; lda&amp;nbsp; #EOS&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; sta ,X&lt;/P&gt;&lt;P&gt;LDHX #BigBuf ;Point to start of buffer&lt;/P&gt;&lt;P&gt;JSR OUTSTRG&amp;nbsp;&amp;nbsp; ;Send it&lt;/P&gt;&lt;P&gt;RTS&lt;/P&gt;&lt;/DIV&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/P&gt;&lt;P&gt;Here is the fault that I get in the debugger.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;DIV style="color: #222222; font-family: arial, sans-serif; background-color: #ffffff;"&gt;Illegal Address Reset&lt;P&gt;&lt;/P&gt;&lt;P style="color: #222222; font-family: arial, sans-serif; background-color: #ffffff;"&gt; óóõ bõoåkå5 xxåÄ&lt;/P&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;P&gt;&lt;SPAN class="mce_paste_marker"&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 24 Jun 2013 21:13:18 GMT</pubDate>
      <guid>https://community.nxp.com/t5/8-bit-Microcontrollers/How-to-capture-data-into-variables/m-p/292688#M20539</guid>
      <dc:creator>marbomb</dc:creator>
      <dc:date>2013-06-24T21:13:18Z</dc:date>
    </item>
  </channel>
</rss>

