久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 3447|回復: 1
收起左側

MSP430實現定時器的源程序

[復制鏈接]
ID:436127 發表于 2018-11-30 22:00 | 顯示全部樓層 |閱讀模式
該程序使用到了TM1638,附件中有。
(上一篇文章中的程序包含了此程序的公共代碼部分,但是我忘了把 tm1638.h 放到附件里面了,這次補上)
定時器初值設為00:02:15,結束后重置為23:59:59

源の代碼:

#include "TM1638.h"
#include "msp430f6638.h"
#include "stdint.h"

uint8_t num[8];    //各個數碼管顯示的值
uint8_t led_flag[8];
const uint8_t tab[] = {0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F,0x77,0x7C,0x39,0x5E,0x79,0x00};

void init_port(void)
{
    P3DIR |= BIT5;
    P3DIR |= BIT4 + BIT2;

    P1DIR |= BIT0;    // ACLK set out to pins
    P1SEL |= BIT0;

}

const uint8_t tab2[] = {0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F,0x77,0x7C,0x39,0x5E,0x79,0x71};

void TM1638_Write(unsigned char DATA)   //寫數據函數
{
    unsigned char i;
    DIO_OUT;
    for(i=0;i<8;i++)
    {
      CLK_low;
      if(DATA & 0x01)
          DIO_high;
      else
          DIO_low;
      CLK_high;
      DATA>>=1;
    }
}

unsigned char TM1638_Read(void)     //讀數據函數
{
    unsigned char i;
    unsigned char temp=0;
    DIO_IN;
    STB_low;
    for(i=0;i<8;i++)
    {
          temp>>=1;
          CLK_low;
          _delay_us(100);
          if(DIO_READ)
              temp |= 0x80;
          else
              temp &= 0x7f;
          CLK_high;
    }
    return temp;
}

void Write_COM(unsigned char cmd)  //發送命令字
{
    CLK_high;
    STB_high;
    STB_low;
    TM1638_Write(cmd);
    STB_high;
}



void Write_DATA(unsigned char add,unsigned char DATA)  //指定地址寫入數據
{
    Write_COM(0x44);
    STB_low;
    TM1638_Write(0xc0|add);
    TM1638_Write(DATA);
    STB_high;
}

void init_TM1638(void)
{
    unsigned char count = 0;
    unsigned char times = 1;
    while(times--){
        Write_allLED(tab2[count]);
        count++;
        if(count == 16)
            count = 0;
        _delay_ms(100);
    }
    Write_allLED(0xff);
    _delay_ms(100);
    Write_allLED(0);
}

void delay(){
    for (int i=0; i<10; i++)
      for (int j=0; j<1000; j++);
}


void  Write_allLED(unsigned char DATA){
    unsigned char i;
    Write_COM(0x8F);//顯示控制
    Write_COM(0x40); //數據命令
    STB_low;
    TM1638_Write(0xc0);
    for(i=0;i<16;i++)
    TM1638_Write(DATA);
    STB_high;
}


int main(void)
{

    WDTCTL = WDTPW+WDTHOLD;
    init_port();
    init_TM1638();
        
    int hourA = 0;
    int hourB = 0;
    int minuteA = 0;
    int minuteB = 2;
    int secondA = 1;
    int secondB = 5;
        
    while(1) {
        secondB--;
        if(secondB == -1) {
            secondB = 9;
            secondA--;
            if(secondA == -1) {
                secondA = 5;
                minuteB--;
                if(minuteB == -1) {
                    minuteB = 9;
                    minuteA--;
                    if(minuteA == -1) {
                        minuteA = 5;
                        hourB--;
                        if(hourB == -1) {
                            hourB = 9;
                            hourA--;
                            if(hourA == -1) {
                                hourA = 2;
                                hourB = 3;
                            }
                        }
                    }
                }
            }
        }

        Write_DATA(4*2,tab[hourA]);
        Write_DATA(5*2,tab[hourB]);
        Write_DATA(6*2,tab[15]);
        Write_DATA(7*2,tab[minuteA]);
        Write_DATA(0*2,tab[minuteB]);
        Write_DATA(1*2,tab[15]);
        Write_DATA(2*2,tab[secondA]);
        Write_DATA(3*2,tab[secondB]);

        delay();

    }
   
}


sy2-3-1.zip

1.94 KB, 下載次數: 7, 下載積分: 黑幣 -5

定時器

評分

參與人數 1黑幣 +50 收起 理由
admin + 50 共享資料的黑幣獎勵!

查看全部評分

回復

使用道具 舉報

ID:436127 發表于 2018-11-30 22:17 | 顯示全部樓層
補充說明一下,主函數中的delay是我自己寫的,是為了便于調試,并沒有真正起到延時1s的作用
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 天天摸天天看 | 国产精品久久久久久二区 | 99久久婷婷国产亚洲终合精品 | 高清免费在线 | 精品欧美一区二区久久久伦 | 欧美一级欧美三级在线观看 | 天天操,夜夜爽 | 麻豆精品国产免费 | 日韩欧美综合在线视频 | 欧美日韩综合精品 | 欧美视频在线一区 | 国产一卡二卡三卡 | 国产欧美在线一区二区 | 一级毛片视频免费观看 | 欧美黑人激情 | h视频在线观看免费 | 日韩中字幕| 国产欧美一区二区三区在线看 | 九九视频在线观看视频6 | 女女百合av大片一区二区三区九县 | 日韩电影中文字幕在线观看 | 午夜羞羞| 欧美一区二区三区国产精品 | 夜夜艹 | 91精品国产91久久久久福利 | 久久毛片网站 | 成人在线精品视频 | 看片天堂| 99久久精品国产麻豆演员表 | 亚洲精品国产偷自在线观看 | 在线视频a | 国产精品一区二区三区久久 | 狠狠操天天干 | 久久一区二区三区四区五区 | 国产精品久久国产精品久久 | 特黄特黄a级毛片免费专区 av网站免费在线观看 | 国产成人精品一区二区三区四区 | 久久久久一区 | 草草在线观看 | 国产一区二区三区免费观看视频 | 成人不卡视频 |