| Electronic Components Datasheet Search |
|
AN540 Datasheet(PDF) 10 Page - Microchip Technology |
|
|
|||||||||||||||||||||||||||||
AN540 Datasheet(HTML) 10 Page - Microchip Technology |
|
10 / 17 page ![]() DS00540B-page 10 © 1993 Microchip Technology Inc. Implementing IIR Digital Filters 0037 601B MOVFP DPX+B3,WREG ; get 4th byte of DPX into w 0038 1147 ADDWFC ACC+B3 ; add 4th byte of ACC, save in ACC(B3) ; ; Compute A1*D(n-1) ; 0039 7C22 MOVFP Dn1_1+B0,AARG+B0 ; move Dn1_1(B0) to AARG(B0) 003A 7D23 MOVFP Dn1_1+B1,AARG+B1 ; move Dn1_1(B1) to AARG(B1) 003B 7E2C MOVFP A11+B0,BARG+B0 ; move A11(B0) to BARG(B0) 003C 7F2D MOVFP A11+B1,BARG+B1 ; move A11(B1) to BARG(B1) 003D E0AF call DblMult ; (ACCd,ACCc) = A1*D(n-1) ; ; Compute A1*D(n-1) + A2*D(n-2) + output of previous section ; multiplications already done, so simply perform a 32 bit add ; of previously obtained multiplication results ; 003E 6018 MOVFP DPX+B0,WREG ; get lowest byte of DPX into w 003F 0F44 ADDWF ACC+B0 ; add lowest byte of ACC,save in ACC(B0) 0040 6019 MOVFP DPX+B1,WREG ; get 2nd byte of DPX into w 0041 1145 ADDWFC ACC+B1 ; add 2nd byte of ACC, save in ACC(B1) 0042 601A MOVFP DPX+B2,WREG ; get 3rd byte of DPX into w 0043 1146 ADDWFC ACC+B2 ; add 3rd byte of ACC, save in ACC(B2) 0044 601B MOVFP DPX+B3,WREG ; get 4th byte of DPX into w 0045 1147 ADDWFC ACC+B3 ; add 4th byte of ACC, save in ACC(B3) ; ; ; save the upper 16 bits of D(n) from the 32 bit accumulator ; left shift the result by 1, to adjust the decimal point after ; a Q15*Q15 multiplication ; 0046 1A45 rlcf ACC+B1,w 0047 1A46 rlcf ACC+B2,w 0048 0120 movwf Dn1 0049 1A47 rlcf ACC+B3,w ; decimal adjust ( mult by 2) 004A 0121 movwf Dn1+B1 ; ; Compute B2 * [D(n) + D(n-2)] ; if B0_EQUALS_B2 004B 6024 movfp Dn1_2+B0,wreg 004C 0E20 addwf Dn1+B0,w 004D 011C movwf AARG+B0 004E 6025 movfp Dn1_2+B1,wreg 004F 1021 addwfc Dn1+B1,w 0050 011D movwf AARG+B1 0051 7E30 MOVFP B10+B0,BARG+B0 ; move B10(B0) to BARG(B0) 0052 7F31 MOVFP B10+B1,BARG+B1 ; move B10(B1) to BARG(B1) 0053 E0AF call DblMult ; (ACCd,ACCc) = B2*[D(n)+D(n-2)] 0054 5844 MOVPF DPX+B0,ACC+B0 ; move DPX(B0) to ACC(B0) 0055 5945 MOVPF DPX+B1,ACC+B1 ; move DPX(B1) to ACC(B1) 0056 5A46 MOVPF DPX+B2,ACC+B2 ; move DPX(B2) to ACC(B2) 0057 5B47 MOVPF DPX+B3,ACC+B3 ; move DPX(B3) to ACC(B3) 4-138 |
|
|
Link URL |
| Does ALLDATASHEET help your business so far? [ DONATE ] |
About Alldatasheet | Advertisement | Contact us | Privacy Policy | Link to Datasheet | Link Exchange | Manufacturer List All Rights Reserved©Alldatasheet.com |
| Russian : Alldatasheetru.com | Korean : Alldatasheet.co.kr | Spanish : Alldatasheet.es | French : Alldatasheet.fr | Italian : Alldatasheetit.com Portuguese : Alldatasheetpt.com | Polish : Alldatasheet.pl | Vietnamese : Alldatasheet.vn Indian : Alldatasheet.in | Mexican : Alldatasheet.com.mx | British : Alldatasheet.co.uk | New Zealand : Alldatasheet.co.nz |
|
Family Site : ic2ic.com |
icmetro.com |