在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

基于51單片機(jī)數(shù)碼管動態(tài)時鐘電路圖原理圖

2oON_changxuemc ? 2019-09-17 09:36 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

首先準(zhǔn)備材料吧:SEG數(shù)碼管4個共陰極(小編用的共陽極的)、10k排阻(小編沒有直接做了個)、51單片機(jī)、按鈕、30p電容、12MHz晶振、10k電阻、10uf電容、插針、74ls245(小編用三極管代替了)。

成品圖

原理圖

主程序:

#include "Key.h"

#include "led.h"

uchar timeSetBuff[8]={'0','0',LED_MODE_COUNT,'0','0',LED_MODE_COUNT,'0','0'};//時鐘數(shù)據(jù)緩沖區(qū)

uchar alarmSetBuff[8]={'0','0',LED_MODE_ALARM,'0','0',LED_MODE_ALARM,'0','0'};//鬧鐘時間數(shù)據(jù)緩沖區(qū)

uchar timeDisMod=0x24; //00100100

uchar secondTemp,minuteTemp,hourTemp;

uchar secondAlarm,minuteAlarm,hourAlarm;

uchar timer0Temp;

uchar alarmKeyCount; //鬧鐘起停鍵計數(shù)

bit alarm_is_ok; //鬧鐘起停狀態(tài)

bit time_is_ok; //時間是否到

bit interface_mod; // 顯示界面模式,0為主時間界面,1為設(shè)置界面

/********************************************************************************************

* 函數(shù)名稱:定時器0

* 功 能:定時器0初始化

* 入口參數(shù):無

* 出口參數(shù):無

*********************************************************************************************/

void initTimer0(void) //定時10ms

{

TMOD |= 0x01; //GATE=0,TR=1運行;C/T=1,counter,0,timer;01十六進(jìn)制

TH0 = 0xdc;

TL0 = 0x00;

TR0 = 1; //timer0 控制位,為1時啟動timer0

ET0 = 1; //timer0 中斷使能

}

/********************************************************************************************

* 函數(shù)名稱:時鐘比較

* 功 能:比較時鐘和鬧鐘的時間緩沖區(qū),只比較時和分

* 入口參數(shù):無

* 出口參數(shù):無

*********************************************************************************************/

void timeCompare(void)

{

if((minuteTemp == minuteAlarm) && (hourTemp == hourAlarm))

{

time_is_ok = 1;

alarm_is_ok = 0;

interface_mod = 1;

}

}

/********************************************************************************************

* 函數(shù)名稱:主函數(shù)

* 功 能:調(diào)用并執(zhí)行各個子函數(shù)

* 入口參數(shù):無

* 出口參數(shù):無

*********************************************************************************************/

void main()

{

uchar keyRead;

init_led();

init_key();

initTimer0();

timer0Temp = 0x00;

secondTemp = 0x00;

minuteTemp = 0x00;

hourTemp = 0x00;

secondAlarm = 0x00;

minuteAlarm = 0x00;

hourAlarm = 0x00;

alarmKeyCount = 0x02;

alarm_is_ok = 0; //默認(rèn)狀態(tài)停止

time_is_ok = 0; //默認(rèn)時間未到

interface_mod = 0;

sei();

while(1)

{

if(interface_mod == 1)

ledSweepDisplay(alarmSetBuff,timeDisMod);

else

ledSweepDisplay(timeSetBuff,timeDisMod);

if(alarm_is_ok == 1)

timeCompare();

keyRead = get_key_value();

if(keyRead == KEY_ALARM)

{

if(alarm_is_ok == 1 || time_is_ok == 1)

{

alarm_is_ok = 0;

time_is_ok = 0;

interface_mod = 0;

alarmKeyCount = 0x00;

}

else

{

if(alarmKeyCount

alarmKeyCount++;

else

alarmKeyCount = 0x00;

if(alarmKeyCount == 0x01)

interface_mod = 1;

if(alarmKeyCount == 0x02)

{

alarm_is_ok = 1;

interface_mod = 0;

}

}

}

if(keyRead == KEY_SECOND)

{ if(interface_mod == 1)

{

if(secondAlarm

secondAlarm++;

else

secondAlarm = 0x00;

alarmSetBuff[S_L] = secondAlarm % 10 + '0';

alarmSetBuff[S_H] = secondAlarm / 10 + '0';

}

else

{

if(secondTemp

secondTemp += 1;

else

secondTemp = 0x00;

timeSetBuff[S_L] = secondTemp % 10 + '0';

timeSetBuff[S_H] = secondTemp / 10 + '0';

}

}

if(keyRead == KEY_MINUTE)

{ if(interface_mod == 1)

{

if(minuteAlarm

minuteAlarm++;

else

minuteAlarm=0x00;

alarmSetBuff[M_L]=minuteAlarm%10+'0';

alarmSetBuff[M_H]=minuteAlarm/10+'0';

}

else

{

if(minuteTemp

minuteTemp += 1;

else

minuteTemp = 0x00;

timeSetBuff[M_L] = minuteTemp % 10 + '0';

timeSetBuff[M_H] = minuteTemp / 10 + '0';

}

}

if(keyRead == KEY_HOUR)

{

if(interface_mod == 1)

{

if(hourAlarm

hourAlarm++;

else

hourAlarm = 0x00;

alarmSetBuff[H_L] = hourAlarm % 10 + '0';

alarmSetBuff[H_H] = hourAlarm / 10 + '0';

}

else

{

if(hourTemp

hourTemp += 1;

else

hourTemp = 0x00;

timeSetBuff[H_L] = hourTemp%10+'0';

timeSetBuff[H_H] = hourTemp/10+'0';

}

}

}

}

/*, */

/********************************************************************************************

* 函數(shù)名稱:定時器0中斷函數(shù)

* 功 能:定時器0溢出中斷入口處,定時10ms

* 入口參數(shù):無

* 出口參數(shù):無

*********************************************************************************************/

void timer0_overflow(void) interrupt 1

{

TH0 = 0xdc;

TL0 = 0x00;

if(time_is_ok == 1) //報警

WARN_TRUMPET = ~WARN_TRUMPET;

if(timer0Temp

timer0Temp++;

else //進(jìn)中斷100次

{

timer0Temp = 0x00;

if(secondTemp

{

secondTemp++;

}

else

{

secondTemp = 0x00;

if(minuteTemp

minuteTemp++;

else

{

minuteTemp = 0x00;

if(hourTemp

hourTemp++;

else

hourTemp = 0x00;

}

}

}

timeSetBuff[S_L] = secondTemp%10+'0';

timeSetBuff[S_H] = secondTemp/10+'0';

timeSetBuff[M_L] = minuteTemp%10+'0';

timeSetBuff[M_H] = minuteTemp/10+'0';

timeSetBuff[H_L] = hourTemp%10+'0';

timeSetBuff[H_H] = hourTemp/10+'0';

sei();

}

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 電路圖
    +關(guān)注

    關(guān)注

    10407

    文章

    10735

    瀏覽量

    541794
  • 51單片機(jī)
    +關(guān)注

    關(guān)注

    277

    文章

    5710

    瀏覽量

    126921
  • 數(shù)碼管
    +關(guān)注

    關(guān)注

    32

    文章

    1889

    瀏覽量

    92357

原文標(biāo)題:51單片機(jī)數(shù)碼管動態(tài)時鐘電路圖

文章出處:【微信號:changxuemcu,微信公眾號:暢學(xué)單片機(jī)】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    如何使用51單片機(jī)控制動態(tài)數(shù)碼管

    簡要地寫了如何使用51單片機(jī)控制動態(tài)數(shù)碼管的過程,內(nèi)含模塊信息、源代碼、原理圖等。
    發(fā)表于 11-18 06:03

    8051單片機(jī)數(shù)碼管電路圖

    8051單片機(jī)數(shù)碼管電路圖
    發(fā)表于 09-28 11:55 ?233次下載
    8051<b class='flag-5'>單片機(jī)</b><b class='flag-5'>數(shù)碼管</b><b class='flag-5'>電路圖</b>

    學(xué)51單片機(jī)數(shù)碼管部分

    帶您從零學(xué)51單片機(jī)數(shù)碼管部分 目錄1 數(shù)碼管應(yīng)用2 數(shù)碼管內(nèi)部結(jié)構(gòu)及硬件原理圖3
    發(fā)表于 02-10 14:36 ?155次下載

    8051單片機(jī)數(shù)碼管電路圖[1]

    8051單片機(jī)數(shù)碼管電路圖,感興趣的同學(xué)可以下載看看,免費的哦1
    發(fā)表于 10-29 15:10 ?44次下載

    51單片機(jī)原理圖

    51單片機(jī)數(shù)碼管、矩陣鍵盤、液晶顯示模塊原理圖DXP文件。
    發(fā)表于 05-10 10:36 ?0次下載

    使用51單片機(jī)實現(xiàn)數(shù)碼管顯示0到9的電路圖和C語言程序免費下載

    本文檔的主要內(nèi)容詳細(xì)介紹的是使用51單片機(jī)實現(xiàn)數(shù)碼管顯示0到9的電路圖和C語言程序免費下載。
    發(fā)表于 09-06 17:26 ?5次下載
    使用<b class='flag-5'>51</b><b class='flag-5'>單片機(jī)</b>實現(xiàn)<b class='flag-5'>數(shù)碼管</b>顯示0到9的<b class='flag-5'>電路圖</b>和C語言程序免費下載

    使用51單片機(jī)驅(qū)動數(shù)碼管顯示0到99的電路圖和C51程序免費下載

    本文檔的主要內(nèi)容詳細(xì)介紹的是使用51單片機(jī)驅(qū)動數(shù)碼管顯示0到99的電路圖和C51程序免費下載。
    發(fā)表于 08-22 17:30 ?15次下載
    使用<b class='flag-5'>51</b><b class='flag-5'>單片機(jī)</b>驅(qū)動<b class='flag-5'>數(shù)碼管</b>顯示0到99的<b class='flag-5'>電路圖</b>和C<b class='flag-5'>51</b>程序免費下載

    使用51單片機(jī)進(jìn)行數(shù)碼管動態(tài)顯示的程序免費下載

    本文檔的主要內(nèi)容詳細(xì)介紹的是使用51單片機(jī)進(jìn)行數(shù)碼管動態(tài)顯示的程序免費下載。1、設(shè)計要求在一個8位8段數(shù)碼管
    發(fā)表于 07-26 17:36 ?13次下載
    使用<b class='flag-5'>51</b><b class='flag-5'>單片機(jī)</b>進(jìn)行<b class='flag-5'>數(shù)碼管</b><b class='flag-5'>動態(tài)</b>顯示的程序免費下載

    如何使用51單片機(jī)使數(shù)碼管按一下鍵數(shù)碼管示數(shù)加一程序和電路圖

    本文檔的主要內(nèi)容詳細(xì)介紹的是如何使用51單片機(jī)使數(shù)碼管按一下鍵數(shù)碼管示數(shù)加一程序和電路圖免費下載。
    發(fā)表于 07-05 17:41 ?10次下載
    如何使用<b class='flag-5'>51</b><b class='flag-5'>單片機(jī)</b>使<b class='flag-5'>數(shù)碼管</b>按一下鍵<b class='flag-5'>數(shù)碼管</b>示數(shù)加一程序和<b class='flag-5'>電路圖</b>

    使用51單片機(jī)設(shè)計8位數(shù)碼管動態(tài)顯示的電路圖和程序免費下載

    本文檔的主要內(nèi)容詳細(xì)介紹的是使用51單片機(jī)設(shè)計8位數(shù)碼管動態(tài)顯示的電路圖和程序免費下載從12345678開始,每次按 S1鍵加1
    發(fā)表于 07-04 17:41 ?7次下載
    使用<b class='flag-5'>51</b><b class='flag-5'>單片機(jī)</b>設(shè)計8位<b class='flag-5'>數(shù)碼管</b><b class='flag-5'>動態(tài)</b>顯示的<b class='flag-5'>電路圖</b>和程序免費下載

    51單片機(jī)開發(fā)板實現(xiàn)6位數(shù)碼管數(shù)字時鐘的仿真電路圖免費下載

    本文檔的主要內(nèi)容詳細(xì)介紹的是51單片機(jī)開發(fā)板實現(xiàn)6位數(shù)碼管數(shù)字時鐘的仿真電路圖免費下載。
    發(fā)表于 04-10 08:00 ?20次下載
    <b class='flag-5'>51</b><b class='flag-5'>單片機(jī)</b>開發(fā)板實現(xiàn)6位<b class='flag-5'>數(shù)碼管</b>數(shù)字<b class='flag-5'>時鐘</b>的仿真<b class='flag-5'>電路圖</b>免費下載

    STC12C2052AD單片機(jī)控制的數(shù)碼管時鐘程序及電路圖

    STC12C2052AD單片機(jī)控制的數(shù)碼管時鐘數(shù)碼管是共陽4位時鐘數(shù)碼管,由于使用
    的頭像 發(fā)表于 09-18 17:12 ?1.2w次閱讀

    51單片機(jī)動態(tài)數(shù)碼管

    簡要地寫了如何使用51單片機(jī)控制動態(tài)數(shù)碼管的過程,內(nèi)含模塊信息、源代碼、原理圖等。
    發(fā)表于 11-11 20:06 ?15次下載
    <b class='flag-5'>51</b><b class='flag-5'>單片機(jī)</b>:<b class='flag-5'>動態(tài)</b><b class='flag-5'>數(shù)碼管</b>

    51單片機(jī)數(shù)碼管顯示學(xué)習(xí)筆記

    本實驗主要是了解51單片機(jī)數(shù)碼管連接的硬件電路圖以及軟件編程操作。
    發(fā)表于 06-23 15:02 ?2970次閱讀
    <b class='flag-5'>51</b><b class='flag-5'>單片機(jī)</b><b class='flag-5'>數(shù)碼管</b>顯示學(xué)習(xí)筆記

    基于51單片機(jī)數(shù)字時鐘數(shù)碼管顯示設(shè)計

    本資源內(nèi)容概要:? ? ? ?這是基于51單片機(jī)數(shù)字時鐘數(shù)碼管顯示設(shè)計包含了電路圖源文件(Altiumdesigner軟件打開)、C語言程序
    發(fā)表于 06-25 10:42 ?1次下載
    主站蜘蛛池模板: 亚洲成熟人网站 | 操美女免费视频 | 国产伦子一区二区三区四区 | 色.com| 亚洲夂夂婷婷色拍ww47 | 一级爱片 | 2021成人国产精品 | 久久成人国产精品免费 | 黄色免费在线网址 | 高h细节肉爽文男男 | www.xxxx欧美| 狠狠操狠狠 | 在线精品国产成人综合第一页 | 婷婷综合久久 | 椎名空中文字幕一区二区 | 久久久99精品免费观看精品 | 欧美高清成人 | 100000免费啪啪18免进 | 天天爽天天狼久久久综合 | 亚洲成在线 | 四虎在线最新永久免费 | 欧美视频不卡一区二区三区 | 色香视频首页 | 久久亚洲精品成人综合 | 欧美极品在线播放 | 视频在线观看高清免费看 | 四虎免费大片aⅴ入口 | aaa亚洲 | 日本不卡免费新一区二区三区 | tube44在线观看 | 国产成人精品视频一区二区不卡 | 欧美性猛交xxxx黑人喷水 | 六月婷婷在线观看 | 国产精品一区牛牛影视 | 欧美乱码视频 | 久久大伊人 | 中文字幕一区精品欧美 | 激情综合网站 | 午夜久久免费视频 | free性欧美高清另类 | 午夜欧美成人久久久久久 |