페이지

글목록

레이블이 POWER인 게시물을 표시합니다. 모든 게시물 표시
레이블이 POWER인 게시물을 표시합니다. 모든 게시물 표시

2016년 6월 28일 화요일

[PSOC] PSOC5 'DAC+내부 OPAMP' 로 25mA POWER 만들기

안녕하세요,

이번에는 PSOC5 로 POWER 출력을 만드는 방법을 소개 합니다.
최근에는 BLE 나 센서들이 저전력 구조로 설계되어 있으니 수십 mA 또는 10mA 이내의 전류면 충분히 동작 가능합니다.

PSOC5 키트인 CY8CKIT-059 에서 이 테스트를 진행했습니다.
059 키트는 5V 전원을 사용하고 , 여기에 I2C 방식인 조도 센서 ISL29023 을 3.3V 전원으로 DAC+OPAMP 출력을 연결했습니다.

따라서, 전원은 5V 하나만 있고 센서용 전원으로 따로 3.3V 레귤레이터를 필요로 하지 않습니다.

메뉴얼을 보니, PSOC5 의 OPAMP의 Fllower 모드의 High Power 옵션에서 전류는 최대 25mA 까지 출력 될 수 있다고 나와 있습니다.


DAC+AMP POWER 회로 연결은 다음과 같습니다.



테스트용 PSOC 059 KIT의 전체 회로도는 다음과 같습니다.

PSOC Creator의 Resource Meter를 통해 확인해 보니 PSOC5의 DAC 출력은 4개, OPAMP 출력도 4개가 있네요.

예전에 조도센서를 I2C로 테스트한 내용은 동일하고, 여기에 DAC+AMP 로 파워를 만들어 넣었습니다.
DAC 만으로 가능하지 않을까 해서 먼저 테스트 해 보니, 전류가 모자라서 안돼서
AMP를 연결하니 제대로 동작하는 것을 확인해 봤습니다.

다음에 시간이 나면 BLE도 이런 방식으로 전원을 연결해 보겠습니다.

자세한 내용은 소스를 첨부하니 참고해 주시기 바랍니다. (링크)

2016년 3월 3일 목요일

[dialog] DA14580 boost mode FLASH/DEBUG/RESET

어제 부스트 모드의 동작 및 JTAG 연결, 회로도 등에 대해서 궁금한 것이 있어서,

다이얼로그사에 기술지원 메일을 보내서 얻은 답변을 공유합니다.

먼저 저의 질문은 다음과 같습니다.
이번에 1.5V 알카라인 밧데리를 사용하는 보드를 검토하는 중인데,몇 가지 질문사항이 있습니다.

1.     전원이 1.5V 이므로 SPI FLASH 메모리는 사용할 수 없겠죠부스트 모드 에서는 OTP 만 사용하는 것으로 보면 되나요?
2.     JTAG 로 프로그램을 다운로드할 때JTAG VBAT은 어떻게 연결해야 하나요? (VBAT1V  VBAT3V 중 어디에 연결해야 하는지회로도 PDF로 첨부합니다. VBAT3V에 연결하는 것으로 보이지만 검토 부탁 드립니다.)
3.     DA14580을 부스트 모드에서 Product Line Tool 을 사용하고자 할 때에도VBAT은 어떻게 연결해야 하나요? (VBAT1V / VBAT3V ? )
4.     Product Line Tool 이나 JTAG  DA14580 을 연결할 때RESET 핀을 연결해야 하나요? (지금까지 연결을 안하고 다운로드 했었는데필요 없다면 핀을 외부로 빼지 않을 생각입니다만..)



답변 내용 입니다.
1.     전원이 1.5V 이므로 SPI FLASH 메모리는 사용할 수 없겠죠부스트 모드 에서는 OTP 만 사용하는 것으로 보면 되나요?

è     Boost mode 사용 하시더라도 따로 S/W I/O 전압을 1.8V 변경하지 않으시면 DA14580 3.0V 전원이 됩니다입력 전원만 1.5V  사용 Boost  거쳐 DA14580 필요한 3.0V 전압을 생성합니다.
è     아무래도 입력전원이 1.5V 이므로 Flash memory 용도로 따로 외부에 boost  convertor 단품을 추가 하셔야   같습니다.
è     아니시면  입력 전압이 1.8V  Flash memory 단품을 이용하시고,  DA14580 I/O 1.8V setting 하셔서 사용하는 것도 방법이   있을  같습니다.     

2.     JTAG 로 프로그램을 다운로드할 때, JTAG VBAT핀은 어떻게 연결해야 하나요? (VBAT1V  VBAT3V 중 어디에 연결해야 하는지회로도 PDF로 첨부합니다. VBAT3V에 연결하는 것으로 보이지만 검토 부탁 드립니다.)

è     앞에 말씀 드린 대로 DA14580 boost mode 사용 하셔도 1.8V S/W setting 변경하지 않으시면 DA14580 3.0V 입니다.   
è     기존 Buck mode 대로 JTAG pad  3.0V 동일 합니다.

3.     DA14580을 부스트 모드에서 Product Line Tool 을 사용하고자 할 때에도, VBAT핀은 어떻게 연결해야 하나요? (VBAT1V / VBAT3V ? )

à Boost mode로도 모두 지원 가능합니다.

4.     Product Line Tool 이나 JTAG  DA14580 을 연결할 때, RESET 핀을 연결해야 하나요? (지금까지 연결을 안하고 다운로드 했었는데필요 없다면 핀을 외부로 빼지 않을 생각입니다만..)

è     간혹 Reset  필요한 경우가 있을  있으므로 RESET  Pin 외부로 배선 부탁 드립니다

[dialog] DA14583 은 BOOST Mode 를 지원하지 않습니다.

오늘 아이디어가 좀 떠올라서, 부스트 모드를 알아보다가 
최근 회로설계한 DA14583 에 부스트 모드를 구현하려고 메뉴얼을 찾아 보니
DA14583은 부스트 모드를 아예 지원하지 않는군요.

이것은 아마도 내부 FLASH 메모리의 전력 소모량이 많아서 그럴 것 같습니다.

메뉴얼의 "3.9 POWER MANAGEMENT" 에 다음과 같이 써 있습니다.
The Power Block of the DA14583 only supports the use of Lithium coin cells (2.35 V to 3.3 V) as external
battery. The connection diagram is shown in Figure 6.



그림6 을 보면 벅컨버터만 나와있고, VBAT1V 는 GND에 붙어 있습니다.

리튬 코인 전지만 지원하고 그 이하인 1.5V 나 1.2V 전지는 지원하지 않는다는 것이죠. 
즉 부스트 모드를 지원 않는다는 말이지요.

[DA14583(DA14580+SPI 1Mbit FLASH) POWER Supply]


내친김에 다른 다이얼로그 칩 파워모드도 알아 보겠습니다.

다른 DA1458x 시리즈는 모두 부스트 모드까지 지원하네요.


[DA14580 POWER Supply]


[DA14581 POWER Supply]


[DA14582(DA14580+SC14439) POWER Supply]

2016년 2월 27일 토요일

[PSOC] PSOC4 LOW Power Mode Test

현재 진행중인 프로젝트가 NFC 카드에 PSOC4를 넣어서 전원이 무지무지 딸립니다.

전력을 아끼기 위해서 LED 키는데도 조심해야하고, 클럭도 낮췄습니다.

하여간 조금이라도 쉬는 때에 NFC 안테나를 통해 전력을 모아야 했습니다.

그래서 다루게 된게, Sleep Mode입니다.

PSOC4는 Low Power 모드가 총 4가지 있습니다.
1. Sleep Mode
2. Deepsleep Mode
3. Hibernate Mode
4. Stop Mode

----

각 모드마다, 특징이 있는데 먼저 일반적으로 우리가 사용하는 모드를 Active Mode라고 합니다.
저전력 모드는 다음과 같은 특징을 갖습니다.
1. Sleep Mode 는 모든 다른 기능은 살아있고 CPU만 죽어 있습니다.
2. Deepsleep Mode는 CPU,대부분의 Peripheral,HF Clock 등을 사용할 수 없습니다.
3. Hibernate Mode 는 모든 clock이 죽어있고, 로직 상태는 그대로 유지됩니다.
4. Stop Mode는 모두 죽어있고, GPIO 상태만 유지되어 있거나 Frozen 상태로 됩니다.

Frozen : 모든 GPIO 의 설정,모드,상태가 lock 된다. active 모드로 재진입하여 pins이 unlock 되기 전까지 GPIO 상태를 바꿀 수 없다.

[파워 모드 스펙]


[파워 모드 - 이용 가능한 리소스들]

[파워 모드 테스트 소스 코드]
int main()
{
    CyGlobalIntEnable; // Enable global interrupts. 
    //CySysPmSleep();
    CySysPmDeepSleep();
    //CySysPmHibernate();
    //CySysPmStop();
    while(1);
}

실제로 NFC 안테나를 통해서 전력을 공급받는 회로에서 , 각 파워 모드당 오실로스코프로 VCC를 측정해본 결과 다음과 같습니다.
그런데, Hibernate Mode 와 Stop Mode 가 오히려 전력이 떨어지는 것은 아직 이유를 못 찾았습니다. 뭔가 실수가 있을 것 같은데, 나중에 알게 되면 업데이트 하겠습니다.

DEEPSLEEP 모드가 가장 좋게 나오네요. 일단은 SLEEP 모드보다는 DEEPSLEEP 모드가 좀 더 성능이 좋습니다.
실제로 제가 쓰려고 했던 모드는 SLEEP 이나 DEEPSLEEP 모드입니다. 다른 모드들은 Wakeup 시 시간이 너무 길고, 결정적으로 시스템 리셋이 되 버립니다.


[클럭당 DEEPSLEEP 모드의 전력 비교]