Page 888 - 완) I MDP 프로젝트 작품 보고서(전체과 1학년)1.6
P. 888
-uVision IDE4 : 통합개발환경, 디버거, 시뮬레이터
-Real-Time Operating System RTX Kernel 제공 – 소스코드 포함
-ULINKpro를 이용한 Cortex-M3 인스트럭션 분석 – on-the-fly 분석
-프로그램 실행에 대한 완벽한 Code Coverage 정보
-프로그램 최적화를 위한 실행 프로파일러 및 퍼포먼스 어널라이저
-Device Database를 통한 각 디바이스별 스타트업 코드 제공
-다양한 어플리케이션 예제
-CMSIS(Cortex Microcontoller Software Interface Standard) 적용
나. 소스
자동분류시스템에서는 각종 센서들을 이용하여 물체를 감지하고 스텝모터를 이용하여 물체를
분류하여 LCD에 디스플레이함과 동시에 라즈베리파이와 USART통신한다. 센서들을 사용하기
위하여 외부인터럽트를 활성화 시켜주어 센싱한 값을 받고 ADC를 이용하여 압력센서의 값을
받아들인다. 또한, 타이머를 사용하여 pwm을 생성해 서보모터를 구동시킨다.
#include "stm32f10x.h"
#include "GLCD.h"
#include "USART.h"
#include <stdint.h>
volatile unsigned int AD_value=0; // ADC변환값
volatile unsigned int S1=2, S2=0, PS=0, i, a=0; // 모터제어변수
volatile unsigned int P2=0, P=0, A2=0, A=0, I2=0, I=0, G2=0, G=0;
// 물체개수확인변수
volatile unsigned int four, three, two, one; // 압력센서 수치화
volatile unsigned int CCR1_Val = 500; // pwm설정
volatile unsigned int pwmval; // pwm값
EXTI_InitTypeDef EXTI_InitStructure;
void GPIO_Configuration(void)
{
/* ADC 설정 */
GPIO_InitTypeDef GPIO_InitStructure;
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_0; // GPIOA 0번 사용
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AIN; // 입력 모드 설정
- 881 -