原子哥,F4一个python 浮点数除法除法运算大概需要多少周期

查看: 824|回复: 5
用原子哥的stm32f407zgt6的例程改到stm32f405rgt6除了改芯片名称还需要改什么
主题帖子精华
初级会员, 积分 119, 距离下一级还需 81 积分
在线时间12 小时
用原子哥的stm32f407zgt6的例程改到stm32f405rgt6除了改芯片名称还需要改什么
我用STLINK的时候发现显示&&no target connected
主题帖子精华
金钱108180
在线时间722 小时
检查硬件连接是否正常吧
主题帖子精华
初级会员, 积分 119, 距离下一级还需 81 积分
在线时间12 小时
原子哥,我用stm32f103c8t6也是64脚的替换stm32f405rgt6的芯片使用stlink烧写就可以,但是使用405的就不行,是不是烧写ROM程序起始地址的问题啊
主题帖子精华
金钱108180
在线时间722 小时
原子哥,我用stm32f103c8t6也是64脚的替换stm32f405rgt6的芯片使用stlink烧写就可以,但是使用405的就不行 ...
c8t6的电路和405的电路有差别吧。。。
你是不是电路就出问题了啊。。。
我是开源电子网站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺:
微信公众平台:正点原子
主题帖子精华
初级会员, 积分 88, 距离下一级还需 112 积分
在线时间15 小时
f1xx系列和f4系列在电路上就有差别吧,不然下载资料的时候也不会分开给啊
主题帖子精华
新手上路, 积分 27, 距离下一级还需 23 积分
在线时间7 小时
应该是在封装上不一样吧
Powered by浮点除法运算及其在单片机上的实现_图文_百度文库
两大类热门资源免费畅读
续费一年阅读会员,立省24元!
浮点除法运算及其在单片机上的实现
上传于|0|0|文档简介
&&介绍了一种在单片机上实现浮点运算的算法。版权所有归原作者!
阅读已结束,如果下载本文需要使用0下载券
想免费下载更多文档?
定制HR最喜欢的简历
下载文档到电脑,查找使用更方便
还剩2页未读,继续阅读
定制HR最喜欢的简历
你可能喜欢查看: 16441|回复: 49
学习STM32F407的FLASH编程,碰到一个超郁闷的问题,耗了哥2个晚上啊!!!
主题帖子精华
金钱108180
在线时间722 小时
昨天搞到3点多,今晚又搞到2半....
终于被我发现问题了.
//从指定地址开始写入指定长度的数据
//该函数对OTP区域也有效!可以用来写OTP区!
//OTP区域地址范围:0X1FFFFFF7A0F
//WriteAddr:起始地址(此地址必须为4的倍数!!)
//pBuffer:数据指针
//NumToWrite:字(32位)数(就是要写入的32位数据的个数.)&
void STMFLASH_Write(u32 WriteAddr,u32 *pBuffer,u32 NumToWrite)
u8 status=0;
u32 addrx=0;
u32 endaddr=0;
if(WriteAddr&STM32_FLASH_BASE||WriteAddr%4) //非法地址
STMFLASH_Unlock();
addrx=WriteA
//写入的起始地址
endaddr=WriteAddr+NumToWrite*4; //写入的结束地址
if(addrx&0X1FFF0000)
//只有主存储区,才需要执行擦除操作!!
while(addrx&endaddr)
//扫清一切障碍.(对非FFFFFFFF的地方,先擦除)
if(STMFLASH_ReadWord(addrx)!=0XFFFFFFFF)//有非0XFFFFFFFF的地方,要擦除这个扇区
& & & & & & & & & & & & & & & & printf("S");
status=STMFLASH_EraseSector(STMFLASH_GetFlashSector(addrx));
if(status) //发生错误了
}else addrx+=4;
if(status==0)
while(WriteAddr&endaddr)//写数据
if(STMFLASH_WriteWord(WriteAddr,*pBuffer))//写入数据
//写入异常
WriteAddr+=4;
pBuffer++;
STMFLASH_Lock();//上锁
红色的printf,加上,程序运行正常.
红色的printf去掉,程序随即进入死循环,死在等待FLASH空闲里面,一旦JTAG仿真,并设置断点在这里,则可以不要printf,也可以正常运行.
试过的方法:
1,找官方代码替换掉我的代码,结果,失败.
2,把printf,换成延时,失败.
3,把代码结构改了,失败.
4,把printf,换成直接写DR的方式发送,失败.
5,清FLASH-&SR标记位,失败.
6,将系统的delay_us,换成i--之类的延时,失败.
7,加多等待FLASH操作结束,失败.
总之,2个晚上,就在不停的尝试各种可能的解决方案.不停的刷代码,估计这板子上的F4,都快要被我刷爆了...
最后,眼看着今晚又要3点了,万念俱灰之际,找来stm32f4的编程手册(其实一直在看,寄存器看了N遍了...),发现
d75e481dfe48_665.jpg (0 Bytes, 下载次数: 35)
22:54 上传
这感情十分吻合啊,bus stall...
shit,才想起来,在系统时钟初始化的时候,默认是设置了DATA FETCHES的,仿真看下FLASH-&ACR的DCEN位,果然是1.
立即修改代码如下:
//从指定地址开始写入指定长度的数据
//该函数对OTP区域也有效!可以用来写OTP区!
//OTP区域地址范围:0X1FFFFFF7A0F
//WriteAddr:起始地址(此地址必须为4的倍数!!)
//pBuffer:数据指针
//NumToWrite:字(32位)数(就是要写入的32位数据的个数.)&
void STMFLASH_Write(u32 WriteAddr,u32 *pBuffer,u32 NumToWrite)
u8 status=0;
u32 addrx=0;
u32 endaddr=0;
if(WriteAddr&STM32_FLASH_BASE||WriteAddr%4) //非法地址
STMFLASH_Unlock();
& FLASH-&ACR&=~(1&&10);
//FLASH擦除期间,必须禁止数据fetch!!!搞了我两晚上才发现这个问题!
addrx=WriteA
//写入的起始地址
endaddr=WriteAddr+NumToWrite*4; //写入的结束地址
if(addrx&0X1FFF0000)
//只有主存储区,才需要执行擦除操作!!
while(addrx&endaddr)
//扫清一切障碍.(对非FFFFFFFF的地方,先擦除)
if(STMFLASH_ReadWord(addrx)!=0XFFFFFFFF)//有非0XFFFFFFFF的地方,要擦除这个扇区
status=STMFLASH_EraseSector(STMFLASH_GetFlashSector(addrx));
if(status) //发生错误了
}else addrx+=4;
if(status==0)
while(WriteAddr&endaddr)//写数据
if(STMFLASH_WriteWord(WriteAddr,*pBuffer))//写入数据
//写入异常
WriteAddr+=4;
pBuffer++;
FLASH-&ACR|=1&&10;
//FLASH擦除结束,开启数据fetch
STMFLASH_Lock();//上锁
下载,测试....
奇迹出现了...运行正常了.
我勒个去...
两个晚上,换来2行代码.....
诶,说起来都是泪啊,谁怪我没好好看看编程手册,早点看到这里就好了....
本来今晚想早点解决看个电影再睡觉的...
计划赶不上变化...
夜深了,明天还要上班,洗洗睡了....
此文,献给那些和我一样,被一个傻逼的问题搞到傻逼的人....
我是开源电子网站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺:
微信公众平台:正点原子
主题帖子精华
高级会员, 积分 541, 距离下一级还需 459 积分
在线时间68 小时
不错不错。原子大哥,每个人都有这样的经历吧
主题帖子精华
新手上路, 积分 38, 距离下一级还需 12 积分
在线时间3 小时
辛苦啊,表示理解。
F4系列还是有不少坑,宣传的是I/O与F1系列兼容,你要不仔细看还真绝不出毛病来,
仔细一看,有一对vcc和gnd与F1系列正好相反。当时就有点想砍人的冲动
主题帖子精华
在线时间224 小时
回复【楼主位】正点原子:
---------------------------------
有时候还真是这样郁闷,上次搞个家伙也是,花上几个晚上就换来几行代码,呵呵
现在,程序把烂铜烂铁变得智能化了,人呢,一旦离开了这烂铜烂铁就不知道干啥了
主题帖子精华
金钱108180
在线时间722 小时
恩,关键这种问题,不好定性,只能慢慢摸...
我是开源电子网站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺:
微信公众平台:正点原子
主题帖子精华
高级会员, 积分 645, 距离下一级还需 355 积分
在线时间0 小时
原子大哥,现在研究F407了?准备出个F407的板子?
主题帖子精华
金钱108180
在线时间722 小时
回复【6楼】pizhihui1993:
---------------------------------
在学习。
我是开源电子网站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺:
微信公众平台:正点原子
主题帖子精华
中级会员, 积分 497, 距离下一级还需 3 积分
在线时间25 小时
终于知道原子哥这一手牛逼的代码是怎么“写”出来的了,好好向原子哥学习!
主题帖子精华
高级会员, 积分 716, 距离下一级还需 284 积分
在线时间8 小时
看来准备出F4的板子了
世界如此美好,好好珍惜每一天吧!
主题帖子精华
中级会员, 积分 212, 距离下一级还需 288 积分
在线时间0 小时
回复【7楼】正点原子:
---------------------------------
原子哥。。那为什么加上Printf("S");也OK啊?
人需要沐浴阳光,也必将经历风雨
主题帖子精华
金钱108180
在线时间722 小时
回复【10楼】LOVE_FYD:
---------------------------------
这我也不知道.
我是开源电子网站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺:
微信公众平台:正点原子
主题帖子精华
初级会员, 积分 153, 距离下一级还需 47 积分
在线时间0 小时
你在前面埋坑,我们尾行你,辛苦了,呵呵
主题帖子精华
中级会员, 积分 255, 距离下一级还需 245 积分
在线时间1 小时
辛苦辛苦啊
主题帖子精华
金牌会员, 积分 1858, 距离下一级还需 1142 积分
在线时间97 小时
是不是没有检查本次编程完毕就进入下一次编程?printf占用的时间是比较可观的,特别是发串口.
技术讨论请发帖 , 需要我回复请点左下的
让系统通知我 .
本人不通过其他方式返回任何参数.
主题帖子精华
金钱108180
在线时间722 小时
回复【14楼】shihantu:
---------------------------------
不是这个,我用delay_ms(1000),都不行。。。
我是开源电子网站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺:
微信公众平台:正点原子
主题帖子精华
金牌会员, 积分 1858, 距离下一级还需 1142 积分
在线时间97 小时
那就奇怪了.有空翻翻我这边的代码...
技术讨论请发帖 , 需要我回复请点左下的
让系统通知我 .
本人不通过其他方式返回任何参数.
主题帖子精华
在线时间82 小时
这段时间&一直在&做那&软解MP3的程序&,搞到后面&发现&一直调不通DAC&,郁闷死我了,是ZET6144pin&的,各种方法都测试了。怎么都不会输出波形。
我应该写点什么呢。
主题帖子精华
新手上路, 积分 35, 距离下一级还需 15 积分
在线时间0 小时
回复【楼主位】正点原子:
---------------------------------
原子哥加油!!!
主题帖子精华
金钱108180
在线时间722 小时
回复【17楼】mygod:
---------------------------------
今晚打算搞IIS,呵呵.
我是开源电子网站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺:
微信公众平台:正点原子
主题帖子精华
金牌会员, 积分 1181, 距离下一级还需 1819 积分
在线时间7 小时
回复【楼主位】正点原子:
---------------------------------
很不错了,学51的时候有个ds1302我查程序5天都没找到原因。实在火大,用电烙铁拆换了ds1302,问题才解决。原来的问题是读出来的时间不按正常逻辑,前一秒是6:50分31秒,过一会就9点多了,或者时间倒流4点多。我彻底给made&in&China跪了。
QQ有好的资料记得发给我哦。。。
主题帖子精华
高级会员, 积分 589, 距离下一级还需 411 积分
在线时间38 小时
呵呵。
&
&
原子出个429,439板子吧。
主题帖子精华
新手上路, 积分 22, 距离下一级还需 28 积分
在线时间0 小时
主题帖子精华
在线时间42 小时
主题帖子精华
高级会员, 积分 613, 距离下一级还需 387 积分
在线时间7 小时
原來原子也會有這情況,我好多時也有這情況出現呢,十多句代碼,要用一天,有時也見有些人說很多天也不成功,寫代碼就是要耐性和頭腦的考驗
主题帖子精华
在线时间99 小时
主题帖子精华
中级会员, 积分 372, 距离下一级还需 128 积分
在线时间25 小时
都是大神啊,学习
主题帖子精华
新手上路, 积分 23, 距离下一级还需 27 积分
在线时间0 小时
花擦泪
原子大哥也要上班?
主题帖子精华
初级会员, 积分 58, 距离下一级还需 142 积分
在线时间6 小时
看了这个之后,很有感触!!!!现列如下:
1. 看懂英文文档很重要。
2. 佩服原子的努力!
3. 我有时候也被傻逼的问题搞到傻逼,芯片快被刷爆。
4. 我没有自己写过底层驱动,比如IIC,Flash编程,IIS,SPI等。请问原子哥,这样对自己发展是不是不好?
5. 我该反省一下自己。
主题帖子精华
金牌会员, 积分 1221, 距离下一级还需 1779 积分
在线时间114 小时
谢谢原子哥分享您的经历,我也遇到过这样的情况。慢慢摸索、克服困难,才有点成果
主题帖子精华
金牌会员, 积分 1570, 距离下一级还需 1430 积分
在线时间158 小时
EFM32系列的FLASH操作也是坑
态度决定一切 四人行
主题帖子精华
新手上路, 积分 23, 距离下一级还需 27 积分
在线时间7 小时
支持原子哥
主题帖子精华
初级会员, 积分 59, 距离下一级还需 141 积分
在线时间7 小时
原子哥厉害!学习了~
主题帖子精华
初级会员, 积分 57, 距离下一级还需 143 积分
在线时间1 小时
太感谢你的经验分享了
主题帖子精华
初级会员, 积分 113, 距离下一级还需 87 积分
在线时间15 小时
谢谢原子哥,学习了
主题帖子精华
初级会员, 积分 170, 距离下一级还需 30 积分
在线时间45 小时
原在大神原子哥也有遇到过难题
主题帖子精华
初级会员, 积分 115, 距离下一级还需 85 积分
在线时间12 小时
主题帖子精华
初级会员, 积分 127, 距离下一级还需 73 积分
在线时间13 小时
如果要对flash处理的话,建议把相应的处理程序搬运到ram中来执行,这样就能彻底避免上述问题了
主题帖子精华
初级会员, 积分 161, 距离下一级还需 39 积分
在线时间32 小时
搞SDRAM代码,可以正常运行,但是ltdc无法配置正确,代码翻了N遍,搞了好几天,最后才发现SDRAM中GPIO少初始化个PI3 。
主题帖子精华
新手上路, 积分 36, 距离下一级还需 14 积分
在线时间6 小时
我想问一下你们遇到这样的问题是怎样一步步给定位找原因解决的
主题帖子精华
新手上路, 积分 36, 距离下一级还需 14 积分
在线时间7 小时
主题帖子精华
初级会员, 积分 115, 距离下一级还需 85 积分
在线时间12 小时
原子哥,我给你点一百个赞,感谢你无私的分享,
主题帖子精华
中级会员, 积分 290, 距离下一级还需 210 积分
在线时间20 小时
哈哈哈哈哈哈哈
主题帖子精华
新手上路, 积分 8, 距离下一级还需 42 积分
在线时间0 小时
这个问题搞了一下午,各种延时,各种清标志位,还是不行。好在原子哥碰到过这问题。感谢。顺便说一句,在STMFLASH_ReadWord()函数里面加printf(&S&)也能正常读写,不过治标不治本。
主题帖子精华
初级会员, 积分 52, 距离下一级还需 148 积分
在线时间15 小时
辛苦啊,表示理解。
F4系列还是有不少坑,宣传的是I/O与F1系列兼容,你要不仔细看还真绝不出毛病来,
板子回来了,一切正常。焊接好,发现芯片发烫...去他奶奶
主题帖子精华
金牌会员, 积分 1092, 距离下一级还需 1908 积分
在线时间86 小时
辛苦了,原子哥
主题帖子精华
新手上路, 积分 31, 距离下一级还需 19 积分
在线时间2 小时
给原子赞一个
主题帖子精华
中级会员, 积分 228, 距离下一级还需 272 积分
在线时间33 小时
辛苦啊,表示理解。
F4系列还是有不少坑,宣传的是I/O与F1系列兼容,你要不仔细看还真绝不出毛病来,
这绝对是一个深坑。
主题帖子精华
初级会员, 积分 171, 距离下一级还需 29 积分
在线时间18 小时
问一下原子哥,F429的Flash一个扇区那么大,而擦除时又只能以扇区为单位擦除,我要将地址0x0807xxxx以后的区域用来保存数据以实现掉电不丢失,比如我要写的是4个字节或者2个字节,也必须要擦除整个扇区吗?那这样就将之前写的其他数据擦除了,问一下你这个怎么处理呢?先将扇区所有数据都读出来也不可能,太大了没地方放,难道我存一个16位的数据也要单独存入一个扇区?
主题帖子精华
新手上路, 积分 29, 距离下一级还需 21 积分
在线时间5 小时
请问if(STMFLASH_ReadWord(addrx)!=0XFFFFFFFF)//有非0XFFFFFFFF的地方,要擦除这个扇区,这里是不是只需要擦除一次就可以了啊?
主题帖子精华
初级会员, 积分 86, 距离下一级还需 114 积分
在线时间47 小时
发表于 7&天前
问一下原子哥,F429的Flash一个扇区那么大,而擦除时又只能以扇区为单位擦除,我要将地址0x0807xxxx以后的区域 ...
flash要想写就要先擦除
Powered by查看: 2594|回复: 5
原子哥啥时也整一个F4的开发板吧
主题帖子精华
初级会员, 积分 106, 距离下一级还需 94 积分
在线时间0 小时
现在F4的开发板已经出来了,好像核心板都有卖了~
原子哥就没有压力,打算退出更新的F4的板子?
至于F2,上不上,下不下,我看估计以后就鸡肋了啊~
主题帖子精华
金钱108180
在线时间722 小时
主题帖子精华
新手上路, 积分 27, 距离下一级还需 23 积分
在线时间0 小时
主题帖子精华
金牌会员, 积分 1681, 距离下一级还需 1319 积分
在线时间69 小时
原子兄要加快腳步了,畢竟時間也是成敗的關鍵因素。
主题帖子精华
金牌会员, 积分 1553, 距离下一级还需 1447 积分
在线时间2 小时
网上所谓的F4的开发板都是直接拿F2的板换上芯片而已,毕竟两者硬件上极为相似.
学习交流请加Q群:(STM32F4交流群)
主题帖子精华
在线时间21 小时
回复【楼主位】libing64:
---------------------------------
楼主这头像挺熟悉,原来是在TQ2440的论坛见过,呵呵
http://www.armbbs.net/forum.php?mod=viewthread&tid=10201&extra=page%3D2
TQ2440其实板子不错,
不过关于裸奔的资料比较少,
刚从51转过去的时候很不适应,,,无奈啊。。。估计上了ARM9都是系统级的,软件的比重比硬件大得多了。。。
对那种芯片,裸奔比较浪费片子的资源,只是对学习比较有利吧。
Powered by

我要回帖

更多关于 java 浮点数除法 的文章

 

随机推荐