2011年8月18日 星期四

DIY - PIC:PIC18F4550 + ULN2003A LED 測試程式 (一百零七)

DIY - PICPIC18F4550 + ULN2003A LED 測試程式 (一百零七)

PIC18F4550 + ULN2003A LED 程式是用 Delay Loop 來作時間的廷遲 PORTA RA1 RA5 的狀態由ONOFF 順序改變然後循環不息LED 燈便會順序閃動不停。這程式的主要目的是測試 ULN2003A 集成電路 (IC) 的效果,以便下一步會用來控制 TEAC 步進馬達。

ULN2003A LED 測試程式流程圖
 ULN2003A  LED 測試程式:
//***** Program Start Here *****
void main(void)
{
    TRISA = 0b00000001;            // Setup PORTA RA1 - RA7 as Output

    while(1)
    {
    LATAbits.LATA1 = 1;                    // RA0=1 LED=ON Scope=1
    Delay10KTCYx(240);                  // 10,000 x 1 x (4 x 0.05us) = 2ms
                                        // Scope = 2ms   
    LATAbits.LATA1 = 0;                    // RA1=0 LED=OFF Scope=50ms

    LATAbits.LATA2 = 1;                    // RA2=1 LED=ON Scope=1
    Delay10KTCYx(240);                  // 10,000 x 1 x (4 x 0.05us) = 2ms
                                        // Scope = 2ms
    LATAbits.LATA2 = 0;                    // RA2=0 LED=OFF Scope=50ms

    LATAbits.LATA3 = 1;                    // RA3=1 LED=ON Scope=1
    Delay10KTCYx(240);                  // 10,000 x 1 x (4 x 0.05us) = 2ms
                                        // Scope = 2ms
    LATAbits.LATA3 = 0;                    // RA3=0 LED=OFF Scope=50ms

    LATAbits.LATA4 = 1;                    // RA4=1 LED=ON Scope=1
    Delay10KTCYx(240);                  // 10,000 x 1 x (4 x 0.05us) = 2ms
                                        // Scope = 2ms
    LATAbits.LATA4 = 0;                    // RA4=0 LED=OFF Scope=50ms
           
    }
}

LED 1 ON (亮著)
LED 2 ON (亮著)
LED 3 ON (亮著)
LED 4 ON (亮著)
ULN2003A LED測試程式在運作中
2011   08 18 天氣報告 
氣溫:28.0 @ 22:00 
相對濕度:百分之81% 
天氣:天色大致良好

1 則留言:

  1. 請問一下...
    可以給我 ULN2003A LED 測試程式 每一行的註解麻...
    想研究可以是看不太懂..

    回覆刪除