반응형 코스웨어/15년 스마트컨트롤러532 20150327-8번-김재홍-PIC16F917폴링카운터&atmega128a시리얼통신 버튼을 눌렀다가 때었을 때 숫자가 하나씩 올라가는 카운터를 PCI16F917을 이용해서 만들어 보겠습니다. 많이 사용되는 카운터입니다.인터럽트가 아닌 폴링 방식을 이용해서 만들 것입니다. 먼저 인터럽트Interrupt와 폴링Polling에 대해 알아보겠습니다.인터럽트Interrupt 방식이란?기계에 문제가 생겼을 때 알려주는 방식이다.비용이 비싸고, 따로 회로를 가지고 있다. Polling방식 보다 세련된 방식이다. 폴링Polling 방식이란?Polling은 Interrupt의 반대개념이다.기계에 문제가 생겼는지 계속 감시하는 방식이다. 책 ‘EMBEDDED RECIPES’의 489페이지를 인용해서 요약하면, Interrupt와 Polling Interrupt는 하드웨어적으로 Hardware의 변화를 감.. 2015. 3. 30. 20150326-7번 김성현 pic를 이용한 count up &down ,UART /* * File: iamthebest.c * Author: it * * Created on 2015? 3? 25? (?), ?? 11:31 */ #include #include #include "pic16f917.h" #define DELAY(X) for(uiCnt=0; uiCnt 2015. 3. 27. 20150326 USART_소스입니다. 2015. 3. 26. 20150325-6번-김성주-S/W-UCSRnA,B,C #define 설정 및 초기화 20150325-6번-김성주-S/WUCSRnA,B,C #define 설정 및 초기화 UCSRnA,B,C에 명령값을 주기 위한 #define 설정하면서 usart.c에 변수를 선언데이터시트 - 레지스트 서머리에서 UCSRnA,B,C을 확인 후 설명 페이지(P. 184)안에 명령에 맞게 usart.h에 define해준다. ※ 이때 n은 Number이기 때문에 생략을 하고 "UCSZn2" 같이 "n" 다음에 있는 숫자는 "n"만 생략된 "UCSZ2" 이런식으로 define 이름을 정한다.UCSR0A에 해당하는 #define값에 대한 설명 및 소스입력UCSR0B에 해당하는 #define값에 대한 설명 및 소스입력 UCSR0C에 해당하는 #define값에 대한 설명 및 소스입력 초기값 설정 후 main.c , s.. 2015. 3. 25. 20150325-6번-김성주-H/W-PIC16F917을 이용한 LED 점등 PIC16F917을 이용한 LED 점등 ※ 수업량이 많아서 H/W, S/W따로 올리겠습니다. 데이터시트 및 MPLAB® X IDE Product 다운로드www.microship.com에서 아래 그림과 같은 순서로 접근한다.MPLAB X IDE Language Tool Archives 다운로드다운 받은 파일(MPLAB X IDE product,MPLAB X IDE Language Tool Archives)를 설치한다. 아래 주의사항 말곤 설치하면 된다.주의사항1. MPLAB X IDE product에서 그림처럼 설정2. MPLAB X IDE Language Tool Archives(xc08-v1.33)설치시 아래항목 전부 체크설치 후 아래경로에 가면 PIC16F917의 .h파일이 있다.필요시 헤드파일을 참.. 2015. 3. 25. 20150324 4번 김민정 스마트 컨트롤러 - 시리얼 통신 UBRR register / 디지털 제어 - 가산기 실습 대비 및 회로도 연습 20150324 S/W 스마트 컨트롤러 - 시리얼 통신 UBRR register · Atmega 데이터 시트를 보고 Clock을 조정 할 수 있는 레지스터인 UBRR은 Baud Rate Generator을 조작하여 속도를 조절 할 수 있다. · UDR은 전송할 정보를 입력하면 Transmit Shift Register에 해당 정보를 전달한다. Shift Register라고 칭하는 이유 는 병렬식이 아닌 직렬식이기 때문에 데이터를 하나를 밀어서 전송하기 때문이다. · Shift Register 시리얼 통신을 하는 기기에서 보내는 쪽 받는 쪽 모두 필요 하다. · Shift Register라고 칭하는 이유는 병렬식이 아닌 직렬식이기 때문에 데이터를 하나를 밀어서 전송하기 때문이다 · Baud Rate Gen.. 2015. 3. 25. 20150323-3번-권오민 - 시험대비 정리(개인) / Serial Cable & USART 요 약H/WS/W◉시험대비 정리(개인)●반가산기●Orcad를 이용한 반가산기●전가산기●Orcad를 이용한 전가산기●전가산기 실습◉Serial Cable●버스의 직렬방식●반대 : 버스의 병렬방식◉하이퍼터미널●설정 및 데이터 전송하기◉ATMEGA128 Datasheet◉USART●특징●Block Diagram●ATMEGA128 USART●Source Coding ●오늘자 소스 H/W ◉시험대비 정리(개인)●반가산기입 력출 력XYCS0000010110011110논리식 유도 과정 ●Orcad를 이용한 반가산기●전가산기입 력출 력XYCin(Z)Cout(C)S0000000101010010111010001101101101011111논리식 유도 과정 ●전가산기 실습 S/W ◉Serial Cable●버스의 직렬방식- 버.. 2015. 3. 23. 20150320 주보건 소스파일 최적화는 10으로 잡았습니다 이하로내려가면 에러가납니다. 2015. 3. 23. 20150320-2번-강동조-발진회로&LCD문자표현 Hard ware 이승규 강사님 발진회로란? 외부로부터 가해진 신호에 의하지 않고 전원으로부터의 전력으로 지속되는 전기 진동(교류 전압 또는 전류)을 발생시키는 회로 발진회로 원리 ① 전원을 넣으면 공진회로에 공진 주파수의 진동이 발생한다. ② 이 일부가 입력측에 귀환한다(증폭기 입력이 된다). ③ 이 입력이 증폭되어 출력측에 나타난다. ④ 출력의 일부가 또 입력측에 귀환한다. ⑤ 이 같은 작용을 반복해 지속적인 일정주파수의 출력을 얻을 수 있다. 발진회로를 이용해 교류신호를 발생시키는 것 Soft ware 주수홍강사님 LCD.C #include "LCD.h" void LCD_AVR_PIN_INIT(void) { // DataBus 모두를 사용하기 위하여 0XFF로 값을 준다. LCD_BUS_DDR = .. 2015. 3. 20. 이전 1 ··· 47 48 49 50 51 52 53 ··· 60 다음 728x90 반응형