hello大家好, 我是途說, 頭條原創作者, 日常分享機電一體化知識, 工科也能如此有趣。
這兩天跟大家分享了51單片機中按鈕開關和LED發光二極體的使用,
怎麼樣, 循序漸進的感覺還不錯吧, 結合前幾篇文章, 大家就已經可以自己動手做一些簡單的小作品來給家人朋友帶來歡樂, 誰說工科男不懂浪滿(`・ω・´)
下面咱們就開始這個項目的實施。
首先, 新建一個資料夾, 創建好protues和keil的工作介面, 如下:
然後是硬體部分, 大家對比下面的清單, 把需要用到的元件添加到元件庫:
添加完了過後就按照自己喜歡的形狀擺出相應的位置, 然後連好線就可以了, 這裡小編為了大家看得清楚, 就沒有弄形狀了:
這樣子咱們的硬體部分就設置好了,
好了, 下面就是軟體部分了:
#include
sbit key=P1^0;
#define uchar unsigned char
#define uint unsigned int
uchar code LED_P0[]=
{
0xFC,0xF9,0xF3,0xE7,0xCF,0x9f,0x3f,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
0xe7,0xdb,0xbd,0x7e,0xbd,0xdb,0xe7,0xff,0xe7,0xc3,0x81,0x00,0x81,0xc3,0xe7,0xff,
0xaa,0x55,0x18,0xff,0xf0,0x0f,0x00,0xff,0xf8,0xf1,0xe3,0xc7,0x8f,0x1f,0x3f,0x7f,
0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
0x7f,0x3f,0x1f,0x8f,0xc7,0xe3,0xf1,0xf8,0xff,0x00,0x00,0xff,0xff,0x0f,0xf0,0xff,
0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0xfe,0xbf,0xcf,0xdf,0xef,0xf7,0xfc,
0xfe,0xfb,0xfa,0xf0,0xe0,0xc0,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfe,0xfb,0xfa,0xf0,0xe0,0xc0,0x80,
0x00,0xff,0x00,0xff,0x00,0xff,0x00,0xff
};
uchar code LED_P2[]=
{
0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xFC,0xF9,0xF3,0xE7,0xCF,0x9f,0x3f,0x7f,
0xaa,0x55,0x18,0xff,0xf0,0x0f,0x00,0xff,0xf8,0xf1,0xe3,0xc7,0x8f,0x1f,0x3f,0x7f,
0xe7,0xdb,0xbd,0x7e,0xbd,0xdb,0xe7,0xff,0xe7,0xc3,0x81,0x00,0x81,0xc3,0xe7,0xff,
0x7f,0x3f,0x1f,0x8f,0xc7,0xe3,0xf1,0xf8,0xff,0x00,0x00,0xff,0xff,0x0f,0xf0,0xff,
0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
0xfe,0xfb,0xfa,0xf0,0xe0,0xc0,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0xfe,0xbf,0xcf,0xdf,0xef,0xf7,0xfc,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfe,0xfb,0xfa,0xf0,0xe0,0xc0,0x80,
0x00,0xff,0x00,0xff,0x00,0xff,0x00,0xff
};
void Delay( uint t)
{
uchar i;
while( t-- )
for(i=0;i<120;i++);
}
void main()
{
uchar i;
if(key==0)
{
while(1)
{
for(i=0;i<136;i++)
{
P0=LED_P0[i];
P2=LED_P2[i];
Delay( 100);
}
}
}
}
其實這個程式任然很簡單, 主要是為了二極體的閃爍花樣而使用了兩個陣列, 讓程式看起來很多, 其實大家可以跳過陣列直接看主程序, 遇到變數再往回看, 找到相應的變數代入到主程序中來就很容易理解了。
還是那句話, 程式部分知識教給一個思路, 畢竟每個人的創造力都不同, 大家可以發揮想像力設計出屬於自己的風格, 好了今天的專案就到這裡了。
我是途說, 頭條原創作者, 如果您覺得我的文章還有點意思, 就請您多多關注多多評論, 您的支持就是我無限的動力!