历史上的今天
返回首页

历史上的今天

今天是:2024年10月18日(星期五)

正在发生

2019年10月18日 | STM32F103x8B PB3、PB4、PA14、PA15引脚作为普通IO口使用

2019-10-18 来源:eefocus

STM32的PB3、PB4、PA14、PA15引脚可以在使用ISP烧录的情况下释放出来,作为普通IO口使用。


初始化代码如下:


void Gpio_init(void)

      {

       GPIO_InitTypeDef GPIO_InitStructure;

RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA | RCC_APB2Periph_GPIOB | RCC_APB2Periph_AFIO,ENABLE);

GPIO_PinRemapConfig(GPIO_Remap_SWJ_Disable,ENABLE);

GPIO_InitStructure.GPIO_Pin = GPIO_Pin_4;      

GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;

GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;

GPIO_Init(GPIOB,&GPIO_InitStructure);

         GPIO_ResetBits(GPIOB,GPIO_Pin_4);

GPIO_InitStructure.GPIO_Pin = GPIO_Pin_3;      

GPIO_Init(GPIOB,&GPIO_InitStructure);

GPIO_SetBits(GPIOB,GPIO_Pin_3);

GPIO_InitStructure.GPIO_Pin = GPIO_Pin_14;     

GPIO_Init(GPIOA,&GPIO_InitStructure);

GPIO_SetBits(GPIOA,GPIO_Pin_14);

   

GPIO_InitStructure.GPIO_Pin = GPIO_Pin_15;     

GPIO_Init(GPIOA,&GPIO_InitStructure);

GPIO_SetBits(GPIOA,GPIO_Pin_15);

        }


在实际测试的时候,若发现工程内上述引脚仍无法当做普通IO使用,很可能是上述初始化代码后还执行了GPIOA或GPIOB的时钟使能代码,解决办法为:上面这段初始化代码放在所有IO初始化最后就好了。


问题原因:


当把PB3、PB4、PA14、PA15初始化之后,若再次调用GPIOA或GPIOB端口的时钟使能代码的话,会使得这些引脚变回JTAG或SWD的引脚


即上述初始化完成之后不能再执行:


RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA | RCC_APB2Periph_GPIOB | RCC_APB2Periph_AFIO,ENABLE);


否则引脚会变回JTAG或SWD的引脚,而无法作为普通IO使用


注:上述初始化代码把所用引脚均配置为推挽输出,可根据需要自行配置为其他模式

推荐阅读

史海拾趣

汇科公司的发展小趣事

与山东汇科电气技术有限公司不同,苏州汇科技术股份有限公司成立于2000年,是一家专业从事开发、设计、制造各式工业窑炉的技术型企业。公司位于江苏省常熟市辛庄工业开发区,凭借对技术的执着追求和对品质的严格把控,逐渐在行业中崭露头角。多年来,苏州汇科技术股份有限公司通过不断的技术创新和产品升级,赢得了客户的广泛认可和市场的信赖。

Greenwich Instruments Ltd公司的发展小趣事

进入21世纪后,Greenconn Corp意识到全球化趋势不可逆转,于是制定了国际化战略,积极开拓海外市场。公司通过参加国际展会、建立海外销售网络、与跨国企业建立合作伙伴关系等方式,不断提升品牌知名度和市场份额。特别是在亚洲、欧洲和北美等发达国家和地区,Greenconn Corp的连接器产品凭借其卓越的性能和优质的服务赢得了广泛认可,逐步建立了完善的销售和服务体系。

Geyer Electronic E K公司的发展小趣事

进入21世纪后,Greenconn Corp意识到全球化趋势不可逆转,于是制定了国际化战略,积极开拓海外市场。公司通过参加国际展会、建立海外销售网络、与跨国企业建立合作伙伴关系等方式,不断提升品牌知名度和市场份额。特别是在亚洲、欧洲和北美等发达国家和地区,Greenconn Corp的连接器产品凭借其卓越的性能和优质的服务赢得了广泛认可,逐步建立了完善的销售和服务体系。

Diamond SA公司的发展小趣事

随着技术的不断成熟,Diamond SA公司开始积极拓展市场。他们与全球知名的电子产品制造商建立了合作关系,将自己的芯片技术应用于各种电子设备中。同时,公司还加大了品牌推广力度,通过一系列营销活动提升了品牌知名度和美誉度。随着市场份额的逐步扩大,Diamond SA公司成为了电子行业中的领军企业。

E-Mark Inc公司的发展小趣事

GHI公司一直致力于提升产品品质和安全性。为了进入欧洲高端市场,GHI公司决定对其核心产品进行E-Mark认证。在认证过程中,GHI公司不断完善质量管理体系,提升生产工艺水平,确保产品质量的稳定性和可靠性。最终,GHI公司的产品成功获得了E-Mark认证,并在欧洲市场获得了良好的口碑和市场份额。

Harris公司的发展小趣事

进入21世纪后,Hammond进行了内部重组,将变压器事业部分拆为独立的Hammond Power Solutions, Inc.(HPSI)。这一举措使得两家公司能够更加专注于各自的核心业务,实现更加高效和专业化的发展。Hammond Manufacturing则继续专注于电气和电子外壳、机架、机柜以及电子变压器的生产,而HPSI则专注于定制和分类变压器的制造。这种专业化的分工不仅增强了各自的市场竞争力,还为客户提供了更加全面和专业的服务。

通过这些故事,我们可以看到Hammond公司在电子行业中的发展历程充满了挑战与机遇。从初创时期的艰难起步,到成为行业先驱和全球领先企业,Hammond始终保持着对市场的敏锐洞察和持续创新的精神。

问答坊 | AI 解惑

模电仿真软件proteus7.2 sp6破解版

模电仿真软件proteus7.2 sp6破解版的文件如何安装,因为我是第一次用这个东东,希望大家能帮个忙?…

查看全部问答>

共享份单片机C语言教程(包括基础、提高和应用篇)

如题分为三篇,写得很简明的一份C教程,有兴趣的朋友可以下来看看:P…

查看全部问答>

WIN CE U盘识别问题

WIN CE 识别U盘特别不稳定。。。有的时候可以识别。。。有的时候识别不了。。。要重启一下才能识别!! 这是什么问题啊?…

查看全部问答>

VS2005 Win32 位图菜单问题

我现在用的是VS2005里面的移动设备下面的Win32编程。想在创建的菜单中放入位图: 首先我用了AppendMenu函数:     HMENU hMenu;     hMenu = LoadMenu(g_hInst,MAKEINTRESOURCE(IDR_MENU));     AppendMenu(hMen ...…

查看全部问答>

vhdl中输入与输出端口的问题

在下面的端口部分,b1,b2,b3到底是输入,还是输出啊??? LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; USE IEEE.STD_LOGIC_UNSIGNED.ALL; ENTITY  amp IS     PORT (     a1,a2 : IN BIT_VECTOR( ...…

查看全部问答>

各位大侠救命,PC104接口如何转PCI接口

各位大侠: 我需要将PCI接口的数据采集卡装到工控机上使用,因此需要将工控机的PC104接口转换为PCI接口。查阅了相关的资料,都说PCI、PC104与ISA总线兼容,但是都没有讲管脚连接方式。各位大侠救我! 只有这么多分,哥哥姐姐救我!…

查看全部问答>

有关uclinux串口通讯?内核有问题?只能发,不能收?????

arm7 s3c44b0x,装入了uclinux操作系统 ,调试控制是用的telnet 板上com1口,为系统标准输出 pc机上通过minicom可以接收到由com1口打印输出的信息, 通过minicom可以输入命令(如ls ,ps等)来操作uclinux 我想问的是,既然com1口可以读写 ...…

查看全部问答>

STM32的RTC和复位问题

在调试中,发现有时有类似STM32没有复位,而系统无法启动的现象,包括使用STM32自身的复位电路和外接复位芯片。按理说,这种问题是不应该发生的。 进一步的调试发现,若断开VBAT,再接上,系统就无法启动。 是否由于RTC的问题会导致系统无法 ...…

查看全部问答>

求高人指点wince6申请系统中断号出错问题

大家好,小弟碰到个棘手问题想求教各位高人。我用S3C6410开发板的外部中断EINT1,在驱动里面我用KernelIoControl(IOCTL_HAL_REQUEST_SYSINTR, &g_EINTIrq, sizeof(g_EINTIrq), &g_EINTSysIntr, sizeof(g_EINTSysIntr), NULL),其中g_EINTIrq=1 ...…

查看全部问答>

TI Sitara入门笔记4- AM335X EVM SK Android应用指南

AM335X EVM SK Android Devkit 指南 EVM sk 功能 功能 处理器 AM335x 720 MHz 显示 4.3\"液晶触摸屏显示内存 256 MB DDR3Wi-Fi 集成的 WLAN 802.11 b/g/n蓝牙 与 EDR BT2.1USB 高速 2.0 OTG 与调试 uart 多路传输音频 立体声音 ...…

查看全部问答>