회원가입 ID/PW 찾기
AA
#include <mega128.h> // mega128 헤더파일 사용

unsigned int cnt=0, sec=0; // cnt 와 sec를 int 형으로 선언
Byte *ptr;
char E_Welcom[]="2006142033/r/n";
char H_Welcom[]="2006124001";

interrupt [USART0_DRE] void usart0_transmit(void)
{
    UDR0 = *ptr;
    ptr++;
if(*ptr==0)
{
if(count==0)
{
ptr=E_Welcom;
}
else
{
ptr=H_Welcom;
}
}
}

void Init_USART0(void)
{
UCSR0B = (1<<RXCIE0) | (1<<UDRIE0) | (1<<RXEN0) | (1<<TXEN0);
UCSR0A = 0X00;
UCSR0C = 0X06;
UBRR0H = 0X00;
UBRR0L = 0X07;
SEI();
}

void InterTimer_init(void) //타이머 초기화 함수.
{   
    TCCR0 |= (1<<WGM01); //CTC모드로 설정
    TCCR0 |= (1<<CS01)|(1<<CS00)|(1<<CS02); //1024분주 프리스케일러
    OCR0 = 143;             //14.7456MHz/1024분주 /(1+143) = 100Hz =10ms 마다 출력 비교를 한다
    TIMSK = (1 << OCIE0); //타이머/카운터0 출력 비교 인터럽트 허가
    SREG |= 0x80; //타이머/카운터0 출력 비교 인터럽트 허가
}

interrupt[TIM0_COMP] void Clock_timer(void) //10ms마다 인터럽트 발생
{      
    cnt++; //cnt 1 증가
    if(cnt == 100) //cnt가 100이 되었을때 조건문 안에 명령 수행
    {   
        cnt = 0; //cnt를 0으로 초기화하고   
        sec++; //sec 1증가
    }
}                            

void main(void)
{
    Init_USART0();
    InterTimer_init(); //인터럽트,타이머 초기화 함수 호출
    ptr =0;
    
    while(1)
    {  
if(sec)
{
  if(sec%2==0)
  {
     ptr=E_Welcom;
  }
  else
  {
     ptr=H_Welcom;
      }
        }
    }
}  
   1교간격으로 2011와 2012가 교대로 출력되는 소스를 구현했는데 안되네요 ㅠ
   출력은 하이퍼터미널로 확인합니다.
댓글 1
  • No Profile

    자세한 소스 분석보다는 바꾸면 좋겠는 것을 알려 드립니다.

    1. uart 송신을 인터럽트가 아닌 폴링으로 처리하면 좋겠구요,

    2. 타이머 클럭을 32.768kHz 로 사용하면 좋겠네요,, 없으면 ...

하드웨어 설계 및 개발에 대하여 개발자들이 자유롭게 토론하는 공간입니다.
- Q&A, 자유주재 토론, 관련 정보 공유
- 분야 : 마이크로프로세서 응용, 전기/전자(아날로그/디지털) 회로 설계, C/C++ 프로그래밍, 펌웨어,
         PCB Artwork, 트러블슈팅 등 하드웨어 설계에 관한 전반인 내용
※ 게시글에 맞는 분류를 선택하여 글을 작성해 주시면 쾌적한 사이트 운영에 많은 도움이 됩니다.
※ 하드웨어 인사이트는 회원들간의 거래정보를 게재할 뿐이지, 그 어떤 책임과 의무도 가지지 않습니다.

search
번호 분류 제목 글쓴이 조회 수 날짜
22 ECAD Simulation HOTPSpice로 이 회로를 만드는 방법1 -2420 667 2020.10.21
21 ECAD Simulation Pspice 소자문 질문입니다1 sfde 233 2020.09.08
20 ECAD Simulation 대역폭을 구하려고 하는데1 풍둥이 174 2016.10.19
19 ECAD Simulation HOTPspice로 서미스터 회로 도면 작성 중 질문드립니다. 풍둥이 433 2016.09.30
18 ECAD Simulation 회로시뮬레이션3 wjddmltn23 376 2014.05.07
17 ECAD Simulation oracad 라이브러리 질문입니다.1 웨라러브 358 2012.09.26
16 ECAD Simulation HOTorcad 소자 edit 하려는데요^^2 웨라러브 516 2012.07.26
15 ECAD Simulation HOTorcad pspice 질문입니다.3 강도랑 524 2012.05.15
14 ECAD Simulation HOTPspice에는 OTA소자가 없나요??1 조효 486 2012.02.29
13 ECAD Simulation Pspice에는 OTA소자가 없나요?? 조효 328 2012.02.29
12 ECAD Simulation HOTOTA소자 부품판매하나요?2 조효 533 2012.02.13
11 ECAD Simulation HOTPSPICE 질문좀 드릴께요1 WOW 1665 2010.10.14
10 ECAD Simulation HOTorcad 파형 볼때 counter.olb에 있는 라이브러리에 대해서요..1 노뜨라인 1740 2010.10.08
9 ECAD Simulation HOT이런 오류가 날때 어떻게 해야 하죠??? ㅠㅠ;;;4 owen 1118 2010.09.25
8 ECAD Simulation HOT회로자체가 구성이 안되는지 계속 오류가 납니다.(구형파-> 4017counter)2 노뜨라인 2413 2010.07.25
7 ECAD Simulation HOTDependent Source를 Psipce에 그리는방법...1 참치통조림 2300 2010.06.29
6 ECAD Simulation HOTPSPICE 소자값을 문자로 입력하기1 Glory 2014 2010.05.31
5 ECAD Simulation HOTpspice 버전 추천 좀2 circuit 1616 2010.03.15
4 ECAD Simulation HOT피스파이스 계단파 넣기 ch보자 3009 2010.03.13
3 ECAD Simulation HOT이전버전9.x, 10.x를 Vista나 XP에서 사용하기3 아크마 5588 2009.12.29
  • 건강은 유일무이의 보배이며, 이것을 얻기 위해서는 생명 자체까지 내던진다.
    - 몽테뉴
  • * 납포인트 정보 *
  • 글 작성 : 3
  • 댓글 작성 : 1
  • 내 글이 추천받음 : 1
저작권법에 위배되는 콘텐츠는 등록 불가하며, 저작물에 대한 권리는 저작자에게 있습니다.
Copyright 2006-2021 © hardwareis.com, All rights reserved.