精品国产人成在线_亚洲高清无码在线观看_国产在线视频国产永久2021_国产AV综合第一页一个的一区免费影院黑人_最近中文字幕MV高清在线视频

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

如何使用單片機制作一個手動計數器

Wildesbeast ? 來源:單片機教程網 ? 作者:單片機教程網 ? 2020-05-16 11:49 ? 次閱讀

1.實驗任務

利用AT89S51單片機來制作一個手動計數器,在AT89S51單片機的P3.7管腳接一個輕觸開關,作為手動計數的按鈕,用單片機的P2.0-P2.7接一個共陰數碼管,作為00-99計數的個位數顯示,用單片機的P0.0-P0.7接一個共陰數碼管,作為00-99計數的十位數顯示;硬件電路圖如圖19所示。

2.電路原理

圖4.10.1

3.系統板上硬件連線

(1. 把“單片機系統”區域中的P0.0/AD0-P0.7/AD7端口用8芯排線連接到“四路靜態數碼顯示模塊”區域中的任一個a-h端口上;要求:P0.0/AD0對應著a,P0.1/AD1對應著b,……,P0.7/AD7對應著h。

(2. 把“單片機系統”區域中的P2.0/A8-P2.7/A15端口用8芯排線連接到“四路靜態數碼顯示模塊”區域中的任一個數碼管的a-h端口上;

(3. 把“單片機系統”區域中的P3.7/RD端口用導線連接到“獨立式鍵盤”區域中的SP1端口上;

4.程序設計內容

(1. 單片機對按鍵的識別的過程處理

(2. 單片機對正確識別的按鍵進行計數,計數滿時,又從零開始計數;

(3. 單片機對計的數值要進行數碼顯示,計得的數是十進數,含有十位和個位,我們要把十位和個位拆開分別送出這樣的十位和個位數值到對應的數碼管上顯示。如何拆開十位和個位我們可以把所計得的數值對10求余,即可個位數字,對10整除,即可得到十位數字了。

(4. 通過查表方式,分別顯示出個位和十位數字。

5.

程序框圖

圖4.10.2

6.匯編源程序

Count EQU 30H

SP1 BIT P3.7

ORG 0

START: MOV Count,#00H

NEXT: MOV A,Count

MOV B,#10

DIV AB

MOV DPTR,#TABLE

MOVC A,@A+DPTR

MOV P0,A

MOV A,B

MOVC A,@A+DPTR

MOV P2,A

WT: JNB SP1,WT

WAIT: JB SP1,WAIT

LCALL DELY10MS

JB SP1,WAIT

INC Count

MOV A,Count

CJNE A,#100,NEXT

LJMP START

DELY10MS: MOV R6,#20

D1: MOV R7,#248

DJNZ R7,$

DJNZ R6,D1

RET

TABLE: DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH

END

7. C語言源程序

#include 《AT89X51.H》

unsigned char code table[]={0x3f,0x06,0x5b,0x4f,0x66,

0x6d,0x7d,0x07,0x7f,0x6f};

unsigned char Count;

void delay10ms(void)

{

unsigned char i,j;

for(i=20;i》0;i--)

for(j=248;j》0;j--);

}

void main(void)

{

Count=0;

P0=table[Count/10];

P2=table[Count];

while(1)

{

if(P3_7==0)

{

delay10ms();

if(P3_7==0)

{

Count++;

if(Count==100)

{

Count=0;

}

P0=table[Count/10];

P2=table[Count];

while(P3_7==0);

}

}

}

}

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 單片機
    +關注

    關注

    6032

    文章

    44525

    瀏覽量

    633259
  • 計數器
    +關注

    關注

    32

    文章

    2254

    瀏覽量

    94371
  • 數碼管
    +關注

    關注

    32

    文章

    1876

    瀏覽量

    90970
收藏 人收藏

    評論

    相關推薦

    雷擊計數器的概述與應用分析

    雷擊計數器種用于監測和記錄電力系統、通信系統、建筑物等關鍵設施遭受雷擊次數的設備。它能夠有效地幫助管理人員掌握雷電活動的情況,以便進行預防性維護和風險評估。雷擊計數器根據工作原理可以分為無源
    的頭像 發表于 10-21 10:31 ?209次閱讀
    雷擊<b class='flag-5'>計數器</b>的概述與應用分析

    74ls163是幾進制同步計數器

    74LS163 是十進制同步計數器,它是集成電路(IC),用于數字電路中進行計數操作。它
    的頭像 發表于 10-18 13:54 ?429次閱讀

    計數器同步和異步怎么判斷

    計數器同步和異步是數字電路設計中的重要概念,它們在很多應用場景中都扮演著關鍵角色。 計數器概述
    的頭像 發表于 07-23 11:14 ?850次閱讀

    二進制串行計數器工作原理是什么?

    在數字電路設計中,計數器種非常關鍵的組件,用于測量時間、計數事件或跟蹤狀態變化等。其中,二進制串行計數器作為種常用的
    的頭像 發表于 05-28 15:52 ?765次閱讀

    同步計數器和異步計數器的區別

    在數字電子領域中,計數器種用于統計脈沖信號數量的重要設備。其中,同步計數器和異步計數器是兩種不同類型的計數器,它們在工作原理、特性以及應
    的頭像 發表于 05-24 14:36 ?3681次閱讀

    計數器怎么判斷同步和異步 計數器異步和同步的區別

    計數器是計算機領域中常用的種數據結構,用于記錄和控制程序執行中的指令或事件發生的次數。計數器可以根據同步機制或異步機制進行操作。本文將詳細
    的頭像 發表于 02-22 15:14 ?3255次閱讀

    單片機定時單片機計數器分析

     從生活中的例程看起:水盆在水龍頭下,水龍沒關緊,水滴滴地滴入盆中。水滴持續落下,盆的容量是有限的,過
    發表于 02-15 16:24 ?481次閱讀

    計數器怎么用 計數器的作用有哪些

    的使用方法及其多重作用,從而加深讀者對計數器的理解。 計數器的使用方法 計數器的使用方法分為兩種:物理計數器和軟件
    的頭像 發表于 02-03 10:04 ?5121次閱讀

    8031單片機的定時計數器是怎么工作的

    8031單片機的定時計數器是通過內部的時鐘源來工作的。具體來說,定時/計數器T0和T1的輸入端都接到了機器周期信號上,因此它們的
    發表于 02-02 17:13 ?1154次閱讀

    雷擊計數器綜合選型應用方案

    雷擊計數器的基本原理是利用雷電流通過導線時產生的感應電壓或電流來驅動計數器計數。根據計數器的類型,可以分為機械式雷擊計數器和電子式雷擊
    的頭像 發表于 01-31 09:50 ?531次閱讀
    雷擊<b class='flag-5'>計數器</b>綜合選型應用方案

    避雷計數器怎么歸零

    避雷計數器怎么歸零? 避雷計數器是用來監測避雷的使用情況的
    的頭像 發表于 12-20 15:16 ?1465次閱讀

    同步計數器和異步計數器各有什么特點

    : 同步計數器種同步機制,用于控制多個線程的順序執行。它們使用共享的計數器,并在計數器達到特定值時觸發線程的執行。下面是同步
    的頭像 發表于 12-15 10:49 ?1896次閱讀

    4017計數器的工作原理

    4017計數器種廣泛應用于數字電路中的集成電路,它可以用來計數和控制電子設備。4017計數器有10輸出引腳,可以依次輸出從0到9的十
    的頭像 發表于 12-15 09:24 ?4216次閱讀

    同步計數器和異步計數器的區別主要在哪里

    、應用等方面。 、工作原理 同步計數器:同步計數器的工作原理是,在時鐘信號的驅動下,對輸入的二進制數進行加法或減法運算,從而得到計數值。在每個時鐘周期內,同步
    的頭像 發表于 12-13 14:54 ?1w次閱讀

    簡述STM32定時計數器模式

    STM32的向上計數模式是指定時計數器從0開始計數,直到達到自動加載值(TIMx_ARR),然后重新從0開始計數,并產生
    的頭像 發表于 12-13 10:09 ?4806次閱讀