개발 110

CC2540 TX Power Control

CC2540의 TX 파워를 제어할수가 있다... 물론 파워를 제어하는 이유는 배터리를 좀더 오래쓰기 위함이다. 반면에 파워가 약하면 인식하는 거리가 짧아지는 것은 당연!!! 해당 API는 아래와 같다. HCI_EXT_SetTxPowerCmd(parameter); parameter에는 4가지 종류가 있다. 그외에는 의미가 없다는 TI 답변이다. 단 TX 파워는 Initial 과정에서 단 한번만 설정이 가능하다... 코드 상에서 마음데로 파워를 줄였다 늘렸다 할수 없다... 즉, initial과정에서 한번만 셋팅되면 프로그램 상에서 재 셋팅이 안된다는 말이다.

개발/BLE 2016.06.30

CC2540 Direct Connect

Central과 Peripheral간의 고유 어드레스를 알고 있으면 다른 디바이스들의 방해를 받지 않고 다이렉트로 컨넥트 할수 있다. 이는 주변의 많은 BLE 기기들이 존재할시에 유용하게 사용할수 있는 기능이다. 아래는 예제 코드와 참조 주소. 여기 uint8 desired_adv_event_type = GAP_ADTYPE_ADV_DIRECT_IND; uint8 desired_adv_direct_addr[] = { /* Central의 보드 어드레서 */ , LSB 0x3C, 0x2D, 0xB7, 0x85, 0xEE, 0xFE }; GAPRole_SetParameter( GAPROLE_ADV_EVENT_TYPE, sizeof( uint8 ), &desired_adv_event_type ); GAPRole..

개발/BLE 2016.06.30

CC2541 Sleep/Normal Mode Control API

CC2541 슬립및 노말 모드제어를 위해 사용되는 API 기본적인 DEV 소스 코드상에는 BLE 관련한 태스크 이벤트가 발생하지 않을경우최대 400ms 이후에는 강제로 슬립으로 들어간다. 따라서 400ms 이상 제어되는 일반 로직인경우 예를 들어 부저를 1초동안 울린다거나 등등의 기능을 수행할경우 400ms 이후에는 강제로 슬립이 진입되기 때문에 슬립진입을 막아야 한다. 방법은 아래 API를 사용하면됨. 1. 슬립진입 osal_pwrmgr_device( PWRMGR_BATTERY ) 2. 노말상태유지 osal_pwrmgr_device( PWRMGR_ALWAYS_ON );

개발/BLE 2016.06.29

MCU 이해하기 -실무자 이야기

안녕하십니까,MCU 이해하기글을 쓰게된 이유는 실무에서 많은 어려움을 격고 있는 사회 초년생들 또는 MCU에 직접 프로그래밍을 해보고 싶다는 사람들에게 보다 쉽게 접근할수 있도록 하기 위합니다. 우선 저는 전문가는 아닙니다, 다만 다년간의 경험을 누구나 쉽게 이해할수 있도록 눈높이를 낮춰 쉽게 설명하고자 합니다. MCU가 역사가 어쩌구 저쩌구는 실무에 아무 도움이 안됩니다. 우선 가장 흔희 접할수 있고 쉽게 샘플을 구할수 있는 Microchip사의 제품을 예로 들어 설명하겠습니다. MCU는 한가지만 제대로 이해하면 나머지는 용어가 다를뿐 사용하는 방법은 거의 비슷합니다. MCU는 전자 장치를 구동하기 위한 프로그램을 내장하여 프로그래머가 의도한 대로 어떠한 목적을 수행하기 위한 핵심 부품입니다. 예를들어..

개발/MCU 2016.05.25