|
我給你來個程序試試
- /*---------------------------------------------------------------------*/
- /* --- STC MCU International Limited ----------------------------------*/
- /* --- STC 1T Series MCU Demo Programme -------------------------------*/
- /* --- Mobile: (86)13922805190 ----------------------------------------*/
- /* --- Fax: 86-0513-55012956,55012947,55012969 ------------------------*/
- /* --- Tel: 86-0513-55012928,55012929,55012966 ------------------------*/
- /* --- Web: www.GXWMCU.com --------------------------------------------*/
- /* --- QQ: 800003751 -------------------------------------------------*/
- /* 如果要在程序中使用此代碼,請在程序中注明使用了宏晶科技的資料及程序 */
- /*---------------------------------------------------------------------*/
- /*********************************************************/
- #define MAIN_Fosc 22118400L //定義主時鐘
- //#define MAIN_Fosc 12000000L //定義主時鐘
- //#define MAIN_Fosc 11059200L //定義主時鐘
- //#define MAIN_Fosc 5529600L //定義主時鐘
- //#define MAIN_Fosc 24000000L //定義主時鐘
- /*********************************************************/
- #include "STC15Fxxxx.H"
- /************* 功能說明 **************
- 程序使用P4.7 P4.6 P1.6 P1.7 來演示跑馬燈,輸出低驅動。
- ******************************************/
- /************* 本地常量聲明 **************/
- /************* 本地變量聲明 **************/
- /************* 外部函數和變量聲明 *****************/
- /************* 本地函數聲明 **************/
- void delay_ms(u8 ms); // 這里只支持1~255ms.
- /******************** 主函數 **************************/
- void main(void)
- {
- /******************** IO配置 **************************/
- P0M1 = 0; P0M0 = 0; //設置為準雙向口 00上拉準雙向口 01浮空輸入 10開漏輸出 11推挽輸出
- P1M1 = 0; P1M0 = 0; //設置為準雙向口
- P2M1 = 0; P2M0 = 0; //設置為準雙向口
- P3M1 = 0; P3M0 = 0; //設置為準雙向口
- P4M1 = 0; P4M0 = 0; //設置為準雙向口
- P5M1 = 0; P5M0 = 0; //設置為準雙向口
- P6M1 = 0; P6M0 = 0; //設置為準雙向口
- P7M1 = 0; P7M0 = 0; //設置為準雙向口
- while(1)
- {
- P17 = 0; // LED7
- delay_ms(250);
- delay_ms(250);
- P17 = 1; // LED7
- P16 = 0; // LED8
- delay_ms(250);
- delay_ms(250);
- P16 = 1; // LED8
- P47 = 0; // LED9
- delay_ms(250);
- delay_ms(250);
- P47 = 1; // LED9
- P46 = 0; // LED10
- delay_ms(250);
- delay_ms(250);
- P46 = 1; // LED10
- }
- }
- //========================================================================
- // 函數: void delay_ms(u8 ms)
- // 描述: 延時函數。
- // 參數: ms,要延時的ms數, 這里只支持1~255ms. 自動適應主時鐘.
- // 返回: none.
- // 版本: VER1.0
- // 日期: 2013-4-1
- // 備注:
- //========================================================================
- void delay_ms(u8 ms)
- {
- u16 i;
- do{
- i = MAIN_Fosc / 13000;
- while(--i) ; //14T per loop
- }while(--ms);
- }
復制代碼
|
|