新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > ATmega16L-定時器數碼管掃描

        ATmega16L-定時器數碼管掃描

        作者: 時間:2012-08-22 來源:網絡 收藏
        /****************************************用維持數碼管顯示現在是數碼管示數不斷增加。****************************************/#include iom16v.h>unsigned int cnt;unsigned char shu[8];unsigned char aa;const unsigned char duanma[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};const unsigned char weima[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f};/***************************************數據轉換子函數***************************************/void change(unsigned int i){shu[0]=duanma[i/1000];shu[1]=duanma[i/100%10];shu[2]=duanma[i%100/10];shu[3]=duanma[i%10];}/****************************************延時函數****************************************/void delay(unsigned int t){unsigned int x,y;for(x=t;x>0;x--)for(y=100;y>0;y--);}/****************************************顯示函數****************************************/void display(unsigned char i){PORTB =0X00;PORTA|=0X01;PORTA=0XFE;PORTB =weima[i];PORTA|=0x02;PORTA=0XFD;PORTB=shu[i];PORTA|=0X01;PORTA=0XFE;}/***************************************端口初始化***************************************/void init_port(void){PORTA=0XFF;DDRA=0XFF;PORTB=0XFF;DDRB=0XFF;}/***************************************0初始化***************************************/void timer0_init(void){TCNT0=0X83; //1MS的定時初值TCCR0=0X03; //的計數預分頻取64}/***************************************定時器0服務函數***************************************/#pragma interrupt_handler timer0_ovf_isr:10void timer0_ovf_isr(void){TCNT0=0X83; //重裝1ms的定時初值if(++aa>3) aa=0;switch(aa){case 0: display(0);break;case 1: display(1);break;case 2: display(2);break;case 3: display(3);break;default:break;}}void main(void){init_port();   //IO端口初始化timer0_init(); //定時器1初始化 TIMSK=0X01;    //使能T0中斷 SREG=0X80;     //使能總中斷while(1){cnt++;delay(1000);change(cnt);}}


        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 惠水县| 通州区| 沂源县| 大邑县| 获嘉县| 东乌| 天全县| 博野县| 剑阁县| 阿瓦提县| 伊金霍洛旗| 加查县| 通州区| 肥乡县| 闸北区| 团风县| 巩义市| 丹阳市| 苏尼特左旗| 岐山县| 渑池县| 新沂市| 同德县| 昌江| 赤水市| 政和县| 五寨县| 潼南县| 抚远县| 合作市| 防城港市| 泽州县| 荆门市| 海原县| 涿州市| 安陆市| 咸丰县| 青神县| 元阳县| 鲁甸县| 清水县|