独闷闷网

 找回密码
 立即注册
搜索
查看: 6506|回复: 3
收起左侧

[原创] 学习stm32有必要深入研究寄存器操作吗?真的有那么难吗?正在讨论中...

[复制链接]
发表于 2014-11-14 22:00:40 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
伟-肇庆:
我建议库和寄存器一起学,如果你想学stm32.而不是简单拿来用.如果单纯是学库,你编程会很没底.

糖风——惠州:
昨晚我对着固件库和参考手册去配置,感觉真正弄起来,库也不简单啊……虽说开发速度快.

Ack-深圳:
先寄存器然后再库函数。

Tony--青岛:
很难看懂。

伟-肇庆:
建议初学者一边学寄存器编程,一边学库,对着来,学的很快的,编程可以寄存器和库混合编程。

鸿哥-深圳:
请教两个问题:
(1)为什么要研究寄存器编程,有什么特别的意义?我的理解是,只要我能操作到IO口输出高低电平就好了,知道内部它操作了哪些寄存器有什么用?
(2)我一直感觉stm32跟51一样很简单,不就是当做单片机一样操作一下IO口输出高低电平,还有再加一个定时中断就可以了,为什么我听你们讨论,感觉有很多库函数的样子?我觉得库函数很少呀,而且 寄存器也很少?

Inc-东莞:
开发的话,直接用库函数即可,能减少错误,增加开发效率,而且代码的效率不会比直接操作寄存器慢。学习的话,如果不懂寄存器,那么会有种心里没底的感觉。


鸿哥-深圳:
我怎么一点都没有这种感觉。

Inc-东莞:
还是咸鱼白菜,哈哈哈哈。我是两种都用。喜欢怎么用就怎么用。

鸿哥-深圳:
我自学stm32只用了一个星期就开始做项目了。但是听你们讨论,感觉很高深的样子,我觉得跟51没什么差别。所以非常不理解你们的行为。


伟-肇庆:
不,开发效率是库高,论代码和运行速度是寄存器效率高,鸿哥,51和 stm32不是一个档次的单片机。

Inc-东莞:
能快多少呢?其实这个没必要深究,有些人喜欢白菜,有些人喜欢咸鱼。

伟-肇庆:
库编程最终是对寄存器炒作的,可对??

Inc-东莞:
但是如果学个STM32也要搞这么复杂,那就没办法搞了。



鸿哥-深圳:
我觉得操作库函数的本质就是操作寄存器,为什么还能分出来两个不同的运行速度?我觉得它们的运行速度是一样的。即使有差别,这种差别对项目不会有任何影响。

伟-肇庆:
打字不方便,来日再论,现在在路上。

鸿哥-深圳:
我用stm32已经做过两个项目了。对于我们的工程师开发来说,我没有感觉到stm32跟51单片机有什么差别。就像一个司机一样,虽然宝马跟比亚迪的车不是一个档次,但是对于司机的驾驶技术来看,是一样的。而且驾驶宝马这样的高档车应该是更加容易一点。但是为什么我总觉得你们把stm32看得很高深的样子,我觉得stm32非常简单。但是之前那两个项目之所以选择stm32,是因为看中stm32的RAM多,串口多,有专门驱动彩屏的FSMC这三点,而且价格也不算高,性价比还可以。但是编程的框架思路跟51单片机完全一样。


Inc-东莞:
恩恩,鸿哥说的是对的。其实说白了,就是主频增加了,外设增加了而已。功能多了而已。

伟-肇庆:
那是鸿哥你把stm32当51用了。

鸿哥-深圳:
这样不对吗?

Inc-东莞:
宝马跟自行车有什么区别,区别大了,但是,都是代步工具而已。

伟-肇庆:
把跑车当拖拉机用,

鸿哥-深圳:
@Inc-东莞 我是说比亚迪。

Inc-东莞:
- -这有什么关系~~~~~~

鸿哥-深圳:
你别说宝马跟自行车,一个是4轮的,一个是2轮的。不同类。至少也要4个轮嘛。


Inc-东莞:
好吧~~要不奇瑞QQ好了。还不都是工具。鸿哥都用STM32来做过项目了。相必对STM32有一定的了解了。
那么问题来了。如果用固件库,鸿哥认为你在主函数中修改STM32的主频,你认为成功吗?

鸿哥-深圳:
我不会去修改主频的,我觉得没必要,我就用日常惯例的配置就可以了。何必要刻意去更改主频。

苏畅 -江苏:
STM32程序难调了……每次keil都弹出一打类似的错误……找不出原因的erro!根本难以进行呀……到底该咋办?  
太多错误找不出,怎么办?  


鸿哥-深圳:
我估计你是多文件编程的技巧没掌握好我搞stm32开发,也是从来不用仿真的,直接烧录程序进单片机看实验现象,我觉得没有什么错误呀,很轻松的。


乐于分享,勇于质疑!
发表于 2014-11-15 19:44:25 | 显示全部楼层
赞一个,,,学习了
乐于分享,勇于质疑!
发表于 2014-12-14 15:53:28 | 显示全部楼层
疑惑   好大的疑惑  我当时也不知道是从寄存器入手还是库函数入手。。。我就硬着头皮玩了一个星期的寄存器  记起来好麻烦,,然后后来就用库函数来做了,感觉比寄存器简单!!!
乐于分享,勇于质疑!
发表于 2015-3-18 11:06:50 | 显示全部楼层
小樱桃和车厘子有区别吗?高富帅觉得they are just cherries,矮挫穷说差别可大了,30个小樱桃还不够买一个车厘子。至于口感嘛,个人觉得小樱桃比车厘子更可口。feel sense 不一样。51 和 stm32,首先是 8`位和 32 位的 different taste,这就决定了能带多大的存储,能写多复杂的程序,不同的栈结构,就决定程序的算法中应该偏向静态全局变量还是多一些纯函数,麻辣豆腐和小葱豆腐都是豆腐,但是不同的工艺最大的影响了豆腐的口感。寄存器还是库函数的问题,如果对 size 有要求,就要少用库,如果要程序干干净净,就别去碰寄存器,至于速度上的差异,如果 profile 显示是个瓶颈,寄存器可能会派上用场,其它情况通常没有那么重要吧。
乐于分享,勇于质疑!
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|独闷闷网 ( 粤ICP备12007667号-2 )

GMT+8, 2024-10-14 09:51 , Processed in 0.200485 second(s), 18 queries .

快速回复 返回顶部 返回列表