==========================================================================================

네트워크 

==========================================================================================

<C>

=

#include <stdio.h>
#include <stdlib.h>

int main()
{
    
char * cP;
    
int iNum;
    
int i;
    
int j;

    scanf(
"%d",&iNum);
    getchar();
    cP 
= malloc(iNum+1);
    
for(i = 0 ; i<iNum ; ++i)
        *(cP+i) 
= getchar();

    
for(i = iNum-1; i>=0; --i)
    {
        
if(' '==(*(cP+i)))
        {
            j 
= i+1;
            
while((' '!= (*(cP + j)))&&(iNum != j))
            {
                putchar(*(cP+j));
                ++j;
            }
            putchar(
' ');
        }
        
else if(0 == i)
        {
            j 
= 0;
            
while((' '!= (*(cP + j)))&&(iNum != j))
            {
                putchar(*(cP+j));
                ++j;
            }

            putchar(
' ');
        }
    }
    putchar(
'\n');
    free(cP);
    
return 0;
}






=




=파일분할

=헤더파일 

#include

=절대경로/상대경로

- root

=중복선언 방지

#ifndef __파일이름_H__

#define __파일이름_H__

...

#endif//__파일이름_H__


=가변인자 매개변수 선언 / 전달된 인자 추출


#include <stdio.h>
#include <stdarg.h> //--0: 헤더 선언

int Sum(int n,...);

int main(void)
{
    printf(
"1+2=%d \n", Sum(2,1,2));
    printf(
"1+2+3=%d \n", Sum(3,1,2,3));
    printf(
"1+2+3+4=%d \n", Sum(4,1,2,3,4));
        
    
return 0;
}

int Sum(int n, ...)
{
    
int sum = 0;
    
int i;
    va_list vlist;   
//--1: 가변인자의 참조자 선언

    va_start(vlist,n);  //--2: 참조 대상과 범위 지정
    for(i=0; i<n; ++i)
        sum +
= va_arg(vlist, int);  //--3: 값 추출

    va_end(vlist);  //--4: 해 제
    return sum;
}







=연결리스트

#include <stdio.h>
#include <stdlib.h>

typedef struct _node
{
    
int iNum;
    
struct _node * stNext; //자기참조포인터(*없으면 이론상 무한대 크기)
}node;

int main()
{
    node * head 
= 0;

    head 
= malloc(sizeof(node));
    head-
>iNum = 100;
    head-
>stNext =  malloc(sizeof(node));   

    head-
>stNext->iNum = 200// LINKED LIST(연결리스트) : 목록
    head->stNext->stNext = 0// END -  접지 

    free(head->stNext); // 반드시 끝에서부터 free
    free(head);
    
return 0;
}





- LINKED LIST


==========================================================================================

AVR

==========================================================================================

=AVR2560



= 가변저항 값 변경시 전압 변경 안되는 현상 수정

<ADC.C>






=결과 

-( ADCH 먼저 읽으면 값 변경 안됨 )





-( ADCL 먼저 읽으면 값 변경 됨 )




=조도센서





<LCD.C>




<MAIN.C>




=결과





<<

=SERIAL 통신 안되는 환경에서 DATA들어오는지 LED연결해서 확인하는 법



=PWM (방향키 UP : LED 밝게 / DOWN : LED 어둡게)



=RTC ( REAL TIME CLOCK) : 시간정보출력

>>





==시험

-온도 및 조도 정보의 ADC 변환 기술 능력 평가

-Character LCD 제어 능력 평가

-시리얼 통신에 대한 처리능력 평가


=필기

-A/D

1.  A/D 레지스터

2.  입력버퍼 소비전력 절약

3.  동작설정 / 상태표시

4.  변환오차

5.  잡음제거

6.  USART 레지스터

7.  UBRR 계산

8. 

9.

10. 


=실기

-ADC 변환 기술, Character LCD제어, 시리얼통신

Character LCD TIMING 차트보기




'2015 스마트 콘트롤러 > 업무일지' 카테고리의 다른 글

20150511  (0) 2015.05.11
20150508  (0) 2015.05.08
20150506  (0) 2015.05.06
20150504  (0) 2015.05.04
20150501  (0) 2015.05.01
Posted by ahj333
,