본문 바로가기

보고서/10월 업무일지

10월 21일 업무일지

 <source insight>

ATmega 의 함수들을 살펴보았다.

DDRF=0xFF;

단계별로 정의


#define DDRF      _SFR_MEM8(0x61)

#define _SFR_MEM8(mem_addr) _MMIO_BYTE(mem_addr)

#define _MMIO_BYTE(mem_addr) (*(volatile uint8_t *)(mem_addr))

1)_SFR_MEM(0x61)=0xFF;

2)_MMIO_BYTE(0x61)=0xFF;

3)(*(volatile uint8_t *)(0x61))=0xFF;


#include <stdio.h>

int main()
{
  short snum=5,*sp=&snum;
  float fnum=2.3f, *fp=&fnum;
  printf("sp의 값: %p\n",sp);
  printf("증가된 sp의 값: %p\n",++sp);
  printf("fp의 값: %p\n",fp);
  printf("증가된 fp의 값: %p\n",++fp);
  return 0;
}

포인터 연산은 자기자신의 크기 연산이다.

B+4= 4칸이동

B-1= 앞으로 한칸이동

크기만큼 칸 이동을 나타 내는 것이다.

 


#include <stdio.h>

int main()
{
  int score;
  char name[10];
  FILE *fpin, *fpout;

  fpin=fopen("d0327.in","r");
  fpout=fopen("d0327.out","w");

  while(!feof(fpin))
  {
    fscanf(fpin, "%s %d",name,&score);
    printf("%s\t%d\n",name,score);
    fprintf(fpout, "%s\t%d\n",name,score);
  }
  fclose(fpin);
  fclose(fpout);
  return 0;
}

파일을 불러서 출력하는 프로그램이다.
 

'보고서 > 10월 업무일지' 카테고리의 다른 글

10월 25일 업무일지  (0) 2010.10.25
10월 22일 업무일지  (0) 2010.10.22
10월 20일 업무일지  (0) 2010.10.20
10월 20일 ATMEGA  (0) 2010.10.20
10월 19일 업무일지  (0) 2010.10.19