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

專注電子技術學習與研究
當前位置:單片機教程網 >> MCU設計實例 >> 瀏覽文章

通過按鍵控制IO口操作

作者:佚名   來源:本站原創(chuàng)   點擊數(shù):  更新時間:2013年07月18日   【字體:

今天對單片機按鍵有了一定的認識,單片機分為獨立式鍵盤和矩陣式鍵盤,獨立式占用IO口資源比較大,適合按鍵少的控制操作,其優(yōu)點是設計編程一目了然,比較簡單,矩陣式占用IO口比較少,適合對按鍵要求比較高而IO口資源比較寶貴的操作,這兩者各有其優(yōu)點和缺點,以后應用時要根據(jù)需要進行設計,特別是矩陣式的要利用行線,和列線的高低電平檢測和處理數(shù)據(jù)信息的原理要記住。

下面把今天學的一個簡單的通過按鍵控制IO口LED燈工作的程序寫一下,呵呵,可以加深我對按鍵操作(ELSE語句)的理解。

#include<reg52.h>
#define uint unsigned int
#define uchar unsigned char
sbit DIPswitch1=P3^0;
sbit DIPswitch2=P3^1;
sbit redLED1=P1^0;
sbit blueLED1=P1^1;
sbit greenLED1=P1^2;
sbit yellowLED1=P1^3;
sbit redLED2=P1^4;
sbit blueLED2=P1^5;
sbit greenLED2=P1^6;
sbit yellowLED2=P1^7;
void delay(void)
{ uint i;
 for(i=0;i<35530;i++);
}
void main(void)
{
  P1=0XFF;
  P3=0XFF;//置位
 while(1)
 {
  if(DIPswitch1==0)
  {
  redLED1=~redLED1;
  yellowLED2=~yellowLED2;//判斷按鈕1是否為低電平,如果是的話,實現(xiàn)P0口的1腳和7腳按位取反
  delay();}//延時操作
  else if(DIPswitch2==0)
  {
  P1=~P1;//按鍵2取低時,P0口所有位按位取反閃爍
  }
  else
  {
  P1=0X00;//如果按鍵1VS2都為高,則所有燈亮
  }
  
 }
}

工作原理是當按鍵1為低電平時,P1口的1腳和7腳按位取反,實現(xiàn)LED燈的閃爍。當按鍵2為低電平的時候,P1口所有的燈實現(xiàn)按位取反功能,所有燈閃爍。當按鍵1和2都為高電平時,P1口為低電平,所有燈亮。

這個硬件電路是P3^0和P3^1控制按鍵1和2;P1口控制八個LED燈。

呵呵,數(shù)碼管的動態(tài)和靜態(tài)還在學習當中,現(xiàn)在基本的靜態(tài)控制應該是會了,動態(tài)的爭取這兩天把它學完。加油。
由于時間關系,在這就不寫上單片機的工作系統(tǒng)了。
 


有了這個程序和原理圖,我們也可以根據(jù)需要適當?shù)酶膶懗绦颍_到我們想要的目的。

關閉窗口

相關文章

主站蜘蛛池模板: 国产一级成人 | 久久五月婷 | 精品人伦一区二区三区蜜桃网站 | 国精日本亚洲欧州国产中文久久 | 欧美日韩亚 | 黄色三级免费 | 91 久久| 久久精品久久久久久 | 国产一区二区视频在线观看 | 精品日韩在线 | 亚洲男女视频在线观看 | 夜夜爽99久久国产综合精品女不卡 | 日韩欧美不卡 | 中文字幕成人av | 久久久久久久国产 | 99精品热视频 | 秋霞影院一区二区 | 亚洲视频在线看 | 亚洲精品久久久久久一区二区 | 国产亚洲精品精品国产亚洲综合 | www午夜视频| 亚洲精品一区二区三区中文字幕 | 成人一区精品 | 91精品久久久 | 国产国产精品久久久久 | 国产乱码精品一品二品 | 久久r精品 | 欧美黄色片 | 亚洲高清在线 | 成人av电影免费在线观看 | 亚洲国产精选 | aa级毛片毛片免费观看久 | 欧美精品在线免费 | 精品在线观看一区二区 | 亚洲va在线va天堂va狼色在线 | 中文字幕一区二区三区乱码在线 | 久久国产综合 | 色播99 | 亚洲成av人片在线观看 | 拍戏被cao翻了h承欢 | 极品久久 |