欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136
標題:
利用單片機中斷-花樣霓虹燈設計
[打印本頁]
作者:
13170256672
時間:
2018-8-28 22:04
標題:
利用單片機中斷-花樣霓虹燈設計
這是我自己設計的一個花樣霓虹燈設計,及8個led先一次亮滅,然后奇數和偶數燈閃爍,閃爍三次厚,8個燈又開始一次亮,依次循環。
用用單片機實物和proteus都試過,效果很好。
電路原理圖如下:
_3B5P26@]@VGE8{5FS5Q63L.png
(6.56 KB, 下載次數: 58)
下載附件
proteus電路圖
2018-8-28 22:02 上傳
單片機源程序:
//霓虹燈實驗: P0口接了8個燈,晶振為11.0592MHZ;
//從D1到D8開始8個燈循環點亮一次,即D1點亮1s熄滅,依次是D8;
//然后是間隔閃爍3次,即D1,3,5,7點亮1S熄滅,緊接著2,4,6,8點亮1s熄滅,
//這為一次,然后循環3次。
/*********主程序*******/
#include <reg52.h>
#define uchar unsigned char
uchar i20,i8,i6; //定義三個正char:-128~127,unsigned char:0~127)
uchar mod1,mod2 ; //定義兩種模式,沒中模式是8位,所以前面用char
bit F; //循環標志位,用bit定義是為了節省空間
void main ()
{
i20=20; //20x50ms=1s
i8=8; //模式1有8次
i6=6; //模式2有6次
mod1=0x01; //0000 0001,模式1初始狀態D1滅,其他亮
mod2=0xAA; //1010 1010,模式2初始狀態D1,3,5,7亮,其他滅
F=0;//設置循環點亮階段標志;=0為循環點亮階段
TMOD=0x10;//定時,T1,方式1
TH1=0x4C; //11.0592*1000000/12*50*0.001=46080 ,
//(65536-46080)/256=76...0 商是76(ox4C),余數是0(ox00)
TL1=0x00;
IE=0x88; //打開總中斷與T1中斷
TR1=1;//打開T1控制位開關,在TCON寄存器中
P1=0xF0; //針對這個實驗板子,led燈一端連著鎖存器和數碼管,
//為了防止鎖存器數碼管干擾,首先就要先關閉位選 ,
//因為使能在硬件始終是開著的,所以關閉位選
while(1);
}
/*****T1中斷程序*********/
void time0() interrupt 3 using 1
{
TH1=0x4C; //50ms到,中斷跳出,此時繼續裝初值,直到20次,累計到1s
TL1=0x00;
i20--;
if(i20==0)
{
i20=20;
if(F==0)
{
P0=~mod1;
mod1=mod1<<1;
i8-- ;
if(i8==0)
{
i8=8;
F=1;
mod1=0x01;
}
}
else
{
P0=mod2;
mod2=~mod2;
i6--;
if(i6==0)
{
i6=6;
F=0;
}
}
}
}
復制代碼
作者:
13170256672
時間:
2018-8-29 10:00
謝謝,麻煩群主了。初學單片機,我會上傳一些自己的心得,但是覺得太簡單了,不知道對大家有沒有用,剛接觸論壇,有什么不對的地方多多包涵,謝謝。
作者:
文鳳軒
時間:
2018-8-29 18:01
謝謝樓主分享這個資料非常珍貴
作者:
disalike
時間:
2019-11-15 19:24
可以問下原理圖就這樣嗎
作者:
mengxin@
時間:
2019-12-6 17:38
這個是延時,按鍵只有當前的模式跑完了才能進入下一個模式
作者:
姜思湃
時間:
2020-5-15 12:32
老哥有沒有原理圖和ad圖
歡迎光臨 (http://m.raoushi.com/bbs/)
Powered by Discuz! X3.1