冰楓論壇

 找回密碼
 立即註冊
搜索
查看: 497|回覆: 0

[心得] 使用STC8H1K08-36I-TSSOP20玩18顆霹靂燈

[複製鏈接]

2042

主題

0

好友

915

積分

高級會員

Rank: 4

UID
373967
帖子
6200
主題
2042
精華
0
積分
915
楓幣
4283
威望
897
存款
20000
贊助金額
0
推廣
0
GP
986
閱讀權限
50
在線時間
351 小時
註冊時間
2023-1-12
最後登入
2024-2-23

2023端午節紀念勳章 2023中秋節紀念勳章 2023聖誕節紀念勳章

發表於 2023-3-27 20:53:49 |顯示全部樓層

這裡提供的程式碼示例是使用C語言編寫


#include <STC8.H>

// Define the pins for the 18 LEDs
#define LED_PIN_1 P10
#define LED_PIN_2 P11
#define LED_PIN_3 P12
#define LED_PIN_4 P13
#define LED_PIN_5 P14
#define LED_PIN_6 P15
#define LED_PIN_7 P16
#define LED_PIN_8 P17
#define LED_PIN_9 P30
#define LED_PIN_10 P31
#define LED_PIN_11 P32
#define LED_PIN_12 P33
#define LED_PIN_13 P34
#define LED_PIN_14 P35
#define LED_PIN_15 P36
#define LED_PIN_16 P37
#define LED_PIN_17 P06
#define LED_PIN_18 P07

void main(void)
{
    // Configure the pins for the LEDs as output
    LED_PIN_1 = 0;
    LED_PIN_2 = 0;
    LED_PIN_3 = 0;
    LED_PIN_4 = 0;
    LED_PIN_5 = 0;
    LED_PIN_6 = 0;
    LED_PIN_7 = 0;
    LED_PIN_8 = 0;
    LED_PIN_9 = 0;
    LED_PIN_10 = 0;
    LED_PIN_11 = 0;
    LED_PIN_12 = 0;
    LED_PIN_13 = 0;
    LED_PIN_14 = 0;
    LED_PIN_15 = 0;
    LED_PIN_16 = 0;
    LED_PIN_17 = 0;
    LED_PIN_18 = 0;

    // Loop forever
    while (1)
    {
        // Turn on each LED in sequence for a short period of time
        LED_PIN_1 = 1;
        DelayMs(100);
        LED_PIN_1 = 0;
        LED_PIN_2 = 1;
        DelayMs(100);
        LED_PIN_2 = 0;
        LED_PIN_3 = 1;
        DelayMs(100);
        LED_PIN_3 = 0;
        LED_PIN_4 = 1;
        DelayMs(100);
        LED_PIN_4 = 0;
        LED_PIN_5 = 1;
        DelayMs(100);
        LED_PIN_5 = 0;
        LED_PIN_6 = 1;
        DelayMs(100);
        LED_PIN_6 = 0;
        LED_PIN_7 = 1;
        DelayMs(100);
        LED_PIN_7 = 0;
        LED_PIN_8 = 1;
        DelayMs(100);
        LED_PIN_8 = 0;
        LED_PIN_9 = 1;
        DelayMs(100);
        LED_PIN_9 = 0;
        LED_PIN_10 = 1;
        DelayMs(100);
        LED_PIN_10 = 0;
        LED_PIN_11 = 1;
        DelayMs(100);
        LED_PIN_11 = 0;
        LED_PIN_12 = 1;
        DelayMs(100

    LED_PIN_12 = 0;
    LED_PIN_13 = 1;
    DelayMs(100);
    LED_PIN_13 = 0;
    LED_PIN_14 = 1;
    DelayMs(100);
    LED_PIN_14 = 0;
    LED_PIN_15 = 1;
    DelayMs(100);
    LED_PIN_15 = 0;
    LED_PIN_16 = 1;
    DelayMs(100);
    LED_PIN_16 = 0;
    LED_PIN_17 = 1;
    DelayMs(100);
    LED_PIN_17 = 0;
    LED_PIN_18 = 1;
    DelayMs(100);
    LED_PIN_18 = 0;
}
}



這個示例程式中,我們先定義了每個LED的輸出引腳,然後在主函數中設置了這些引腳為輸出模式。在一個無限循環中,我們逐個點亮每個LED,每個LED亮100毫秒,然後熄滅。這樣就可以讓所有LED依次閃爍。
[發帖際遇]: 洪嵐峰 辛苦連續加班12天,工作「做功德」,終於獲得加班費 2 楓幣 幸運榜 / 衰神榜
複製連結並發給好友,以賺取推廣點數
簡單兩步驟,註冊、分享網址,即可獲得獎勵! 一起推廣文章換商品、賺$$
高級模式
B Color Image Link Quote Code Smilies |上傳

廣告刊登意見回饋關於我們職位招聘本站規範DMCA隱私權政策

Copyright © 2011-2024 冰楓論壇, All rights reserved

免責聲明:本網站是以即時上載留言的方式運作,本站對所有留言的真實性、完整性及立場等,不負任何法律責任。

而一切留言之言論只代表留言者個人意見,並非本網站之立場,用戶不應信賴內容,並應自行判斷內容之真實性。

小黑屋|手機版|冰楓論壇

GMT+8, 2024-2-24 03:05

回頂部