新聞中心

        EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > STM32 JTAG端口作為普通I/O口使用的方法

        STM32 JTAG端口作為普通I/O口使用的方法

        作者: 時(shí)間:2016-11-23 來(lái)源:網(wǎng)絡(luò) 收藏
        STM32F10x系列的MCU復(fù)位后,PA13/14/15 & PB3/4默認(rèn)配置為JTAG功能。

        有時(shí)我們?yōu)榱顺浞掷肕CU I/O口的資源,會(huì)把這些端口設(shè)置為普通I/O口。具體方法如下:

        本文引用地址:http://www.104case.com/article/201611/320435.htm

        RCC_APB2PeriphClockCmd(RCC_APB2Periph_AFIO, ENABLE);

        //開(kāi)啟AFIO時(shí)鐘
        GPIO_PinRemapConfig(GPIO_Remap_SWJ_Disable, ENABLE);
        // 改變指定管腳的映射 GPIO_Remap_SWJ_Disable SWJ 完全禁用(JTAG+SW-DP)
        GPIO_PinRemapConfig(GPIO_Remap_SWJ_JTAGDisable , ENABLE);
        // 改變指定管腳的映射 GPIO_Remap_SWJ_JTAGDisable ,JTAG-DP 禁用 + SW-DP 使能

        注意:不要忘記在RCC_Configuration()中開(kāi)啟AFIO時(shí)鐘

        借用正點(diǎn)原子的寄存器操作:

        //JTAG模式設(shè)置,用于設(shè)置JTAG的模式
        //mode:jtag,swd模式設(shè)置;00,全使能;01,使能SWD;10,全關(guān)閉;
        //CHECK OK
        //100818
        void JTAG_Set(u8 mode)
        {
        u32 temp;
        temp=mode;
        temp<<=25;
        RCC->APB2ENR|=1<<0; //開(kāi)啟輔助時(shí)鐘
        AFIO->MAPR&=0XF8FFFFFF; //清除MAPR的[26:24]
        AFIO->MAPR|=temp; //設(shè)置jtag模式
        }


        關(guān)鍵詞: STM32JTAG端口普通IO

        評(píng)論


        技術(shù)專區(qū)

        關(guān)閉
        主站蜘蛛池模板: 治县。| 开远市| 宜宾市| 龙江县| 黄骅市| 福建省| 巧家县| 巍山| 嵊泗县| 龙南县| 沂源县| 县级市| 南川市| 新宁县| 金寨县| 金坛市| 闻喜县| 平罗县| 礼泉县| 寿光市| 太谷县| 铜梁县| 濉溪县| 富民县| 淮安市| 巴中市| 清水河县| 盐亭县| 高雄县| 新干县| 台前县| 廊坊市| 柳林县| 遂昌县| 佛山市| 湘阴县| 延津县| 含山县| 张家港市| 遵义县| 屯昌县|