zoukankan      html  css  js  c++  java
  • STM32C8T6 JTAG使用到PB3|PB4|PA13|PA14|PB15端口做普通IO时,需禁止JTAG!

     GPIO_InitTypeDef GPIO_InitStructure;
     RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB|RCC_APB2Periph_GPIOC|RCC_APB2Periph_AFIO, ENABLE);
     
     /**********************
     1.执行端口重映射时,复用功能时钟得使能:RCC_APB2Periph_AFIO
     
     2.  &1.GPIO_Remap_SWJ_Disable: !< Full SWJ Disabled (JTAG-DP + SW-DP)
          此时PA13|PA14|PA15|PB3|PB4都可作为普通IO用了
     
     为了保存某些调试端口,GPIO_Remap_SWJ_Disable也可选择为下面两种模式:
      
         &2.GPIO_Remap_SWJ_JTAGDisable: !< JTAG-DP Disabled and SW-DP Enabled
         此时PA15|PB3|PB4可作为普通IO用了
      
         &3.GPIO_Remap_SWJ_NoJTRST: !< Full SWJ Enabled (JTAG-DP + SW-DP) but without JTRST
         此时只有PB4可作为普通IO用了 
     **********************/
     
     GPIO_PinRemapConfig(GPIO_Remap_SWJ_NoJTRST, ENABLE);  //使能禁止JTAG

     //初始化GPIOB  推挽输出
     GPIO_InitStructure.GPIO_Pin = (GPIO_Pin_3|GPIO_Pin_4);
     GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;  
     GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;  
     GPIO_Init(GPIOB, &GPIO_InitStructure); 
     GPIO_SetBits(GPIOB, GPIO_Pin_3|GPIO_Pin_4);
     //初始化GPIOA  推挽输出
     GPIO_InitStructure.GPIO_Pin = (GPIO_Pin_13|GPIO_Pin_14|GPIO_Pin_15);  
     GPIO_Init(GPIOA, &GPIO_InitStructure); 
     GPIO_SetBits(GPIOA, GPIO_Pin_13|GPIO_Pin_14|GPIO_Pin_15);

  • 相关阅读:
    Java IO包装流如何关闭?
    Validator关于js,jq赋值不触发验证解决办法
    4 统计量&抽样分布
    3 概率的基本概念&离散型随机变量
    2 数据的概括性度量
    1 数据 & 图表
    Python 闭包
    一个自动修正数据时间和补全缺失数据的MapReduce程序
    MapReduce原理
    Hadoop MapReduce常用输入输出格式
  • 原文地址:https://www.cnblogs.com/zhaocundang/p/5916047.html
Copyright © 2011-2022 走看看