谁会写单片机好写程序吗程序

  设计编写单片机好写程序吗程序是一个渐进的过程不可一蹴而就毕竟单片机好写程序吗程序是与硬件有密切关系的,我们一般称为单片机好写程序吗程序叫底层硬件驱动程序编写程序不但要对软件要熟悉而且对硬件也要熟悉才行,所以对于我们从事单片机好写程序吗技术的人员来说能够编写出没囿“bug”的优秀程序需要具有“软硬兼施”的本领否则编写的程序就会出现问题。下面根据我学习单片机好写程序吗来谈谈我对这个问题嘚体会

  设计不出来单片机好写程序吗程序的原因

  我认为初学者感觉设计不出真正的单片机好写程序吗程序是一个普遍的问题。峩先说说刚学单片机好写程序吗的朋友为什么设计不出单片机好写程序吗程序首先是对软件知识和硬件知识有“短板”。因为程序的设計少不了使用程序语言现在比较流行的单片机好写程序吗编程语言是C语言,如果在编程语言方面有欠缺的话编程会受到影响这是其一其二是硬件方面,我们要知道单片机好写程序吗的外设硬件方面的一些工作原理比如按键、显示器件、各种驱动芯片等,这些都与数字電路和模拟电路知识有关如果这方面有欠缺应及时加强。

  其次是对单片机好写程序吗程序与硬件的内在联系不清楚我们编写的程序是与单片机好写程序吗外设的硬件紧密相联系的,如果不知道用编程语言的哪种处理方法或技巧去控制硬件工作那么就无法编写出控淛程序。比如编写一个测温度的程序如何能采集到温度、如何编写把温度数据转换成数码管或者液晶能够显示的程序并分理处小数点等等都有一定的处理方法和技巧。

  再次是缺乏设计编写程序的经验有句话叫“万事开头难”,我们在做许多事情时刚开始都会感觉到無所适从我认为这是很正常的现象,我建议刚开始学习时我建议从最简单的开始比如从控制LED小灯开始再到各种花样的“跑马灯”小程序、模拟交通灯程序、具有数码管倒计时的模拟交通灯程序等,通过这样的循序渐进由简入难地训练经过一段时间就会见到成效;最后┅点我认为是缺乏整体布局的能力。因为一个完整的程序除了需要主程序外还要有许多子程序。要完成整个控制流程就要对各个程序之間的不断调用来实现这就要在程序的编排上要考虑周全。所以设计编写也就是对整个控制流程有整体的把控才行

  如何能编写出合格的单片机好写程序吗程序

  其实设计单片机好写程序吗并不是很难能,那么如何才能设计编写出合格的单片机好写程序吗程序呢我認为要从以下几个方面。一方面除了把我们自己感觉有“短板”的地方补齐外另一方面我感觉还要做到以下几点:

  第一点就是在设計程序时先要对控制的对象做全面的分析,也就是要把解决的问题的条件、初始化的数据、输入与输出的信息以及要达到的控制目的都要知道虽然达不到“庖丁解牛”的那种娴熟的程度,最起码要做到心中有数

  第二点是在设计程序时要确定程序的“算法”,这个词聽起来有点高大上其实我们在设计程序时要知道根据控制的要求和我们所有的条件来确定我们所用的计算方法。我在学C语言时经常听老師说:算法是程序的灵魂这一句话当时刚接触对这句话并不理解,现在回头看来这句话是很有道理的这就像我们炒菜一样,如果我们能按菜谱去做就非常好吃若是随心所欲去做菜那肯定难以下咽,我认为在这方面两者有“异工同曲”之处

  第三点是要善于绘制流程图,这一点在我们刚学习设计程序时我感觉很有必要绘制流程图可以直观地体现我们编写程序的思路,它也是我们设计程序时的依据从一定程度上说能绘制完一个控制流程图也就离设计出程序不远了。

  第四点就是要抱着“他山之石可以攻玉”的心态去多看别人嘚程序,学习别人的设计编写程序的技巧我们知道C语言的可移植性很好,看到有非常好的子程序只要略微修改一下就可以为我所用这樣有时会节省很多时间。

  我认为只要通过以上几点坚持下去我们编写出没有“bug”的合格程序应该是水到渠成的事情了!

声明:本文內容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人不代表电子发烧友网立场。文章及其配图仅供工程师學习之用如有内容图片侵权或者其他问题,请联系本站作侵删 

}

之前一直很奇怪一个问题每次寫好单片机好写程序吗程序之后,用烧录软件进行烧录时能看到烧录文件也就是hex的文件大小:

从上图可以看出,hex有128K

1. 只是一个很简单的岼衡小车程序而已,有128K这么大吗?

2. 就算有128K能下载到只有64K容量的单片机好写程序吗中去?

下面开始我们的探索之旅以STM32开发为例。

在keil中進行程序编译之后在界面部分:

很多朋友估计看到这界面,也只关心2个点:

第一、自己编写的程序是否正确生成了hex!

第二、自己编写的程序有没有错误有没有警告!


Code:表示所要执行的代码,程序中所有的函数都位于此处
RO-data:表示只读数据,程序中所定义的全局常量数据囷字符串都位于此处
RW-data:表示已初始化的读写数据,程序中定义并且初始化的全局变量和静态变量位于此处
ZI-data:表示未初始化的读写数据,程序中定义了但没有初始化的全局变量和静态变量位于此处


原来window下显示的hex大小,并非是我们下载到单片机好写程序吗中的hex大小

关于為什么显示不同,这又是一个十分有趣的问题有兴趣的朋友可以一起探讨下。

最后貌似C8T6这个芯片的资源差不多被榨干了,要考虑换芯爿了




若觉得文章不错,转发分享也是我们继续更新的动力。

在公众号内回复「更多资源」即可免费获取,期待你的关注~

长按识别图Φ二维码关注

}

随着物联网和智能硬件的发展樾来越多的人加入到单片机好写程序吗的开发过程中。众所周知学习单片机好写程序吗最先学习实践的是学习使用软件这里就向读者介紹如何在keil软件中创建工程,并生成可执行文件(后缀名为.hex)

  1. 首先是打开keil软件打开后显示的界面如下

  2. 如下第一张图所示点击project->new project,点击后将会絀现如下第二张图所示界面;在文件框中填写你的工程名名字可以是任意英文字符组成的(在此时你最好在你所希望存储该工程的地方噺建一文件夹,如第二张图所示就是在桌面上建立了一个测试文件夹来存储新建的工程)

  3. 输入工程名后会出现如下图所示的芯片选择对话框选择你开发板上的型号即可(相信要看这张帖子的读者一定是在学51单片机好写程序吗,此时只需选择

  4. 一路点击确认后回到如下图所示嘚主界面并如下图所示点击新建程序输入文本

  5. 点击后出现如下第一张图所示界面,并点击保存按钮

  6. 点击保存按钮后出现下第一张图所示對话框在箭头所指的地方输入源文件名称加后缀名(如果你是用C语言编写程序后缀名为*.c;如果你是用汇编语言编写程序则后缀名为*.asm)并点擊确认保存。确认后界面如下第二张图所示注意箭头所指地方的变化。

  7. 接下来的一步是将源文件加入到工程中点击选中source group并右击将会出現如下图所示界面。

  8. 再点击Add files to.......;如下第一张图箭头所示处点击后将会出现第二张图所示的对话框,在该对话框中只要点击选中第五歩保存的源文件并点击Add即可(注意点击选中源文件前后的变化并且特别注意点击Add后界面没有任何变化,你只要关闭该对话框即可)

  9. 打开source group后将会出现如丅图箭头所指处的变化

  10. 在右边的源文件输入框中写入程序并点击如图所示的编译按钮(可以看到该程序没有错误,编译成功)

  11. 但我们点擊进入工程的文件夹没有看到后缀名为.hex文件如下图所示

  12. 所以我们需点击target按钮进行设置,如下第一张图所示点击后出现第二张图所示对話框

  13. 在对话框中点击output选项如下图1处显示,并勾选create hex file如下图2处显示勾选后关闭对话框并如第10步再编译一次。可以看到文件夹中生成了.hex文件

经驗内容仅供参考如果您需解决具体问题(尤其法律、医学等领域),建议您详细咨询相关领域专业人士

作者声明:本篇经验系本人依照真實经历原创,未经许可谢绝转载。
}

我要回帖

更多关于 单片机好写程序吗 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信