11분의 PWM을 사용하여 AT89c51rd2

G

gauravsarode

Guest
안녕,

아무도 말해 줄래?PWM을 생성하는 방법을 지속적으로니까?내가 at89c51rd2 사용하고있습니다.

 
펄스 폭 변조기 하나의 프로그래머블 카운터 어레이 (PCA와) 프로그래밍 될 수있는 4 가지 모드 중 하나입니다.
당신은 5 개의 독립적인 실행 모듈의 PWM을 가질 수있습니다.
비록 PCA와 타이머를 16 비트 카운터입니다, PWM을 단 8 비트 레지스터 카스티 야 SFR 공간 0E9h에서 매핑을 사용합니다.
또 다른 제한이 있기 때문에 그들은 모두 PCA와 타이머를 공유하는 모든 5 개의 모듈의 출력과 같은 주파수를 갖고있을 것입니다.

당신은 기본적으로 무엇이 필요 사용하는 경우 두 개의 레지스터 : CCAPL 및 각 CCAPH의 PWM 채널에로드됩니다.
다음 당신은 PCA와 16에 대한 입력 소스 비트 카운터를 선택할 수있습니다.
결국 당신은 PWM 및 CCAPM에서 비트를 설정해야합니다 ECOM을 사용하는 경우 각 5 개 채널의 PWM 모드를 활성화하려면 등록해야합니다.

PCA와 타이머 CMOD 레지스터에 CPS1 및 CPS0 비트 (SFR 0D9h)에서 결정하고, 실행하도록 프로그램 될 수있습니다 :
- 1 / 6 주변 장치의 주파수
- 1 / 2 주변 주파수
- 타이머 0 오버플로우 (실행 중 13입니다 - 비트, 16 비트 또는 모드 2 8 비트 자동 리로드)
- ECI 핀 (P1.2)에 입력

주변 주파수를 귀하의 크리스탈 oscilator 주파수로 나눈 값입니다 2 안 (CKCON0 SFR).
그런 다음 사용하는 8 비트 prescaler 분배기 (CKRL SFR 설정)에 의해 더 낮은 하나를 얻을 수있습니다

일이 어떻게 안으로가는 거죠?
카스티 등록 비율에서 선택한 입력 소스에 따라 증가합니다.
, P1과에 CEX 출력이 낮은 것입니다 오래 레지스터의 내용 마찬가지 CCAPL 레지스터의 값을보다 적습니다.
언제 평등의 이상을 다음 CEX 출력이 높은 것입니다.
카스티 야는 곧 등록 오버플로 0FFh에서 00h로로서, CCAPL 등록 CCAPH와 가치를 다시 로드한 보유하고있습니다.
CCAPL 가치 CCAPH 경우, 이는 일반적와 다음 CEX 출력에서 좋은 PWM을, 지속적인만큼 ECOM 비트있어 동등하게 설정됩니다.
만약 당신이 쉽게 CCAPH 레지스터의 값을 변경 할 수있습니다 듀티 사이클을 변경하려면 (업데이 트를 깨끗하고 고장없이 카스티 야 레지스터의 다음 회전에서) 이루어집니다.

하기 위해서는 응용 프로그램의 오실레이터 주파수는 내부 클럭 모드 (x1 또는 X2는)에 따라 (기간 및 듀티 사이클) 특정 신호를 얻기 위해 당신은 PCA와 등록 및 타이머 값을 확인하려면이 Excel 파일을 사용할 수있습니다.

http://www.atmel.ru/Atmel-2003.September/1/dyn/resources/prod_documents/c51_pwm.xls

 
다운로드 및 인텔 PCA와 요리책을 읽고
http://www.intel.com/design/mcs51/applnots/270609.htm
RD2의 정보의 자손과의 FA / FB와 PCA와 동일한 방식으로 작동합니다.

wek

 

Welcome to EDABoard.com

Sponsor

Back
Top