沒事就在某寶買了個pt2272模塊玩,問店家就說是點動的,他說自鎖的賣完了。。。 。
想了想只能用單片機了,但是這模塊輸出的是高電平單片機檢測高電平不怎么樣說以就拿74hc04d來轉換低電平,加上以前買的stc15f204s剛剛好。
按一下按鍵繼電器一輸出,并蜂鳴器響一聲,對應指示燈亮,測試后兩賭墻都可以非常好用
制作出來的實物圖如下:
IMG_20181213_162511.jpg (5.48 MB, 下載次數: 36)
下載附件
電壓電流(耗電低)
2018-12-13 16:30 上傳
IMG_20181213_162435.jpg (5.5 MB, 下載次數: 37)
下載附件
成品圖
2018-12-13 16:28 上傳
IMG_20181213_162446.jpg (5.54 MB, 下載次數: 36)
下載附件
俯視圖
2018-12-13 16:29 上傳
IMG_20181213_162457.jpg (5.46 MB, 下載次數: 39)
下載附件
下板背面圖
2018-12-13 16:29 上傳
IMG_20181213_162527.jpg (5.66 MB, 下載次數: 35)
下載附件
下板正面圖
2018-12-13 16:30 上傳
IMG_20181213_162541.jpg (5.6 MB, 下載次數: 39)
下載附件
上板背面
2018-12-13 16:30 上傳
IMG_20181213_162736.jpg (5.62 MB, 下載次數: 39)
下載附件
遙控器
2018-12-13 16:30 上傳
單片機源程序如下:
- /**************************************************************************************
- * 獨立按鍵實驗 *
- 實現現象:下載程序后按下K1按鍵可以對D11小燈狀態取反。
- 注意事項:無
- ***************************************************************************************/
- #include "reg52.h" //此文件中定義了單片機的一些特殊功能寄存器</div><div>typedef unsigned int u16; //對數據類型進行聲明定義
- typedef unsigned char u8;
- #define uint unsigned int
- #define uchar unsigned char
- sbit k1=P1^2;
- sbit k2=P1^3;
- sbit k3=P1^4;
- sbit k4=P1^5;
- sbit led1=P3^7;
- sbit led2=P3^3;
- sbit led3=P3^6;
- sbit led4=P3^2;
- void delay( uint z)
- {
- uint x,y;
- for(x=z;x>0;x--)
- {
- for(y=110;y>0;y--);
- }
- }
- /*******************************************************************************
- * 函 數 名 : keypros
- * 函數功能 : 按鍵處理函數,判斷按鍵K1是否按下
- *******************************************************************************/
- void keypros()
- {
- if(k1==0) //檢測按鍵K1是否按下
- {
- delay(100); //消除抖動 一般大約10ms
- if(k1==0) //再次判斷按鍵是否按下
- {
- led1=~led1; //led狀態取反
- }
- while(!k1); //檢測按鍵是否松開
-
- }
- }
- void keypros1()
- {if(k2==0) //檢測按鍵K1是否按下
- {
- delay(100); //消除抖動 一般大約10ms
- if(k2==0) //再次判斷按鍵是否按下
- {
- led2=~led2; //led狀態取反
- }
- while(!k2); //檢測按鍵是否松開
- }
- }
- void keypros2()
- {if(k3==0) //檢測按鍵K1是否按下
- {
- delay(100); //消除抖動 一般大約10ms
- if(k3==0) //再次判斷按鍵是否按下
- {
- led3=~led3; //led狀態取反
- }
- while(!k3); //檢測按鍵是否松開
- }
- }
- void keypros3()
- {if(k4==0) //檢測按鍵K1是否按下
- {
- delay(100); //消除抖動 一般大約10ms
- if(k4==0) //再次判斷按鍵是否按下
- {
- led4=~led4; //led狀態取反
- }
- while(!k4); //檢測按鍵是否松開
- }
- }
- /*******************************************************************************
- * 函 數 名 : main
- * 函數功能 : 主函數
- * 輸 入 : 無
- * 輸 出 : 無
- *******************************************************************************/
- void main()
- {
- led1=1;
- led2=1;
- led3=1;
- led4=1;
- while(1)
- {
- keypros();
- ……………………
- …………限于本文篇幅 余下代碼請從51黑下載附件…………
復制代碼
所有資料51hei提供下載:
123.zip
(52.26 KB, 下載次數: 83)
2018-12-13 16:33 上傳
點擊文件名下載附件
程序 下載積分: 黑幣 -5
|