0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

单片机程序如何编写

姚小熊27 来源:电工之家 作者:电工之家 2020-02-12 14:38 次阅读

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

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

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

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

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

单片机程序如何编写

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

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

单片机程序如何编写

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

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

单片机程序如何编写

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

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

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

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 单片机
    +关注

    关注

    6035

    文章

    44554

    浏览量

    634629
  • 单片机程序
    +关注

    关注

    1

    文章

    12

    浏览量

    9548
收藏 人收藏

    评论

    相关推荐

    单片机编程语言有哪些选择

    单片机(Microcontroller Unit,MCU)编程是指为单片机编写程序的过程,这些程序控制单片机的行为和功能。单片机广泛应用于嵌
    的头像 发表于 11-01 14:13 496次阅读

    单片机怎么写入程序

    程序通常涉及以下几个步骤: 选择单片机和开发环境 : 确定项目需求,选择合适的单片机型号。 安装相应的开发环境,如Keil、IAR、MPLAB等。 硬件连接 : 将单片机连接到开发板或
    的头像 发表于 10-21 11:21 421次阅读

    keil可以读出单片机程序

    表述存在一定的误解,因为Keil主要是用于编写、编译和调试单片机程序的工具,而不是直接从单片机中读取已编程代码的工具。 一、Keil的主要功能 编程开发 :Keil允许用户使用C语言或
    的头像 发表于 09-02 10:32 911次阅读

    单片机烧录程序用什么软件

    单片机烧录程序单片机开发过程中的一个重要环节,涉及到将编写好的程序代码通过烧录器写入单片机的R
    的头像 发表于 09-02 10:05 1149次阅读

    单片机烧录程序可以重新烧吗

    单片机(Microcontroller Unit, MCU)是一种集成电路芯片,它将计算机的CPU、存储器、输入/输出接口等集成在一块芯片上,用于控制各种电子设备。单片机烧录程序是指将编写
    的头像 发表于 09-02 10:04 1169次阅读

    单片机烧录程序的线比单片机上的少还能烧录吗

    单片机烧录原理 单片机烧录是指将编写好的程序代码通过一定的方式传输到单片机的存储器中,使其能够按照程序
    的头像 发表于 09-02 09:54 480次阅读

    单片机烧录程序的基本步骤是什么

    单片机烧录程序单片机开发过程中非常重要的一步,它涉及到将编写好的程序代码通过一定的方式传输到单片机
    的头像 发表于 09-02 09:47 995次阅读

    蓝牙模块如何实现单片机和手机端数据互传

    ZX-D30、ZX-D37、ZX-D32等。 蓝牙模块设置 : 将蓝牙模块与单片机连接。通常,蓝牙模块通过串口(UART)与单片机通信。 设置蓝牙模块的工作模式和参数,例如波特率、名称、停止位、数据位等。这通常通过发送特定的AT命令来完成。
    的头像 发表于 07-24 17:59 2387次阅读
    蓝牙模块如何实现<b class='flag-5'>单片机</b>和手机端数据互传

    基于51单片机分立器件超声波测距电路图及程序元件清单

    本资源内容概要:       这是基于51单片机分立器件超声波测距电路图及程序设计包含了电路图源文件(Altiumdesigner软件打开)、C语言程序源代码(keil软件打开)、元件清单
    发表于 06-20 16:17 0次下载

    基于51单片机8路抢答器电路图proteus仿真及程序

    本资源内容概要:       这是基于51单片机8路抢答器电路图proteus仿真及程序设计包含了电路图源文件(Altiumdesigner软件打开)、C语言程序源代码(keil软件打开
    发表于 06-19 14:15 1次下载

    基于51单片机16路抢答器电路图及程序元件清单

    本资源内容概要:       这是基于51单片机16路抢答器电路图及程序设计包含了电路图源文件(Altiumdesigner软件打开)、C语言程序源代码(keil软件打开)、元件清单(excel表格
    发表于 06-19 11:38 1次下载

    数字电路仿真软件单片机怎么用

    数字电路仿真软件是一种用于模拟和测试数字电路设计的工具。其中,单片机仿真软件是一种专门针对单片机进行仿真的工具。这种软件能够提供一个类似真实硬件环境的仿真平台,让用户在计算机上进行单片机程序
    的头像 发表于 04-21 10:28 1045次阅读

    单片机编程实例介绍

    是指使用特定的编程语言编写控制单片机工作的程序。 在本文中,将为您提供一些常见的单片机编程实例,包括基础应用、传感器应用、通信应用等方面的案例。 一、基础应用 LED流水灯 流水灯是最
    的头像 发表于 01-16 09:37 2610次阅读

    单片机代码自动生成器程序

    和输入/输出设备的芯片。它通常用于嵌入式系统中,能够完成一系列特定的任务。开发人员编写单片机代码负责指导单片机执行相应的任务。然而,编写单片机
    的头像 发表于 01-08 14:12 3158次阅读

    keil5mdk怎么编写51单片机程序

    编写51单片机程序需要以下步骤: 编写程序框架:首先,你需要定义程序所需要的变量和常量,以及设置中断向量和寄存器的初始状态。这些信息可以根据
    的头像 发表于 12-25 14:54 1542次阅读