找回密碼
         注冊會員
        搜索附件  
        MCU資訊論壇 附件中心 單片機論壇 51單片機論壇 C8051f單片機配置軟件.zip

        C8051f單片機配置軟件.zip

         

        C8051f單片機配置軟件(新手必備):
        Configuration Wizard支持的MCU有:

        F00x, F01x, F02x, F04x, F06x, F12x, F13x, F2xx, F30x, F31x, F32x, F33x, F34x, F35x, F36x, F41x, F50x, F52xA, F53xA, F92x, F93x T60x, T61x and T63x
        下面我以一個簡單的例子來說明Configuration Wizard的使用方法。

        試驗器材:

        C8051F340開發板(使用外部晶振22118400Hz) 1塊

        U-EC5仿真器 1個



        試驗目的:

        利用C8051F340開發板上的UART1輸出“hello”



        第一步:打開Configuration Wizard程序,選擇“C8051F340”,如下圖



        然后按“OK”后,自動生成C8051F340的程序框架,如下圖





        第二步:設置生成C代碼,在菜單“Options”中設置,如下圖





        第三步,配置開發板上的外圍設備(如UART,SPI,Timer。。。)都可以在菜單“Peripherals”中完成,如圖



        1,配置Port I/O,菜單“Peripherals”-“Port I/O”。由于開發板上UART1使用了P0.2和P0.3,所以配置如下:



        2,時鐘配置,菜單“Peripherals”-“Oscillators”,使用的是外部時鐘22118400Hz







        3,關閉WDT功能,菜單“Peripherals”-“PCA”





        4,UART設置,菜單“Peripherals”-“UART”,波特率設置為9600bps。





        第四步,生成代碼如下:

        /////////////////////////////////////
        // Generated Initialization File //
        /////////////////////////////////////

        #include "C8051F340.h"

        // Peripheral specific initialization functions,
        // Called from the Init_Device() function
        void PCA_Init()
        {
        PCA0MD &= ~0x40;
        PCA0MD = 0x00;
        }

        void UART_Init()
        {
        SBRLL1 = 0x80;
        SBRLH1 = 0xFB;
        SCON1 = 0x10;
        }

        void Port_IO_Init()
        {
        // P0.0 - Skipped, Open-Drain, Digital
        // P0.1 - Skipped, Open-Drain, Digital
        // P0.2 - TX1 (UART1), Open-Drain, Digital
        // P0.3 - RX1 (UART1), Open-Drain, Digital
        // P0.4 - Unassigned, Open-Drain, Digital
        // P0.5 - Unassigned, Open-Drain, Digital
        // P0.6 - Skipped, Open-Drain, Analog
        // P0.7 - Skipped, Open-Drain, Analog

        // P1.0 - Unassigned, Open-Drain, Digital
        // P1.1 - Unassigned, Open-Drain, Digital
        // P1.2 - Unassigned, Open-Drain, Digital
        // P1.3 - Unassigned, Open-Drain, Digital
        // P1.4 - Unassigned, Open-Drain, Digital
        // P1.5 - Unassigned, Open-Drain, Digital
        // P1.6 - Unassigned, Open-Drain, Digital
        // P1.7 - Unassigned, Open-Drain, Digital

        // P2.0 - Unassigned, Open-Drain, Digital
        // P2.1 - Unassigned, Open-Drain, Digital
        // P2.2 - Unassigned, Open-Drain, Digital
        // P2.3 - Unassigned, Open-Drain, Digital
        // P2.4 - Unassigned, Open-Drain, Digital
        // P2.5 - Unassigned, Open-Drain, Digital
        // P2.6 - Unassigned, Open-Drain, Digital
        // P2.7 - Unassigned, Open-Drain, Digital

        // P3.0 - Unassigned, Open-Drain, Digital
        // P3.1 - Unassigned, Open-Drain, Digital
        // P3.2 - Unassigned, Open-Drain, Digital
        // P3.3 - Unassigned, Open-Drain, Digital
        // P3.4 - Unassigned, Open-Drain, Digital
        // P3.5 - Unassigned, Open-Drain, Digital
        // P3.6 - Unassigned, Open-Drain, Digital
        // P3.7 - Unassigned, Open-Drain, Digital

        P0MDIN = 0x3F;
        P0SKIP = 0xC3;
        XBR1 = 0x40;
        XBR2 = 0x01;
        }

        void Oscillator_Init()
        {
        int i = 0;
        OSCXCN = 0x67;
        for (i = 0; i < 3000; i++); // Wait 1ms for initialization
        while ((OSCXCN & 0x80) == 0);
        CLKSEL = 0x01;
        }

        // Initialization function for device,
        // Call Init_Device() from your main program
        void Init_Device(void)
        {
        PCA_Init();
        UART_Init();
        Port_IO_Init();
        Oscillator_Init();
        }



        第五步,添加main函數和串口輸入函數

        void uart1SendChar(unsigned char ch)
        {
        SBUF1 = ch;
        while(SCON1&0x02==0)
        ;
        SCON1 = SCON1&0xfd;
        }



        void main(void)
        {
        Init_Device();
        while(1)
        {

        uart1SendChar('h');

        uart1SendChar('e');

        uart1SendChar('l');

        uart1SendChar('l');

        uart1SendChar('o');
        }
        }



        第六步,keil編譯完成后,下載程序,連接串口到PC,就可以看到輸出“hello”。

        QQ|手機版|MCU資訊論壇 ( 京ICP備18035221號-2 )|網站地圖

        GMT+8, 2025-5-5 08:57 , Processed in 0.039386 second(s), 8 queries , Redis On.

        Powered by Discuz! X3.5

        © 2001-2025 Discuz! Team.

        返回頂部
        香蕉在线精品视频在线观看一级| 久久99精品久久久久子伦| 国产美女久久精品香蕉69| 91在线视频精品| 国产精品麻豆VA在线播放| 真实国产乱子伦精品一区二区三区| 亚洲日韩精品射精日| 久草视频在线这里精品| 久久精品中文字幕第23页| 亚洲精品国产精品乱码在线观看| 99久久精品毛片免费播放| 精品一区二区三区高清免费观看 | 四虎国产精品成人免费久久| 亚洲av永久无码精品网站| 一区二区精品在线| 免费人成在线蜜桃视频| 欧美亚洲国产精品第一页| 先锋影音资源男人| 四虎4hu永久免费国产精品| 国产区视频在线观看一区| 99久久夜色精品国产网站| 亚洲精品夜夜夜妓女网| 亚洲国产精品热久久| 一本色道久久88—综合亚洲精品| 午夜影视日本亚洲欧洲精品一区| 日本加勒比在线视频| 四虎精品影院4hutv四虎| 4438全国最大成人| 国产精品玖玖美女张开腿让男人桶爽免费看| 亚洲精品欧美二区三区中文字幕 | 国产视频精品免费视频| 麻豆成人久久精品二区三区免费| 国产午夜精品久久久久九九| 无码精品国产一区二区三区免费| 国产成人精品高清不卡在线| 日韩国产成人精品视频| 久久精品夜色噜噜亚洲A∨| 国产精品91在线| 岛国电影一区二区三区| 国产成人久久精品麻豆一区| 亚洲国产精品成人久久|