8051/PIC > DT516-041.c PWM 딜레이함수-포트

인기검색어 > 아두이노 센서 ATMEGA128

최신글 질문게시판 동영상강좌 가입하기

▼ BASIC4MCU 후원업체 신제품 정보 ▼

▲ BASIC4MCU 후원업체 신제품 정보 ▲

BASIC4MCU > 8051/PIC

DT-516 강좌 | DT516-041.c PWM 딜레이함수-포트

페이지 정보

작성자 키트 작성일17-08-22 14:54 조회364회 댓글0건

첨부파일

본문

3660040644_x7Zrqs5Y_p20110927_1000001265_ekit.jpg3Ftype3Dw7403660040644_V4DijPLr_p20110927_1000001263_ekit.jpg3Ftype3Dw7403660040644_zw8hXuIH_p20110927_1000001264_ekit.jpg3Ftype3Dw740

 

//-------------------------------------------------------------
// 82G516 E/V BOARD ( DT-516 )
//-------------------------------------------------------------
// XTAL : 22.1184Hz
//-------------------------------------------------------------
// filename: DT516-041.c
// PWM 딜레이함수-포트
//-------------------------------------------------------------
#include
//
#include "DT516-main.h"
//
CU_C Test_Data[3]={ 0xFE,0xBF,0xF7 };
//
void Timer_0_Interrupt(void) interrupt 1{  // 225Hz주기
    P4=0xFF; // FND OFF
    //
    if(Tcnt0<113)H_SecFlg=1;
    else         H_SecFlg=0;
    //
    if(++Tcnt0>=225){ Tcnt0=0; Sec++;
        if(Sec >=60){ Sec=0; Min++; }
        if(Min >=60){ Min=0; Hour++; }
        if(Hour>=24){ Hour=0; }
    }
    //
    switch(FND_CNT){
        case 0: P0=Seg_Data[Min/10]; FND_COM1=0; break;
        case 1: P0=Seg_Data[Min%10]; if(H_SecFlg)P07=0; FND_COM2=0; break;
        case 2: P0=Seg_Data[Sec/10]; FND_COM3=0; break;
        case 3: P0=Seg_Data[Sec%10]; FND_COM4=0; break;
    }
    if(++FND_CNT>3)FND_CNT=0;
    //
    if(delay_buf){ if(--delay_buf==0)delay_flg=1; }
}
//
void pwm_delay(U_I d){  
    U_I i,j;
    for(i=0;i
}
//
void main(){
    int i;
    P4=0xF0;
    while(1){
        for(i=0;i<=100;i++){ P1=0x00; P0=0xFF; pwm_delay(i); P1=0xFF; P0=0x00; pwm_delay(100-i); }
        for(i=0;i<=100;i++){ P1=0xFF; P0=0x00; pwm_delay(i); P1=0x00; P0=0xFF; pwm_delay(100-i); }
    }
};i++){>

//-------------------------------------------------------------

댓글 : 0

조회수 : 364

등록된 댓글이 없습니다.

게시물 검색

8051/PIC 목록

게시물 검색


Privacy Policy
MCU BASIC ⓒ 2017
PC버전