검색결과 리스트
글
망고 z1보드 컴파일러 설정 문제
이번엔 망고 z1으로 zigbee를 이용한 데모보드를 작업하게 되었다.
http://crztech.iptime.org:8080/Release/mango-Z1/src/ 여기서 소스다운로드
http://www.mangoboard.com/ 는 회로도
근디 시작부터 컴파일 에러..헉..... 고객님 당황하셨어요???
IAR 6.1까지는 괜찬은데..난 6.3
요렇게..
결국 설정문제
1. option 에서 General Options -> Library Configuration 에 보면 전에 없던 CMSIS 체크부분이 있습니다 . 이부분을 체크
2. st제공 Libraries\CMSIS\Core\CM3에서 core_m3.c .h 인가 st 라이브러리에 있는 cmsis 파일 지우거나 해야됩니다
끝...
[출처] 라이브러리 컴파일 에러 (Embedded Crazy Boys) |작성자 qyan
[출처] 라이브러리 컴파일 에raries러 (Embedded Crazy Boys) |작성자 qyan
'CPU > STM32F103' 카테고리의 다른 글
ADC Polling Mode 사용 (0) | 2014.04.15 |
---|---|
REMAP 기능 ( PB4 핀 GPIO사용위함) (1) | 2014.04.13 |
STOP MODE 설정방법 (0) | 2014.04.13 |
EXTI (외부인터럽트 설정) (0) | 2014.04.13 |
Introducing to STM32 ADC programming(Internal Temperature Sensor) (0) | 2014.04.12 |
설정
트랙백
댓글
글
ADC Polling Mode 사용
이번엔adc를 폴링 모드로 사용해보자.
32F103C8T6 CPU의 PA0( ADC12_IN0 ) 포트로 전압을 읽어 보자
VREF는 핀수가 많은 칩은 VREF핀이 따로 나오지만 C8칩은 VDDA , VSSA와 VREF가 내부적으로 연결 되어 있따.
설정은 다음과 같다.
1. GPIO 설정
2. CLOCK설정
3. ADC 설정
void ADC2_volt_Configuration(void)
{
ADC_InitTypeDef ADC_InitStructure;
GPIO_InitTypeDef GPIO_InitStructure;
//====================================
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_0;
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AIN;
GPIO_Init(GPIOA, &GPIO_InitStructure);
/* Enable ADC2 and GPIOC clock */
RCC_APB2PeriphClockCmd(RCC_APB2Periph_ADC2 , ENABLE);
/* ADC2 configuration ------------------------------------------------------*/
ADC_InitStructure.ADC_Mode = ADC_Mode_Independent;
ADC_InitStructure.ADC_ScanConvMode = DISABLE;
ADC_InitStructure.ADC_ContinuousConvMode = DISABLE;
ADC_InitStructure.ADC_ExternalTrigConv = ADC_ExternalTrigConv_None;
ADC_InitStructure.ADC_DataAlign = ADC_DataAlign_Right;
ADC_InitStructure.ADC_NbrOfChannel = 1;
ADC_Init(ADC2, &ADC_InitStructure);
/* ADC2 regular channel12 configuration */
ADC_RegularChannelConfig(ADC2, ADC_Channel_0, 1, ADC_SampleTime_41Cycles5);
/* Enable ADC2 */
ADC_Cmd(ADC2, ENABLE);
/* Enable ADC2 reset calibaration register */
ADC_ResetCalibration(ADC2);
/* Check the end of ADC21 reset calibration register */
while(ADC_GetResetCalibrationStatus(ADC2));
/* Start ADC2 calibaration */
ADC_StartCalibration(ADC2);
/* Check the end of ADC1 calibration */
while(ADC_GetCalibrationStatus(ADC2));
}
사용법은 요렇게. VDDA가 3.3V
uint16_t ADC2_vold_Read(void)
{
uint16_t AD_value;
ADC_SoftwareStartConvCmd(ADC2, ENABLE);
//wait for conversion complete
while(!ADC_GetFlagStatus(ADC2, ADC_FLAG_EOC)){}
//read ADC value
AD_value=ADC_GetConversionValue(ADC2);
//clear EOC flag
ADC_ClearFlag(ADC2, ADC_FLAG_EOC);
return AD_value;
}
끝
'CPU > STM32F103' 카테고리의 다른 글
망고 z1보드 컴파일러 설정 문제 (0) | 2014.05.19 |
---|---|
REMAP 기능 ( PB4 핀 GPIO사용위함) (1) | 2014.04.13 |
STOP MODE 설정방법 (0) | 2014.04.13 |
EXTI (외부인터럽트 설정) (0) | 2014.04.13 |
Introducing to STM32 ADC programming(Internal Temperature Sensor) (0) | 2014.04.12 |
설정
트랙백
댓글
글
REMAP 기능 ( PB4 핀 GPIO사용위함)
이번에는 REMAP를 해보겠습니다.
왜 하냐??? PB4핀이 움직이지 않아서 확인 해보았더니...JTAG기능으로 우선되어 있더군요.
NJTRST로 되어 있는 것을 PB4로 사용하기 위해서는 REMAP를 해주어야 합니다.
MCU_GPIO_Configuration();
/* Configure PC13.PA11 in interrupt mode */
EXTI15_10_Config();
GPIO_PinRemapConfig(GPIO_Remap_SWJ_NoJTRST, ENABLE); // it's for PB4 PIN( org is NJTRST pin) , it have to locate last after gpio config.
순서는 GPIO를 초기화 후 마지막에 해주어야 됩니다. 먼저 해주니 움직이지 않는 군요.
경우엔 따라서 JTAG전체 핀을 사용해야 되는 경우도 생기겠죠?
그럴때 아래와 같이
GPIO_PinRemapConfig(GPIO_Remap_SWJ_Disable , ENABLE);
요렇게 하거나 아래의 것을 참보하여 하면 됩니다.
#define GPIO_Remap_SWJ_NoJTRST ((uint32_t)0x00300100) /*!< Full SWJ Enabled (JTAG-DP + SW-DP) but without JTRST */
#define GPIO_Remap_SWJ_JTAGDisable ((uint32_t)0x00300200) /*!< JTAG-DP Disabled and SW-DP Enabled */
#define GPIO_Remap_SWJ_Disable ((uint32_t)0x00300400) /*!< Full SWJ Disabled (JTAG-DP + SW-DP) */
아래 디볼트 세팅에 관한 부분입니다. PB4가 기본 JNTRST고 리멥하면 PB4로 쓸수 있는 구조네요...
잘 만들었네요...
그럼
'CPU > STM32F103' 카테고리의 다른 글
망고 z1보드 컴파일러 설정 문제 (0) | 2014.05.19 |
---|---|
ADC Polling Mode 사용 (0) | 2014.04.15 |
STOP MODE 설정방법 (0) | 2014.04.13 |
EXTI (외부인터럽트 설정) (0) | 2014.04.13 |
Introducing to STM32 ADC programming(Internal Temperature Sensor) (0) | 2014.04.12 |