欧美视频综合-欧美视频中文字幕-欧美视频在线观在线看-欧美视频在线观看网站-直接观看黄网站免费视频-正在播放久久

機電之家資源網
單片機首頁|單片機基礎|單片機應用|單片機開發|單片機文案|軟件資料下載|音響制作|電路圖下載 |嵌入式開發
培訓信息
贊助商
SPMC65P2404A做行列式鍵掃描
SPMC65P2404A做行列式鍵掃描
 更新時間:2008-7-26 20:08:30  點擊數:2
【字體: 字體顏色

摘  要: 本文主要介紹利用SPMC65P2404A單片機做行列式鍵掃描的處理,可作為用戶系統設計的參考。
關鍵詞:SPMC65P2404A、行列式鍵掃描

1 引言

  本系統應用凌陽科技8位工業級單片機SPMC65P2404A*28p做行列式鍵掃描,可作為用戶設計參考,其所有程序源代碼及說明文件在凌陽單片機網站(www.sunplusmcu.com)上可以下載。

2 芯片特性簡介

  SPMC65系列單片機是凌陽科技公司設計開發的8位工業級通用型單片機,具有超強的抗干擾能力,廣泛應用于家用電器、工業控制、儀器儀表等控制領域。SPMC65P2404A單片機功能特點如下:

● SPMC65 CPU
  - 支持 182 條指令
  - 支持 11 種尋址方式
  - 系統時鐘頻率最高可達 8MHz
  - 支持位操作指令(置 1 、清零、取反、測試)
 
● 存儲空間
  - 4K 字節的程序空間( OTP ),并且可設置保密功能。
  - 192 字節的 RAM (含堆棧空間)
 
● I/O 端口
  - 23/15 個具有復用功能的雙向 I/O 端口
  - 所有 I/O 端口的輸入均由施密特觸發器構成
  - 可編程設置為帶上拉 / 下拉電阻輸入或者懸浮輸入
  - I/O 具備 LED 驅動能力
  - 其中 2 個 I/O 端口能提供 20mA 的吸入電流
 
● 中斷管理
  - 外部中斷選項:非屏蔽中斷 NMI 或可屏蔽中斷 IRQ
  - 支持 4 個外部中斷,其中的一個可設置為非屏蔽中斷 NMI
  - 12 個內部中斷
 
● 復位管理
  - 上電復位 (POR)
  - 低電壓復位 (LVR)
  - 看門狗復位 (WDR)
  - 外部復位 (ERST)
  - 非法地址復位 (IAR)
 
● 時鐘管理
  - 3 種時鐘源:晶體 / 陶瓷振蕩器、 RC 振蕩器、外部時鐘輸入
  - 在 RC 振蕩模式下,能夠輸出時鐘信號

● 電源管理
  - 2 種省電模式: STOP 模式、 HALT 模式

● 2 個外圍模擬電路
  - 8 通道 10 位精度的 A/D 轉換器( 100KHz )
  - 低電壓復位( 2.5V/4V )
 
● 2 通道 8 位定時 / 計數器 (Timer0,Timer2)
  - 定時、計數功能
  - 捕獲功能( 8 位脈寬測量)
  - 8 位比較輸出功能

● 2 通道 16 位定時 / 計數器 (Timer1,Timer3)
  - 定時、計數功能
  - 捕獲功能( 8 位脈寬 / 周期測量,或 16 位脈寬測量)
  - 16 位比較輸出功能
  - 12 位 PWM 輸出功能

● 時基定時器
  - 頻率選擇: 1KHz ~ 62.5KHz @8MHz
  - 7 級分頻選擇

● 蜂鳴器輸出
  - 頻率選擇: 1KHz ~ 2MHz @8MHz
  - 12 級分頻選擇
 
● 可編程看門狗定時器
  - 中斷頻率選擇: 1.5Hz ~ 195Hz
 
● 串行總線接口
  - SPI 總線頻率:最高為 2MHz @8MHz

3 系統總體方案介紹

  本例采用芯片SPMC65P2404A*28p,外接4X4按鍵,當按鍵被按下后,相應的發光二極管便會被點亮來指示當前的鍵值。系統框圖如圖3-1所示。

圖 3-1系統框圖

  原理圖如圖3-2所示,4行4列的鍵盤。PA口接4X4按鍵,PC3~PC0分別接4個發光二極管指示當前的按鍵值。圖中電阻均為510歐。

圖 3-2  4X4按鍵掃描原理圖

  PA3~PA0為行線輸入端,初始化為帶上拉電阻的輸入口。
  PA7~PA4為列線輸出端,初始化為輸出低電平。
  PC3~PC0接4個發光二極管用做指示燈,其16種組合0000~1111分別表示鍵K0~K15被按下。
  掃描方法:首先由輸出口PA7~PA4向所有的列線輸出低電平,讀取各行線PA3~PA0的狀態,若行線狀態全為高電平,則表明無鍵按下,若行線狀態中有低電平,則表明有鍵按下。若有鍵按下,先進行消抖,消抖結束,再對每一列進行掃描,即:PA7~PA4四條列掃描線分別輸出低電平,在每次輸出低電平期間,讀取各行線PA3~PA0的狀態,確定鍵值。例如:PA7~PA4輸出"1011",此時若讀取PA3~PA0的狀態為"1110",則表明按鍵S2被按下。
  掃描時序如圖 3-3所示。K0表示列線全部為低電平時行線的狀態;

圖 3-3  按鍵掃描時序圖

  K1表示列線PA4為低電平時行線的狀態,用于判斷按鍵S0、S4、S8、S12的狀態;
  K2表示列線PA5為低電平時行線的狀態,用于判斷按鍵S1、S5、S9、S13的狀態;
  K3表示列線PA6為低電平時行線的狀態,用于判斷按鍵S2、S6、S10、S14的狀態;
  K4表示列線PA7為低電平時行線的狀態。用于判斷按鍵S3、S7、S11、S15的狀態。
  鍵值計算方法:
  設置一個變量,高4位放列掃描線控制字,低4位放行掃描線狀態字。按鍵S0~ S15分別對應不同的變量值,因而可以根據變量值確定當前的按鍵值。消抖方法:
  在按鍵閉合和打開的瞬間會產生許多尖脈沖,持續時間約幾毫秒到幾十毫秒。因而在程序中,當檢測到按鍵被按下后,便開始讀取鍵值,每隔4ms讀一次鍵值,直到連續7次讀取的鍵值完全相同,則認為抖動已經消除。消抖時間為4ms X 7=28ms。
  注意:本范例只響應單個按鍵,若同時按下兩個或兩個以上的按鍵,則程序不響應。

4 系統軟件設計

4.1 主流程

  程序主流程如圖4-1所示。主程序每隔4ms掃描一次鍵盤,若有按鍵被按下,則點亮或熄滅相應的指示燈來指示鍵值。

圖4-1  鍵盤主流程圖

4.2 鍵盤掃描子流程

  鍵盤掃描流程圖如圖4-2所示。

圖4-2 鍵盤掃描流程圖

  • 上一篇: 利用SPMC65P2404A單片機做紅外接收
  • 下一篇: SPMC65P2404A在智能測溫系統中的應用
  • 發表評論   告訴好友   打印此文  收藏此頁  關閉窗口  返回頂部
    熱點文章
     
    推薦文章
     
    相關文章
    網友評論:(只顯示最新5條。)
    關于我們 | 聯系我們 | 廣告合作 | 付款方式 | 使用幫助 | 機電之家 | 會員助手 | 免費鏈接

    點擊這里給我發消息66821730(技術支持)點擊這里給我發消息66821730(廣告投放) 點擊這里給我發消息41031197(編輯) 點擊這里給我發消息58733127(審核)
    本站提供的機電設備,機電供求等信息由機電企業自行提供,該企業負責信息內容的真實性、準確性和合法性。
    機電之家對此不承擔任何保證責任,有侵犯您利益的地方請聯系機電之家,機電之家將及時作出處理。
    Copyright 2007 機電之家 Inc All Rights Reserved.機電之家-由機電一體化網更名-聲明
    電話:0571-87774297 傳真:0571-87774298
    杭州濱興科技有限公司提供技術支持

    主辦:杭州市高新區(濱江)機電一體化學會
    中國行業電子商務100強網站

    網站經營許可證:浙B2-20080178-1