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

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

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

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

基于51單片機按鍵控制流水燈設計

CHANBAEK ? 來源:頭條號電子秘探 ? 作者:頭條號電子秘探 ? 2023-03-23 15:50 ? 次閱讀

遇到一個問題,如何按鍵按下既能控制流水燈又能把鍵值在數(shù)碼管中顯示呢?流水燈500ms的延時,和數(shù)碼管動態(tài)刷新延時小于10ms顯示有沖突。

bit和sbit,sfr都是C51擴展的變量類型,不是標準C語言類型

1.bit類型的值是一個二進制位,不是0就是1,類似布爾類型

2.sbit大部分是用在寄存器中的,方便對寄存器的某位進行操作的。

sbit LED1 = P0^0 把P0端口的第0位命名為LED1,方便使用

sbit 位變量名=SFR 名稱^變量 位地址值

3.sfr也是一種擴充數(shù)據(jù)類型:,占用一個內(nèi)存單元,利用它可以訪問51單片機內(nèi)部的所有特殊功能寄存器。如用sfr P1 = 0x90 指定P1來操作地址為0X90的寄存器

改變流水燈的方向

按鍵控制流水燈實現(xiàn)的功能:

1.key1啟動鍵,首次按下可以產(chǎn)生自上向下的流水燈效果

2.key2停止鍵,按下可以終止流水燈的運動

3.key3和key4分別產(chǎn)生自上向下和自下向上的流水燈效果

實現(xiàn)的方法:

1.利用標志位Startflag來控制流水燈的開始和停止,初始化定義為0停止,為1時上電便有流水燈效果。用標志位UpDownflag控制流水燈的方向,初始化的值0,1來控制自上而下還是從下到上

2.利用移位運算符實現(xiàn)流水燈效果

注意:移位運算符實現(xiàn)循環(huán)移位才能實現(xiàn)流水燈的效果

C51庫函數(shù)自帶循環(huán)移位的效果:crol 循環(huán)左移 _cror_循環(huán)右移

按鍵應用層功能函數(shù)

void Key_Service()
{
	switch(Key_Scan())
	{
		case 1: Startflag = 1;break;//開始
		case 2: Startflag = 0;break;//停止
		case 3:	UpDownflag =1;break;//向上流水燈
		case 4: UpDownflag =0;break;//向下流水燈
		default :break;
	}
	if(Startflag) 
	{
		
		P0 = temp;
		if(UpDownflag)
		{
			
			temp = (temp>>1)|0x80;  //右移一位
			if(temp == 0xff) //條件判斷給temp重新賦值,實現(xiàn)循環(huán)移位功能
				temp = 0x7f; 
		
		}
		else
		{
			temp = (temp<<1)|0x1;//左移一位
			if(temp == 0xff) //條件判斷給temp重新賦值,實現(xiàn)循環(huán)移位功能
				temp = 0xfe;
			
		}
		DelayXms(500);
	}
	
}

自己遇到的一個問題:按鍵按下既能控制流水燈又能把鍵值在數(shù)碼管中顯示

2個功能分開都能正確運行

糅合在一起就會出問題。

因為延時500ms數(shù)碼管動態(tài)刷新有問題

void main()
{
	LEDBuf[0]=23;
	LEDBuf[1]=23;
	LEDBuf[2]=23;
	
	while(1)
	{
		Key_Service();
		
		Didplay_Service();
	}

}

void Didplay_Service()
{
	switch(Key_Scan())
	{
		case 1:LEDBuf[3]=1;break;
		case 2:LEDBuf[3]=2;break;
		case 3:LEDBuf[3]=3;break;
		case 4:LEDBuf[3]=4;break;
		default :break;
	}
	Display();	
}

如果刪除500ms的延時,顯示效果是這樣的.

加上500ms延時,按鍵好像失效似的,返回顯示的鍵值也不對,很奇怪的問題。

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

    關注

    6063

    文章

    44925

    瀏覽量

    647002
  • 寄存器
    +關注

    關注

    31

    文章

    5421

    瀏覽量

    123359
  • 數(shù)碼管
    +關注

    關注

    32

    文章

    1889

    瀏覽量

    92227
  • 流水燈
    +關注

    關注

    21

    文章

    433

    瀏覽量

    60303
  • 按鍵
    +關注

    關注

    4

    文章

    227

    瀏覽量

    57939
收藏 人收藏

    評論

    相關推薦
    熱點推薦

    基于51單片機的心形流水燈原理圖

    51單片機控制的心形流水燈原理圖,通心形流水燈的制作熟悉單片機的接口
    發(fā)表于 11-23 11:03 ?72次下載

    51單片機流水燈程序

    51單片機流水燈程序 51單片機流水燈程序
    發(fā)表于 12-21 15:52 ?172次下載

    基于單片機流水燈介紹_51單片機流水燈的五種實現(xiàn)方法

    本文為大家?guī)砦宸N51單片機流水燈的實現(xiàn)方法。
    發(fā)表于 01-06 10:23 ?5.2w次閱讀
    基于<b class='flag-5'>單片機</b>的<b class='flag-5'>流水燈</b>介紹_<b class='flag-5'>51</b><b class='flag-5'>單片機</b><b class='flag-5'>流水燈</b>的五種實現(xiàn)方法

    51單片機按鍵控制流水燈閃爍測試程序詳細資料免費下載

    本文檔的主要內(nèi)容詳細介紹的是51單片機按鍵控制流水燈閃爍測試程序詳細資料免費下載。
    發(fā)表于 09-29 10:34 ?50次下載
    <b class='flag-5'>51</b><b class='flag-5'>單片機</b><b class='flag-5'>按鍵控制</b><b class='flag-5'>流水燈</b>閃爍測試程序詳細資料免費下載

    使用51單片機進行按鍵控制的資料說明

    本文檔的主要內(nèi)容詳細介紹的是使用51單片機進行按鍵控制的資料說明。
    發(fā)表于 08-28 17:29 ?5次下載
    使用<b class='flag-5'>51</b><b class='flag-5'>單片機</b>進行<b class='flag-5'>按鍵控制</b>的資料說明

    使用51單片機按鍵控制流水燈換速的程序免費下載

    本文檔的主要內(nèi)容詳細介紹的是使用51單片機控制流水燈分別以500ms,1s,3s流動按鍵時切換速度的程序免費下載。
    發(fā)表于 08-26 17:30 ?21次下載
    使用<b class='flag-5'>51</b><b class='flag-5'>單片機</b><b class='flag-5'>按鍵控制</b><b class='flag-5'>流水燈</b>換速的程序免費下載

    使用51單片機進行四按鍵五花樣流水燈設計的程序免費下載

    本文檔的主要內(nèi)容詳細介紹的是使用51單片機進行四按鍵五花樣流水燈設計的程序免費下載。
    發(fā)表于 08-23 17:30 ?19次下載
    使用<b class='flag-5'>51</b><b class='flag-5'>單片機</b>進行四<b class='flag-5'>按鍵</b>五花樣<b class='flag-5'>流水燈</b>設計的程序免費下載

    基于51單片機流水燈參考案例下載

    基于51單片機流水燈參考案例下載
    發(fā)表于 09-05 17:02 ?43次下載

    基于51單片機流水燈設計

    三個按鍵:A按鍵啟動、B按鍵控制不同流水速度(低中高)、C按鍵設計思路一(未用中斷):8個LED燈正極解電源,負極接
    發(fā)表于 11-04 14:06 ?6次下載
    基于<b class='flag-5'>51</b><b class='flag-5'>單片機</b>的<b class='flag-5'>流水燈</b>設計

    51單片機流水燈教程。

    51單片機流水燈教程。
    發(fā)表于 11-11 20:21 ?22次下載
    <b class='flag-5'>51</b><b class='flag-5'>單片機</b><b class='flag-5'>流水燈</b>教程。

    51單片機流水燈實驗

    基于51單片機流水燈實驗 我們知道通過編寫程序對51單片機進行控制,完成
    發(fā)表于 11-20 17:51 ?66次下載
    <b class='flag-5'>51</b><b class='flag-5'>單片機</b><b class='flag-5'>流水燈</b>實驗

    51單片機心形燈實現(xiàn)按鍵控制流水編程

    51單片機心形燈實現(xiàn)按鍵控制流水編程
    發(fā)表于 11-23 16:20 ?20次下載
    <b class='flag-5'>51</b><b class='flag-5'>單片機</b>心形燈實現(xiàn)<b class='flag-5'>按鍵控制</b><b class='flag-5'>流水</b>編程

    Proteus:單片機按鍵控制流水燈方向

    題目概述:單片機按鍵控制流水燈方向。編程:#include <reg51.h>#include<intrins.h>#define
    發(fā)表于 11-23 17:06 ?12次下載
    Proteus:<b class='flag-5'>單片機</b><b class='flag-5'>按鍵控制</b><b class='flag-5'>流水燈</b>方向

    51單片機按鍵控制流水燈

    51單片機按鍵控制流水燈左移右移代碼如下#include <reg52.h>#include <intrins.h>#define uchar
    發(fā)表于 11-23 17:21 ?16次下載
    <b class='flag-5'>51</b><b class='flag-5'>單片機</b><b class='flag-5'>按鍵控制</b><b class='flag-5'>流水燈</b>

    基于單片機按鍵控制四級變速流水燈設計

    四個按鍵控制流水燈變速,實現(xiàn)四級速度控制
    的頭像 發(fā)表于 08-14 10:47 ?1549次閱讀
    主站蜘蛛池模板: 欧美性生活网址 | 成熟妇女毛耸耸性视频 | 黄色v片| 国产精品九九热 | 在线久综合色手机在线播放 | 亚洲aa视频| 日本免费一区二区三区视频 | 欧美特黄视频在线观看 | 在线免费观看一级片 | 日本黄色大片在线播放视频免费观看 | 午夜黄色小视频 | 色色视频网 | 明星三级国产免费播放 | 美女视频一区二区三区 | bt天堂资源在线官网bt | 午夜视频在线观看国产 | 天天色综合社区 | 三级四级特黄在线观看 | 不卡无毒免费毛片视频观看 | 午夜爽爽爽 | 免费看片免| 亚洲天堂999 | 欧美性满足hd1819 | 日本在线不卡免 | 一级片免费在线播放 | 色男人的天堂 | 黄频网站免费大全在线观看 | 久久这里只有精品免费播放 | 欧美亚洲综合在线观看 | 亚州人成网在线播放 | 女人张开腿双腿让男人桶 | 国产午夜视频在线观看网站 | 五月婷婷在线播放 | 美女视频永久黄网站免费观看国产 | 日韩天天干 | 久久精品国产精品亚洲精品 | 国产在线视欧美亚综合 | ⅹxxxx68日本老师hd | 精品久久久久久国产免费了 | 激情爱爱的免费视频 | 大量喷潮free |