Saturday 10 March 2018

Avr222 8 점 이동 평균 필터


8 비트 마이크로 컨트롤러 애플리케이션 노트 AVR222 8 포인트 이동 평균 필터 1 AVR222 8 포인트 이동 평균 필터 기능 31 워드 서브 루틴 필터 데이터 어레이 최대 256 바이트 실행 가능한 데모 프로그램 소개 이동 평균 필터는 간단한 로우 패스 FIR 유한 임펄스 샘플링 된 데이터의 배열을 부드럽게하기 위해 일반적으로 사용되는 응답 필터이 애플리케이션은 평균 계산을 단순화하기 위해 8 포인트 필터를 구현합니다. 애플리케이션 노트는 AVR 아키텍처의 강력한 어드레싱 모드를 활용하는 방법에 대한 훌륭한 데모를 제공합니다. 8 비트 마이크로 컨트롤러 애플리케이션 노트 이론 이동 평균 필터는이 경우 특정 크기의 창으로 상상할 수 있습니다. 이 경우 배열을 따라 한 번에 하나의 요소가 이동합니다. 이 경우 요소 4의 창의 가운데 요소는 전체 요소의 평균으로 바뀝니다. window 그림 1 참고 그러나 새 요소의 값을 기억하고 창을 통과 할 때까지 교체하지 않는 것이 중요합니다. 이 m 모든 평균은 배열의 원래 데이터를 기반으로해야하므로 완료해야합니다. 그림 1 8 포인트 평균화 창 현재 창 NEW 값 8 20 배열의 끝이 필터링되고 창의 일부가 배열 외부에 있으면 평균 전체 윈도우가 배열 안에있을 때보 다 적은 수의 요소에 대해 수행해야합니다. 이 구현은 배열 끝을 필터링하지 않고 코드를 저장하도록합니다. 8 포인트 필터의 경우 n 요소가 필터링 될 때 요소 1, 2, 3, 필터링이 완료되면 n-3, n-2, n-1, n은 변경되지 않습니다. 많은 응용 프로그램에서는 문제가 없습니다. Rev 1.2 구현 사용 알고리즘 설명 응용 프로그램은 항상 8 바이트 링 버퍼 R0 - R7을 정의합니다. 현재 평균화 윈도우의 데이터 필터 루틴은 윈도우의 합계를 계산하고 어레이에 다시 저장되는 평균을 계산합니다. AVR의 세 포인터에 다음 함수가 할당됩니다. Z는 교체 할 배열 요소를 가리 킵니다. 반지 버퍼 내용의 합계가 프로그램 루프에서 계산 될 때 버퍼 X는 버퍼에 새로운 값의 위치를 ​​유지하는 링 포인터 SRAM에서 배열을 필터링하려면 다음 절차를 사용하십시오. 1 ZH에 첫 번째 배열의 요소 2 배열의 첫 번째 요소의 하위 주소로 ZL로드 3 테이블의 요소 수와 함께 레지스터 변수 tsize를로드합니다. 4 mav8을 호출합니다. 다음 절차에서는 정렬 기가 AVR에서 구현되는 방법을 설명합니다. 초기화 1 지우기 X 및 Y 포인터가 R0을 가리킴 채움 링 버퍼 처음에 1 Z에서 SRAM 내용 가져 오기 및 Z에서 증가 2 Y에서 레지스터에 저장하고 Y에서 증가 3 Y가 8이 아닌 경우 2 단계로 이동 2 평균 검색 1 16 비트 레지스터 변수 지우기 AH AL 평균값 2 YL 지점에서 R0 지우기 3 Y에서 레지스터 내용 가져 오기 4 AH에 추가 AL 5 8이 아닌 Y 경우 AH AL을 8로 나눕니다. Write Back Average 및 버퍼 1에 다음 값 가져 오기 Z에서 SRAM 내용 가져 오기 5 다음 값을 버퍼 2로 저장합니다. X에서 X를 증가시키고 X를 증가시킵니다. 3 XL의 최상위 5 비트를 지우고 끝이 통과되면 버퍼의 시작을 가리 킵니다. 4 AL을 ​​Z에 저장하고 Z를 증가시킵니다. 5 감소 tsize 6 tsize가 0이 아니면 도달 단계 5 2 AVR222.3 AVR222 그림 2 mav8 플로우 차트 MAV8 X 및 YZZ 1 삭제 평균 필링 링 YV 1 YL 8 Y AY AL YL YY 1 A AL AL ​​AL ​​AL ​​AL ​​8 AL AH AL AH AL 8 WRITE BACK AVERAGE 및 RING BUFFER MAVTMP, XX AL, ZZ의 다음 값 얻기 1 크기 클리어 X 비트 7,6,5,4,3 TSIZE TSIZE - 1 Y 리턴 3.4 성능 표 1 mav8 레지스터 사용 레지스터 입력 내부 출력 R0-R7 링 버퍼 R8 mavtmp 임시 저장 R9 AL 평균 하위 바이트 R10 AH 평균 상위 바이트 R16 tsize 요소 수 tsize 루프 카운터 R26 XL R27 XH R28 YL R29 YH R30 Z 첫 번째 요소의 주소 ZL R31 Z 첫 번째 요소의 주소 ZH 표 2 mav8 성능 그림 1 매개 변수 코드 크기 단어 실행 시간주기 값 30 return x SIZE - 7 return 레지스터 사용법 저 등록 s 높은 레지스터 포인터 인터럽트 사용법 주변 장치 사용법 없음 없음 11 1 X, Y, Z 참고 1 SIZE 필터링 할 바이트 수 테스트 예제 프로그램에는 프로그램 메모리에서 SRAM으로 60 바이트의 무작위 데이터를 복사하고 mav8을 호출하여 필터합니다 데이터 테스트 프로그램은 AVR Studio 4에서 실행하기에 적합합니다. Atmel 본사 본사 2325 Orchard Parkway 캘리포니아 주 산호세 TEL 1 408 FAX 1 408 유럽 Atmel Sarl Route des Arsenaux 41 Case Postale 80 CH-1705 Fribourg Switzerland TEL 41 팩스 41 아시아 실 1219 Chinachem Golden Plaza 77 Mody Road Tsimhatsui East Kowloon 홍콩 TEL 852 FAX 852 일본 도쿄도 주 오구 신 카와 신 카와 빌딩 TEL 08 팩스 81 Atmel Operations 메모리 2325 Orchard Parkway San Jose, CA TEL 1 408 FAX 1 408 마이크로 컨트롤러 2325 Orchard Parkway 캘리포니아 주 산호세 TEL 1 408 FAX 1 408 프랑스 La Chantrerie BP Nantes Cedex 3 TEL 33 FAX 33 ASIC ASSP 스마트 카드 Zone Industrielle Rousset 프랑스 Cedex TEL 33 FAX 33 Eas t Cheyenne Mtn Blvd 콜로라도 스프링스, 콜로라도 전화 1 719 FAX 1 719 Scottish Enterprise Technology Park 맥스웰 빌딩 East Kilbride G75 0QR, 스코틀랜드 TEL 44 FAX 44 RF 자동차 Theresienstrasse 2 독일 Heilbronn Postfach 전화 49 FAX 49 East Cheyenne Mtn Blvd Colorado Springs, CO TEL 1 719 FAX 1 719 생체 인식 이미징 Hi-Rel MPU 고속 변환기 RF 데이터 컴 Avenue de Rochepleine BP Saint-Egreve Cedex, 프랑스 TEL 33 FAX 33 웹 사이트 Atmel Corporation Atmel Corporation은 자사 제품 이외의 제품 회사의 웹 사이트에있는 Atmel s 이용 약관에 상세히 설명 된 회사의 표준 보증에 명시 적으로 포함되어 있습니다. 회사는이 문서에 나타날 수있는 오류에 대해 책임을지지 않으며 여기에 설명 된 장치 나 사양을 변경할 권리를 보유합니다. 언제든지 예고없이 언제든지이 정보를 업데이트 할 의무가 없습니다. 특허권 또는 Atme의 기타 지적 재산권에 대한 라이센스가 없습니다. ATMEL, AVR 및 AVR Studio는 Atmel의 등록 상표입니다. 기타 용어 및 제품 이름은 타사의 상표 일 수 있습니다. 재활용 용지에 인쇄 됨 0M. AVR222 8 점 이동 평균 필터. 마이크로 컨트롤러 란 무엇입니까? 마이크로 컨트롤러 또는 MCU는 컴퓨터 온 칩입니다. 마이크로 프로세서는 실행 전용 마이크로 프로세서 유형입니다 하나의 작업을 범용 마이크로 프로세서와 반대로, 그 장치의 기능을 제어하기 위해 다른 장치에 임베디드 컨트롤러, 따라서 임베디드 컨트롤러 이름입니다. AVR은 무엇입니까? 전압 조정기는 전기 회선의 전압 수준의 전압을 유지하는 데 사용되는 전자 회로입니다 AVR은 자동 전압 조절기의 약자이며 종종 최종 사용자 장비를 지칭하기 위해 사용됩니다 .8-b it 마이크로 컨트롤러 애플리케이션 노트 AVR222 8 포인트 이동 평균 필터 1 AVR222 8 포인트 이동 평균 필터 기능 31 워드 서브 루틴 필터 데이터 어레이 최대 256 바이트 실행 가능한 데모 프로그램 소개 이동 평균 필터는 간단한 저역 통과 FIR 유한 임펄스 응답 필터입니다 샘플링 된 데이터의 배열을 부드럽게하기 위해 일반적으로 사용됩니다. 이 애플리케이션은 평균 계산을 단순화하기 위해 8 포인트 필터를 구현합니다. 애플리케이션 노트는 AVR 아키텍처의 강력한 어드레싱 모드를 활용하는 방법에 대한 훌륭한 데모를 제공합니다. 8 비트 마이크로 컨트롤러 애플리케이션 노트 이론 이동 평균 필터는이 경우 특정 크기의 창으로 상상할 수 있습니다. 배열을 따라 한 번에 하나의 요소 이동이 경우 요소 4의 창의 중간 요소는 창에있는 모든 요소의 평균으로 바뀝니다. 그림 1 그러나 새 요소의 값을 기억하고 창이 지나갈 때까지 대체하지 않는 것이 중요합니다. 모든 평균은 배열의 원래 데이터를 기반으로해야하기 때문에 완료해야합니다. 그림 1 8 포인트 평균화 창 현재 창 NEW 값 8 20 배열의 끝이 필터링되고 창의 일부가 배열 외부에 있으면 평균을 구해야합니다 전체 윈도우가 배열 내부에있을 때보 다 적은 수의 요소에서 수행됩니다. 이 구현은 배열 끝을 필터링하지 않고 코드를 저장하도록합니다. 8 점 필터의 경우 n 요소가 필터링되면 요소 1, 2, 3 및 필터링이 완료되면 n-3, n-2, n-1, n은 변경되지 않습니다. 많은 애플리케이션에서 문제가되지 않습니다. Rev 1.2 구현 사용 알고리즘 설명 애플리케이션은 항상 데이터를 보유하고있는 8 바이트 링 버퍼 R0 - R7을 정의합니다 현재 평균화 윈도우에서 필터 루틴은 윈도우의 합계를 계산하고 어레이에 다시 저장되는 평균을 계산합니다. 3 개의 포인터에 다음 함수가 할당됩니다. Z는 교체 할 배열 요소를 가리 킵니다. 링 내부의 Y 포인트 부 버퍼 내용의 합계가 프로그램 루프에서 계산 될 때 ffer X는 버퍼에 새로운 값의 위치를 ​​유지하는 링 포인터 SRAM의 배열을 필터링하려면 다음 절차를 사용하십시오. 1 ZH에 첫 번째 배열의 요소 2 배열의 첫 번째 요소의 하위 주소로 ZL로드 3 테이블의 요소 수와 함께 레지스터 변수 tsize를로드합니다. 4 mav8을 호출합니다. 다음 절차에서는 정렬 기가 AVR에서 구현되는 방법을 설명합니다. 초기화 1 지우기 X 및 Y 포인터가 R0을 가리킴 채움 링 버퍼 처음에 1 Z에서 SRAM 내용 가져 오기 및 Z에서 증가 2 Y에서 레지스터에 저장하고 Y에서 증가 3 Y가 8이 아닌 경우 2 단계로 이동 2 평균 검색 1 16 비트 레지스터 변수 지우기 AH AL 평균값 2 YL 지점에서 R0 지우기 3 Y에서 레지스터 내용 가져 오기 4 AH에 추가 AL 5 8이 아닌 Y 경우 AH AL을 8로 나눕니다. Write Back Average 및 버퍼 1에 다음 값 가져 오기 Z에서 SRAM 내용 가져 오기 5 버퍼 2에 다음 값 등록 저장소 X에서 증가하고 X를 증가시킵니다. 3 XL의 최상위 5 비트를 지우고 끝이 통과되면 버퍼의 시작을 가리 킵니다. 4 AL을 ​​Z에 저장하고 Z를 증가시킵니다. 5 감소 tsize 6 tsize가 0이 아닐 경우 goto 단계 5 2 AVR222.3 AVR222 그림 2 mav8 흐름도 MAV8 X 및 YZZ 1 삭제 평균 축음기 YY 1 YL 8 Y ALE AL YH YY 1 A AL AL ​​AL ​​MAHTMP YL 8 NY AH AL AH AL 8 WRITE BACK 링 버퍼로 MAVTMP, XX AL, ZZ 1 평균값 클리어 X 비트 7,6,5,4,3 TSIZE TSIZE - 1 Y Return 3.4 성능 표 1 mav8 레지스터 사용 레지스터 입력 내부 출력 R0-R7 링 버퍼 R8 mavtmp 임시 저장 R9 AL 평균 하위 바이트 R10 AH 평균 상위 바이트 R16 tsize 요소 수 tsize 루프 카운터 R26 XL R27 XH R28 YL R29 YH R30 Z 첫 번째 요소의 주소 ZL R31 Z 첫 번째 요소의 주소 ZH 표 2 mav8 성능 수치 1 파라미터 코드 크기 워드 실행 시간 사이클 값 30 return x SIZE - 7 반환 레지스터 사용법 저 레지스터 H igh 레지스터 포인터 인터럽트 사용법 주변 장치 사용법 없음 없음 11 1 X, Y, Z 참고 1 SIZE 필터링 할 바이트 수 테스트 예제 프로그램에는 프로그램 메모리에서 SRAM으로 60 바이트의 무작위 데이터를 복사하고 mav8을 호출하여 데이터 테스트 프로그램은 AVR Studio 4 AVR222.6에서 실행하기에 적합합니다. Atmel 본사 본사 2325 Orchard Parkway 캘리포니아 주 산호세 TEL 1 408 FAX 1 408 유럽 Atmel Sarl Route des Arsenaux 41 Case Postale 80 CH-1705 Fribourg Switzerland TEL 41 FAX 41 아시아 방 1219 Chinachem Golden Plaza 77 Mody Road Tsimhatsui East Kowloon 홍콩 TEL 852 FAX 852 일본 도쿄도 주 오구 신 카와 신 카와 빌딩 TEL 08 팩스 81 Atmel Operations 메모리 2325 Orchard Parkway, San Jose, CA TEL 1 408 FAX 1 408 마이크로 컨트롤러 2325 Orchard Parkway 캘리포니아 주 산호세 TEL 1 408 FAX 1 408 프랑스 Chantrerie BP Nantes Cedex 3, 프랑스 전화 33 FAX 33 ASIC ASSP 스마트 카드 지대 Industrielle Rousset Cedex, 프랑스 TEL 33 FAX 33 East C heyenne Mtn Blvd 콜로라도 스프링스, 콜로라도 전화 1 719 FAX 1 719 Scottish Enterprise Technology Park 맥스웰 빌딩 East Kilbride G75 0QR, 스코틀랜드 전화 44 FAX 44 RF 자동차 Theresienstrasse 2 독일 Heilbronn Postfach 전화 49 FAX 49 East Cheyenne Mtn Blvd 콜로라도 스프링스 콜로라도 TEL 1 719 FAX 1 719 생체 인식 이미징 Hi-Rel MPU 고속 변환기 RF Datacom Avenue de Rochepleine BP Saint-Egreve Cedex, 프랑스 TEL 33 FAX 33 웹 사이트 Atmel Corporation Atmel Corporation은 명시 적으로 제품을 사용하지 않고 회사의 웹 사이트에있는 Atmel s 이용 약관에 상세히 설명 된 회사의 표준 보증에 포함되어 있습니다. 회사는이 문서에 나타날 수있는 오류에 대해 책임을지지 않으며, 본 설명서에 명시된 장치 나 사양을 변경할 수있는 권한을 보유합니다 통지없이 시간을 보내며 여기에 포함 된 정보를 업데이트 할 의무가 없습니다. Atmel의 특허 또는 기타 지적 재산권에 대한 라이센스가 없습니다. 명시 적 또는 묵시적으로 Atmel 제품의 판매와 관련하여 회사가 부여한 것 ATMEL, AVR 및 AVR Studio는 Atmel의 등록 상표입니다. 제품 이름은 타인의 상표 일 수 있습니다.

No comments:

Post a Comment