你认为你需要一些关于微控制器编程的简单教程吗?

时间:2009-05-24 17:39:36

标签: embedded microcontroller

这不是100%编程相关的。但我认为这有点有用,因为它正在解决SO社区中的少数人。

微控制器编程是编程中的一个有趣领域。我在这里看到了一些主题,要求资源开始/学习/讨论PIC。

Example topic

由于我在这方面有丰富的知识和经验,我想发布一些资源,帮助新手从基础知识中学习它们。它不仅仅是一个理论出版物,而且将基于示例项目。我希望通过一个新的博客+论坛开始这个,这样用户就可以动态地互相交流。我做出了这个决定,因为我发现新手可以开始学习和协同工作的网站数量非常少。

你们对此有何看法?你有过这样的困难吗?你认为你可以使用它吗?您希望在网站上看到什么?

我会感激如果你不打算以NPR结束这个。我只是想为其他微控制器爱好者提供一些服务:)

7 个答案:

答案 0 :(得分:6)

网上已经有一些这样的教程(例如this one from SparkFun),另一个可能是一个有价值的补充,但只有在它以某种方式更好或不同的时候。

你会提供什么才能真正改善?

一些建议:

  • 不要以为我有窗户
  • 对各种MCU和/或支持电子设备之间的差异进行一些侧面讨论。讨论一些权衡
  • 你需要一个非常通用的教程来吸引人们,但真正的增值可能在开始后专注于专注。
  • 建立有用和/或令人讨厌的酷炫的东西
  • 关于组件集成的单元(即我可以购买Polar风格的心率接收器,以及MCU和USB接口。我如何让它们相互通话以便构建运动数据记录器?)

你做的每一件事,我都很期待(只是在业余时间学习嵌入式东西......)。

答案 1 :(得分:3)

www.mikrocontroller.net有很好的教程,但它们都是德语。

如果你能为英语社区创造类似的东西,那就太好了。

答案 2 :(得分:2)

是的!用于帮助嵌入式软件(微控制器编程)的资源越多越好。

开始时可能会非常艰巨,特别是如果您过去只为个人电脑或类似软件编写软件。存在更多限制(例如,在RAM和代码空间上),以及需要知道的不适用于非嵌入式软件的大量内容。

正如其他人在此提到的那样,有许多网站涵盖了这方面的不同方面;其他一些是OnARM,对于ARM处理器,相关的STM32 Circle和Jack Ganssle在他的websiteEmbedded.com上的文章。

虽然嵌入式系统是一个巨大的市场(只要想想你家里或车里有多少这样的设备),我的印象是网上主题的覆盖范围要少得多 - 而且Stack Overflow - 比非嵌入式。

所以,我期待看到你劳动成果!

答案 3 :(得分:1)

也许对于不同的ARM7和CortexM3 ......? 在这里每个人都有很多信息,但它遍布网络,没有任何红线,所以... ...

但是如果你选择AVR,http://www.avrfreaks.net就有很多东西了,我猜PIC也有很多东西。

答案 4 :(得分:1)

某些在定位初学者时值得考虑的其他事项是直接提供指向有用资源的指针,例如合适的模拟器/模拟器,甚至地址/网页,您可以轻松订购入门套件甚至免费提供样品芯片。

例如,大多数半导体制造商提供其产品的免费样品,例如请参阅microchip.comatmel.com

理想情况下,入门课程将基于在开始时使用这样的硬件模拟器或模拟器,以便一旦初学者有兴趣将他的工作转移到一个真实设备上,项目和所有相关经验可以直接映射到真实设备上真正的芯片,提供免费资源的指针,或非常实惠的入门套件非常有用。

这将确保初学者能够尽可能轻松便宜地开始。

答案 5 :(得分:0)

我自己写了很多这样的例子,但是它们分散而且没有组织,可能很少阅读(曾经有一段时间,avrfreaks的人借用了一些东西)。 StackOverflow可能会限制这个,但理论上可以使用SO。问一个关于arm whatsit的启动代码的问题,然后用示例代码和文本回答你自己的问题,关于它如何以及为什么工作。 SO标签会很好,因为你可以搜索“b​​oot”“arm”“embedded”,然后选择“boot”“avr”“embedded”等,并获得不同平台的类似示例程序。

答案 6 :(得分:0)

我个人更倾向于为特定的微控制器版本(在典型用途中)创建完整程序的示例存档,而不是制作另一个“通用”教程。例如。微控制器x / y之一,支持串行端口,配置一些数字输出(设置TRIS和朋友),如何设置公共频率/振荡器选项等。

当我开始使用PIC时,(非常短的PIC16,然后是PIC18,然后是24F,现在是dspic),其中一个主要问题是所有示例都只是片段或描述非常一般的原则。

如果教程实际工作需要更多技巧而不是教程教授,那么教程就不好了。

我通常无法为我的控制器找到一个完整的程序,或者甚至找不到更宽的组(仅在引脚和内存/闪存数量上有所不同)。

初始程序始终是问题所在,但有时后来我又遇到了同样的问题(初始化某个外围设备)(例如编码器)如果是第一次运行新的微控制器线,那就特别令人沮丧了,你可能不是100%确定你的硬件。

不幸的是,需要从论坛,用户组等进行一些协调,因为没有人拥有所有设备,并且所有变体都需要进行连接(例如,不同的振荡器选项)。