ptiinngg 发表于 2016-1-28 09:18:26

:lol:lol:lol

wolfgang2015 发表于 2016-1-28 10:26:25

苏柚 发表于 2016-1-28 09:05
请直接发帖,谢谢

先发个思路

loyi 发表于 2016-1-29 09:07:26

哈哈,这个不错

wujianwei3980-5 发表于 2016-1-29 09:15:06

哈哈,好活动,支持下

Ljmp 发表于 2016-1-29 11:15:13

;P;P;P又要回到学生时代啊

LIUBEIHUA 发表于 2016-1-29 15:42:07

通常我们进行端口配置时都用下面的格式

        GPIO_InitTypeDef   GPIO_InitStructure;
       
        RCC_AHBPeriphClockCmd(RCC_AHBPeriph_GPIOA,ENABLE);

        GPIO_InitStructure.GPIO_Pin = GPIO_Pin_5|GPIO_Pin_6;
        GPIO_InitStructure.GPIO_Mode = GPIO_Mode_OUT;
        GPIO_InitStructure.GPIO_OType= GPIO_OType_OD;
        GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_UP;
        GPIO_InitStructure.GPIO_Speed = GPIO_Speed_Level_2;
        GPIO_Init(GPIOA,&GPIO_InitStructure);

你是否想过漏了一行会出现什么后果吗。我前几天做一个IIC模拟驱动就遇到一个奇怪的事。半个月前搞到一个STM32F030的芯片完成了一个产品的开发。
随后想用这个板做一个MPU6050的程序,因为MPU6050要用到IIC通讯所以从网上下了一个“STM32F030模拟IIC接口 OLED 测试程序”,把它的IIC程序加到我的程序中来。
随后开始调试。
这时奇怪的事就出现了,我用的编程软件是MDK V5.17,当我点击“Debug”把程序下载到芯片时,芯片就死了无法进行仿真,退出“Debug”状态,点击“Options for Target",再点击“Debug”,查看“Setings"发现仿真器已不认该芯片了,好在手上有好几个板呢,换一块板试试现象完全一样。
因为程序还没调试,也无法调试所以没想到是程序的问题。总共只有10颗芯片做产品用去两颗还有8颗,先想到的是救回这两颗芯片,用J-flash擦除不管,无法通讯,再换用ST-LINK擦除还是不管,也是无法通讯。后来用串口通讯把芯片擦除了。
反复试了几次,只要点击“Debug”芯片就死了,死了就用串口擦除,因为我以前一直用的MDK V4.72,对MDK V5.17不是太熟练所以又卸载了MDK V5.17安装了MDK V4.74(MDK V4.72不支持STM32F030),再编译奇怪的现象有出现了,原来6点几K的程序居然变为18点几K,超出了芯片范围,压缩程序把程序压缩到12K再开始调试,可以单步执行,就是无法进入main。
分析以下可能是程序的问题,重新开始调试,先把程序注释掉,在一条一条放开当执行到IIC_Configuation(),时芯片就死了,再把IIC_Configuation()里的语句注释掉,在一条一条放开这时发现居然没有“GPIO_InitStructure.GPIO_Pin = GPIO_Pin_5|GPIO_Pin_6;”,问题肯定在这里了赶紧加上去一调试成了。
没想到少了一条语句居然有这样的问题。

拉肚肚 发表于 2016-1-29 17:53:33

来个签到:dizzy:

er_en 发表于 2016-1-30 07:57:38

好活动,期待。。。。。。。。。

天师猫神 发表于 2016-1-30 11:08:26

等有空在写,,,,,,,,,,,,,

沐紫 发表于 2016-2-1 13:46:08

LIUBEIHUA 发表于 2016-1-29 15:42
通常我们进行端口配置时都用下面的格式

        GPIO_InitTypeDef   GPIO_InitStructure;


请发新帖子,就可以参与到本活动中!
页: 1 2 [3] 4
查看完整版本: 【新年活动】征文,说出你与ST的点滴故事,赢STM32开发板