国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

藍橋杯單片機 | 特訓案例【進階02】長按與短按控制數(shù)碼管顯示

這篇具有很好參考價值的文章主要介紹了藍橋杯單片機 | 特訓案例【進階02】長按與短按控制數(shù)碼管顯示。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

【1】題目要求

新建工程,以I/O模式編寫代碼,在CT107D單片機綜合訓練平臺上,實現(xiàn)以下功能:

1、系統(tǒng)上電后,關閉蜂鳴器和繼電器,關閉全部指示燈,數(shù)碼管最右邊兩位顯示計數(shù)初始值28,其余數(shù)碼管關閉。

2、利用定時器0實現(xiàn)10ms的間隔定時,將其作為長定時的基本單位,用于記錄按鍵按下的持續(xù)時間。

3、將J5的23腳短接,把S4設置為獨立按鍵。

4、循環(huán)掃描S4按鍵,按下時間小于1秒短按,數(shù)碼管上的數(shù)字加1,超過最大值99后恢復00,繼續(xù)計數(shù);S4按鍵按下的時間大于1秒長按,數(shù)碼管上的計數(shù)清除為00。?

5、在按鍵掃描和處理的過程中,不能干擾數(shù)碼管正常顯示,避免出現(xiàn)按鍵誤觸發(fā)和一次按鍵多次處理的情況。

藍橋杯單片機 | 特訓案例【進階02】長按與短按控制數(shù)碼管顯示

【小提示】:按鍵的長按與短按實現(xiàn)原理,可見本博客:《【CC2530強化實訓01】普通延時函數(shù)實現(xiàn)按鍵的長按與短按》。

【2】核心源碼

/*==================藍橋杯單片機特訓==================
【進階02】:長按與短按控制數(shù)碼管顯示
**平  臺:CT107D單片機綜合實訓平臺
**模  式:IO模式
**設  計:歐浩源(小蜜蜂老師,ohy3686@qq.com)
**時  間:2022-03-31
**更多詳見:www.xmf393.com
====================================================*/
#include "reg52.h"

sbit S4 = P3^3;

//定義動態(tài)顯示中單個數(shù)碼管點亮時長
#define TSMG	500
//-------共陽數(shù)碼管的段碼編碼表(無小數(shù)點)--------
//0 1 2 3 4 5 6 7 8 9 A b C D E F - .
unsigned char code SMG_NoDot[18]={0xc0,0xf9,
	  0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,
    0x88,0x83,0xc6,0xc0,0x86,0x8e,0xbf,0x7f};

unsigned char num = 28;					//定義計數(shù)變量
bit F_key = 0;    						//按鍵按下標志
unsigned int count_t = 0;				//10ms單位累計
void Display_Num();						//聲明數(shù)碼管顯示函數(shù)		
/*====鎖存器設置和數(shù)碼管顯示的代碼參考前面的案例====*/
//===================定時器T0初始化===================
void Init_Timer0()
{
	//定時器計數(shù)初值設置
	TH0 = (0 - 10000) / 256;
	TL0 = (0 - 10000) % 256;
	TMOD = 0x01;                //模式1:16位非重裝模式
	ET0 = 1;					//使能定時器0中斷
	EA = 1;						//打開總中斷
	TR0 = 1;					//啟動定時器0
}
//===============定時器T0的中斷服務函數(shù)================
void Service_Timer0() interrupt 1
{
	TH0 = (0 - 10000) / 256;
	TL0 = (0 - 10000) % 256;
	
	if(F_key == 1)				//在按鍵按下期間進行計數(shù)
	{
		count_t++;				//按鍵按下的持續(xù)時間
	}
}
//==================按鍵掃描處理函數(shù)===================
void Scan_Keys()
{
	if(S4 == 0)
	{
		DelaySMG(1000);			//去抖動處理
		if(S4 == 0)				//確認為按下信號
		{
			count_t = 0;		//時間計數(shù)變量清0
			F_key = 1;			//標志按鍵按下狀態(tài)
			while(S4 == 0)		//等待按鍵松開
			{
				Display_Num();	//在按下期間保持數(shù)碼管正常顯示
			}
			F_key = 0;			//標志按鍵松開狀態(tài)
			
			if(count_t > 50)	//按下時間大于1秒,長按
			{
				num = 0;		//數(shù)碼管計數(shù)清除為00
			}
			else				//按下時間小于1秒,短按
			{
				num++;			//數(shù)碼管計數(shù)加1
				if(num == 100)
				{
					num = 0;	//計數(shù)超出最大值99后恢復00
				}
			}
		}
	}
}

【注】:更多關于藍橋杯單片機備賽內容,詳見《藍橋杯單片機設計與開發(fā)》小蜜蜂特訓手冊,本站可下載,相關更多藍橋杯的案例完整源碼及學習備賽筆記,歡迎進入“小蜜蜂筆記”公眾號。文章來源地址http://www.zghlxwxcb.cn/news/detail-406726.html

到了這里,關于藍橋杯單片機 | 特訓案例【進階02】長按與短按控制數(shù)碼管顯示的文章就介紹完了。如果您還想了解更多內容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。如若轉載,請注明出處: 如若內容造成侵權/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領支付寶紅包贊助服務器費用

相關文章

  • 【藍橋杯單片機】工廠燈光控制系統(tǒng)案例解析(小蜜蜂老師基礎綜合實訓)

    【藍橋杯單片機】工廠燈光控制系統(tǒng)案例解析(小蜜蜂老師基礎綜合實訓)

    設備檢測——移位 L1~L8在板子上是從左至右,但是在對P0口賦值時是16進制從 高位(L8)—低位(L0) 根據(jù)原理圖,LED賦值 0亮1滅 為了方便賦值,可以把板子轉一下,讓LED排序與賦值順序相同 左移 右移 控制移位補0 ,使LED依次點亮、依次熄滅 unsigned char i 作為下文表格中的循環(huán)變量

    2023年04月09日
    瀏覽(19)
  • 單片機_按鍵——單擊,雙擊,長按

    調用

    2024年02月16日
    瀏覽(94)
  • 單個按鈕實現(xiàn)長按開關機,短按可以當普通按鈕控制單片機

    單個按鈕實現(xiàn)長按開關機,短按可以當普通按鈕控制單片機

    在看郭天祥老師的課程時學到的電路,之后發(fā)現(xiàn)這種控制原理很流行。 核心思路有兩個: 1、用兩個二極管隔離開q1和io_check,兩端都可以響應按鈕的狀態(tài),從而實現(xiàn)按鈕復用。 2、用d2和q2,實現(xiàn)了與的功能,兩者任意一個對地短路都可以保持mcu供電。 使用步驟: 1、長按sw

    2024年01月18日
    瀏覽(19)
  • STM32 -- 實現(xiàn)按鍵的長按與短按檢測(其他單片機可移植)

    STM32 -- 實現(xiàn)按鍵的長按與短按檢測(其他單片機可移植)

    目錄 資源獲取 一 前言 二 思路 ?三 實現(xiàn)代碼 1.主要代碼 四 完整代碼 Key.h Key.c 該改進版本(1ms太繁瑣了,我改成了25ms檢測一次)? ?1.定時器部分 2.按鍵檢測部分 ?五、參考 歡迎關注微信公眾號--星之援工作室 發(fā)送(長短按檢測) 今天在逛博客的時候,偶然看到了一

    2024年02月12日
    瀏覽(25)
  • 藍橋杯單片機客觀題之數(shù)電學習(深夜學習——單片機)

    藍橋杯單片機客觀題之數(shù)電學習(深夜學習——單片機)

    1、數(shù)字:\\\'0\\\'——0x30 2、字母:\\\'a\\\'——0x61;\\\'A\\\'——0x41 1、首位不變 2、從左到右,加上每一對相鄰的二進制編碼位,從而得到下一個格雷碼位,舍去進位 ?1、首位不變 2、新生成的二進制碼加上下一位格雷碼得到下一位二進制碼 1、小數(shù)部分的轉換方法應該是先得到的是高位,后

    2023年04月09日
    瀏覽(91)
  • 藍橋杯單片機(六)PWM

    藍橋杯單片機(六)PWM

    本文內出現(xiàn)的函數(shù)在其他文章有講: 藍橋杯單片機(一)流水燈 藍橋杯單片機(二)獨立按鍵 藍橋杯單片機(四)動態(tài)數(shù)碼管 藍橋杯單片機(五)定時器 如圖所示,有三列方波在圖中,所謂PWM,就是指上述圖中的方波,波形在高電平和低電平不斷變化,只不過PWM的占空比可變,上圖就

    2023年04月14日
    瀏覽(24)
  • 藍橋杯單片機(三)矩陣按鍵

    藍橋杯單片機(三)矩陣按鍵

    上章說了獨立按鍵 藍橋杯單片機(二)獨立按鍵 這章說一下矩陣按鍵 所謂矩陣按鍵,就是每一個按鍵的兩端都同時由單片機的IO口進行控制,如原理圖所示,上圖要想使用矩陣按鍵,就需要使用跳線帽將排針2引腳和1引腳連接在一起。 連接好了以后,這四排四列就可以看成四列

    2024年02月11日
    瀏覽(26)
  • 藍橋杯單片機第十三屆國賽客觀題(深夜學習——單片機)

    藍橋杯單片機第十三屆國賽客觀題(深夜學習——單片機)

    1.填空題 (2)不同的地址范圍: data:0x00-0xff idata:0x0000-0xffff xdata:0x0000-0xffff pdata:0x00-0xff code:0x0000-0xffff 2.選擇題 (3)模電——》多級放大電路 (6)DS18B20 (7)模電——》二極管 ?(8)單片機 ? ? ?

    2024年02月11日
    瀏覽(92)
  • 藍橋杯單片機 第十二屆 國賽

    藍橋杯單片機 第十二屆 國賽

    藍橋杯第十二屆,模塊都比較常規(guī),感覺都和省賽差不多,主要是麻煩在數(shù)據(jù)處理上,而我們處理的數(shù)據(jù)又要在界面中顯示出來。 對比之前的第十屆,其實題目差不多,并且少了串口收發(fā)這一比較難的模塊。但是多了max,min,avg三個超聲波數(shù)據(jù)的處理。所以按道理時間方面應該

    2023年04月08日
    瀏覽(90)
  • 藍橋杯單片機 ——接收字符、字符串

    藍橋杯單片機 ——接收字符、字符串

    ?1定時器中斷方法 (完整代碼在文末?。。??2.定時的方法(推薦): 藍橋杯單片機第十四屆第三次模擬題_讓我來瞅一瞅的博客-CSDN博客 定時器0——定時功能 ? ? ? ?判斷接受數(shù)據(jù)是否完成? 定時器1——串口功能 ? ? ? ? ? 接受、發(fā)送數(shù)據(jù) ? 1.接受、發(fā)送 均為文本模式

    2023年04月17日
    瀏覽(25)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領取紅包,優(yōu)惠每天領

二維碼1

領取紅包

二維碼2

領紅包