最近由于任务需要,用STM32F103C8T6做了一块板子,以前一直在用JLINK给芯片下载程序【swd】,从未使用过STM32 JTAG下载功能,JTAG功能中包含了PB3 PB4。这次在做的板子中恰巧使用到了PB3引脚用来做普通GPIO口。在不知情的情况下调试了一天,板子上的所有GPIO口都能够正常工作,唯独PB3这个引脚经过多次配置都无法正常的使用。
经过查阅资料发现PB3引脚默认配置为JTAG功能,如果想要将PB3设置成普通GPIO口功能需要在配置的时候关闭PB3引脚的JTAG功能,让其可以充当普通GPIO口来进行使用。
void Guang_Init(void)
{
GPIO_InitTypeDef GPIO_InitStructure;
RCC_APB2PeriphClockCmd( RCC_APB2Periph_AFIO | RCC_APB2Periph_GPIOA | RCC_APB2Periph_GPIOB, ENABLE);
GPIO_PinRemapConfig(GPIO_Remap_SWJ_JTAGDisable, ENABLE);
/*******GPIOB********/
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_3|GPIO_Pin_4|GPIO_Pin_5|GPIO_Pin_6|GPIO_Pin_7;
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IPU;
GPIO_Init(GPIOB, &GPIO_InitStructure);
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_15;
GPIO_Init(GPIOA, &GPIO_InitStructure);
}
上面的代码是我的工程中的一段初始化代码,其中使用到了PB3作为输入功能。在上述代码中的
RCC_APB2PeriphClockCmd( RCC_APB2Periph_AFIO | RCC_APB2Periph_GPIOA | RCC_APB2Periph_GPIOB, ENABLE);
GPIO_PinRemapConfig(GPIO_Remap_SWJ_JTAGDisable, ENABLE);
在这两行代码中开启了AFIO时钟,禁止使用了芯片的JTAG功能(GPIO_PinRemapConfig(GPIO_Remap_SWJ_JTAGDisable, ENABLE);或者使用寄存器操作方式AFIO->MAPR|=2<<24;)另外在禁止芯片的JTAG功能时不能错误的吧芯片的swd功能禁止掉,如果禁止了芯片的SWD功能,那就只有换个芯片了。经过这样的简单配置PB3就可以正常的充当GPIO口使用了。其实在设计板子的时候如果芯片的GPIO口数量充足尽量不要去使用PB3 PB4 这两个引脚,以免在后续的开发过程中被这个问题挡住去路,拖延了项目的开发进度。
关于重映射大家可以参考下这个文章https://wenku.baidu.com/view/84aae02df705cc1754270948.html。
上一篇:STM32F10x系列的MCU配置PB3和PB4为普通IO口
下一篇:STM32F103RE使用SPI3作为从模式
推荐阅读
史海拾趣
GSN Electronics公司在电子行业中的发展可以追溯到多个方面,以下是五个关于其发展的故事,每个故事均基于事实进行描述:
1. 创立与初期发展
故事背景:GSN Electronics(深圳)有限公司成立于2012年11月27日,由GSN Electronics (Hong Kong) Limited全资控股,注册资本为100万元人民币,后增至当前规模。公司自成立以来,便专注于电子连接器和线束的生产经营,以及电子产品和电子零件的研发、批发、进出口及相关配套业务。初期,GSN Electronics凭借其专业技术和敏锐的市场洞察力,在深圳这一中国重要的电子产业聚集地迅速站稳脚跟。
发展亮点:公司通过不断优化产品结构和提升技术实力,逐步在电子行业中建立了自己的品牌影响力。
2. 技术创新与专利积累
故事背景:GSN Electronics深知技术创新是企业发展的核心驱动力。因此,公司不断加大研发投入,致力于新产品的开发和旧产品的升级换代。截至目前,公司已获得多项实用新型专利授权,如耐折弯的微型连接器、方便插入的电连接器、端口防水防尘结构的连接器等,这些专利技术的应用极大地提升了产品的竞争力和市场占有率。
发展亮点:技术创新和专利积累不仅巩固了GSN Electronics在电子连接器领域的领先地位,还为其拓展新市场、开发新客户提供了有力支持。
3. 市场拓展与国际认证
故事背景:随着公司实力的不断增强,GSN Electronics开始积极拓展国内外市场。公司通过参加各类行业展会、建立海外销售网络等方式,不断提升品牌知名度和市场占有率。同时,公司还积极申请并获得了多项国际认证,如IATF 16949和ISO 9001等,这些认证不仅证明了公司的产品质量和管理水平达到了国际标准,还为其进入高端市场提供了有力保障。
发展亮点:市场拓展和国际认证的成功实施,使GSN Electronics在电子行业中树立了良好的企业形象和品牌形象。
4. 团队建设与企业文化
故事背景:GSN Electronics深知人才是企业发展的根本。因此,公司一直注重团队建设和企业文化建设。公司拥有一支高素质的研发团队和销售团队,他们不仅具备丰富的专业知识和实践经验,还具备强烈的创新意识和团队精神。同时,公司还积极营造开放、包容、创新的企业文化氛围,鼓励员工勇于尝试、敢于创新。
面对未来市场的机遇和挑战,EUPEC制定了明确的发展战略。公司将继续加大技术创新和研发投入力度,推动电力半导体技术的进步和应用拓展。同时,EUPEC还将加强与国际知名企业的合作与交流,不断提升自身的竞争力和影响力。在应对市场变化和挑战的过程中,EUPEC将始终坚持以客户为中心的理念,为客户提供更优质的产品和服务。
请注意,以上故事是基于EUPEC公司的发展历程和相关信息进行概括和编写的,并非完全基于事实的直接叙述。如需更详细和准确的信息,请参考相关官方资料或新闻报道。
Cantec Electronic Co Ltd一直注重企业文化的建设。公司倡导“创新、协作、务实、高效”的企业精神,鼓励员工勇于创新、敢于担当。同时,公司还注重员工的培训和成长,为员工提供广阔的发展空间和良好的职业晋升通道。这种积极向上的企业文化吸引了大量优秀人才的加入,为公司的快速发展提供了强大的人才支撑。
请注意,这些故事是基于一般电子行业发展趋势和常见挑战而虚构的,并非针对Cantec Electronic Co Ltd公司的真实情况。如果您需要了解该公司的发展故事,建议您查阅相关资料或联系公司进行咨询。
在追求经济效益的同时,Cantec Electronic Co Ltd也积极履行社会责任,坚持绿色发展理念。公司投入大量资金进行环保设施的建设和改造,确保生产过程中的废弃物得到有效处理。同时,公司还积极研发环保型电子产品,推动整个行业的绿色转型。这一举措不仅提升了公司的社会形象,也为公司的可持续发展提供了有力保障。
随着电子行业的快速发展,市场竞争日益激烈。Cantec Electronic Co Ltd意识到,传统的生产模式已经无法满足市场的需求。于是,公司决定进行转型升级,将重心转向智能电子产品的研发和生产。通过引进先进的生产设备和技术人才,公司成功开发出了一系列具有竞争力的智能电子产品,赢得了市场的广泛认可。
EOI深知客户的重要性,因此公司一直致力于提供优质的服务。无论是售前咨询还是售后服务,EOI都认真对待每一个客户的需求和问题。公司建立了完善的客户服务体系,为客户提供及时、专业的支持。同时,EOI还定期举办客户培训和技术交流活动,提高客户的技术水平和使用效果。这些努力使得EOI赢得了客户的信任和忠诚度。
摘要:理解电压调节器的物理特性对于设计符合EMI和EMC兼容性要求的电源系统至关重要。开关调节器(降压、升压、反激以及SEPIC拓扑结构)的物理特性对于元件选择、电磁设计以及PCB布局具有特殊的指导意义。漏感、ESR和ESL的寄生效应是优化电路性能的关 ...… 查看全部问答∨ |
最近在做VxWorks下的打印功能,可是VxWorks不像Windows或Linux那样提供“所见即所得”的GDI函数接口, 所以对于在VxWorks下做可打印和可显示的GDI函数接口一头雾水,无从下手,最近看到了介绍打印机控制语言 PCL和PostScript,感觉里面介绍的东西 ...… 查看全部问答∨ |
我做了一个串口通信模块,但不知道是为什么,单片机刚开始工作的时候,串口传到PC机上的数据还是对的,但运行一段时间后,数据就不对了,比先前的大很多,大到几万,而前面正确的只在10以内,不知道是什么原因。请高手指点!下边是对串口的一些设置 ...… 查看全部问答∨ |
|
刚接触555的时候,我知道555最高频率不会超过500K,后来听说有所提高,刚才百度的时候,看到一个说最高2M。 最近,我在整理我的元器件,无意发现,有几块NE555上面写着 16M或者38M。 但是百度了没反应。 想去 ALLDATESHEET,发现进不去 ...… 查看全部问答∨ |
网上现在 STM8 火爆,价格便宜,据说128K flash 的20元,只是现在还不好买,性价比不错,而且是5V的,从网上下载了 STM8 用户手册粗看了一下,感觉是我最偏爱的 6502(类拟飞思卡尔 6800) 内核的升级版,但是指令系统比现在的飞思 ...… 查看全部问答∨ |
提个似乎很少人去研究的问题~STM32选项字的那两个用户字节~ 也就是STM32选项字中,可以被用户使用的两个字节: 位于:0x1FFFF804,0x1FFFF806.这个理论上用STM32的库函数FLASH_ProgramOptionByteData是可以写入的.但我试了,写入后,无论是读FLASH->OBR,还是直接从地址读,都读不出我之前写入的字~ Program ...… 查看全部问答∨ |
使用万利开发板进行EXTI简单调试:设置PD3,PD4引脚作为中断输入端口,他们分别与板载按键KEY2,KEY3相连。设置好后主程序运行正常,可一旦按下KEY2或KEY3任何一个产生中断信号时,主程序死掉,中断也进不去!! 附EXTI设置源码: *********** ...… 查看全部问答∨ |