谈谈单片机编程入门方法

最近发现不少毕业刚入职的同学编写单片机程序很是迷茫,不知道从哪里入手,怎样实现想要的功能。虽然在学校里学过相关课程,可能课程设计或者毕业设计就是做一个单片机的小设计,但从电路板到程序基本都已经做好了,同学们只需要动动手组装、编译、下载就完成了,这个过程只是熟悉一下环境,而实际工作中就需要动脑了,显然这种转变需要适应,要怎样适应呢?学校里已经把基础打好了,就需要信心和正确的方法步骤了。

起步很现实,就是抄,不管是从网上还是前辈那里拿到能在单片机上跑起来的代码,下载到目标板上运行,了解代码各部分的功能,不理解的地方就下断点单步调试。熟悉了代码的组成和各部分执行过程和功能后,一点点去掉不需要的,加入并实现自己的功能,遇到难以理解和摸不着头脑的问题找度娘,结合实验调试基本都能够找到解决方法,起步肯定会遇到很多小问题,可能一个小问题会折磨一星期毫无办法,这时候一定要坚持住,一个一个问题思考解决,当你解决了几个问题后会发现自己已经入门了。

其实重点只有一句话:勤奋的使用断点调试和度娘。

低速、数字的单片机电路没多少有难度的设计,花样还是在软件上,一个清晰、简洁、功能明确的结构设计必然稳定、可靠、维护方便、扩展性强,而一坨混乱的代码堆在一起必然错漏百出、难以升级维护。单片机软件也需要架构,嵌入式工程师往往将注意力集中在硬件上,面对千奇百怪的元件,很容易迷失其中,专注细节的设计而忽视了整体的结构,并将这一习惯带到了软件设计上,使得软件结构不清,细节支路庞杂。锻炼软件思维,深入理解模块化和面向对象的设计思想是每个嵌入式工程师进阶的必修课。

时间: 2024-10-16 18:54:09

谈谈单片机编程入门方法的相关文章

编程入门教程

编程入门教程 编程入门教程由QKXue.NET梳理的面向程序开发入门初学者的编程入门教程,是一个涵盖了游戏.PLC.VB.数控.JAVA.APP.Matlab.C语言.Shell.IOS.Android安卓等手机和PC编程的入门教程. 1. 编程入门教程 1.1. 游戏编程入门 游戏编程入门适用于任何对C++语言有基本了解的读者阅读,适宜作为读者进入游戏开发领域的技术入门学习用书. 游戏编程入门介绍如何设计和构建自己的电脑游戏.游戏编程入门不是泛泛地介绍编程理论,而是引导读者开发一个“即插即用”

编程入门指南

前言 如今编程成为了一个越来越重要的「技能」:作为设计师,懂一些编程可能会帮你更好地理解自己的工作内容:作为创业者,技术创始人的身份则会让你的很多工作显得更容易.而作为刚想入门的新手,面对眼前海量的信息,或许根本不知道从哪里开始:入门轻松度过初级材料的学习后,发现学习越来越困难,陡峭的学习曲线又让你望而却步:你知道如何在页面上打印输出一些文本行,但是你不知道何时该进行一个真正的有用的项目:你不清楚自己还有哪些不知道的东西,你甚至搞不清下一步该学什么. 这篇文章的内容对此不仅会有一些方向性的建议,

CUDA C编程入门-介绍

CUDA C编程入门-介绍 1.1.从图形处理到通用并行计算 在实时.高清3D图形的巨大市场需求的驱动下,可编程的图形处理单元或者GPU发展成拥有巨大计算能力的和非常高的内存带宽的高度并行的.多线程的.多核处理器.如图1和图2所示. 图 1 CPU和GPU每秒的浮点计算次数 图 2 CPU和GPU的内存带宽 在CPU和GPU之间在浮点计算能力上的差异的原因是GPU专做密集型计算和高度并行计算-恰好是图形渲染做的-因此设计成这样,更多的晶体管用于数据处理而不是数据缓存和流控制,如图3所示. 图 3

【转载】COM编程入门不得不看的文章 :第一部分 什么是COM,如何使用COM

原文:COM编程入门不得不看的文章 :第一部分 什么是COM,如何使用COM 原文:http://www.codeproject.com/Articles/633/Introduction-to-COM-What-It-Is-and-How-to-Use-It 本文的目的是为刚刚接触COM的程序员提供编程指南,并帮助他们理解COM的基本概念.内容包括COM规范简介,重要的COM术语以及如何重用现有的COM组件.本文不包括如何编写自己的COM对象和接口. COM即组件对象模型,是Component

Linux下的shell编程入门

通常情况下,我们从命令行输入命令每输入一次就能够得到系统的一次响应.一旦需要我们一个接着一个的输入命令而最后才得到结果的时候,这样的做法显然就没有效率.要达到这样的目的,通常我们利用shell程序或者shell脚本来实现. 一.简介 Shell编程有很多类似C语言和其他程序语言的特征,但是又没有编程语言那样复杂.Shell程序就是放在一个文件中的一系列Linux命令和实用程序,在执行的时候,通过Linux一个接着一个地解释和执行每个命令. 下面我们来看一个简单的shell程序: 1.首先建立一个

GPU 编程入门到精通(五)之 GPU 程序优化进阶

博主因为工作其中的须要,開始学习 GPU 上面的编程,主要涉及到的是基于 GPU 的深度学习方面的知识.鉴于之前没有接触过 GPU 编程.因此在这里特地学习一下 GPU 上面的编程. 有志同道合的小伙伴,欢迎一起交流和学习.我的邮箱: [email protected] .使用的是自己的老古董笔记本上面的 Geforce 103m 显卡,尽管显卡相对于如今主流的系列已经很的弱,可是对于学习来说.还是能够用的.本系列博文也遵从由简单到复杂,记录自己学习的过程. 0. 文件夹 GPU 编程入门到精通

Java学习笔记—第十二章 Java网络编程入门

第十二章  Java网络编程入门 Java提供的三大类网络功能: (1)URL和URLConnection:三大类中最高级的一种,通过URL网络资源表达方式,可以很容易确定网络上数据的位置.利用URL的表示和建立,Java程序可以直接读入网络上所放的数据,或把自己的数据传送到网络的另一端. (2)Socket:又称"套接字",用于描述IP地址和端口(在Internet中,网络中的每台主机都有一个唯一的IP地址,而每台主机又通过提供多个不同端口来提供多种服务).在客户/服务器网络中,当客

(转载)VS2010/MFC编程入门之五十(图形图像:GDI对象之画笔CPen)

上一节中鸡啄米讲了CDC类及其屏幕绘图函数,本节的主要内容是GDI对象之画笔CPen. GDI对象 在MFC中,CGdiObject类是GDI对象的基类,通过查阅MSDN我们可以看到,CGdiObject类有六个直接的派生类,GDI对象主要也是这六个,分别是:CBitmap.CBrush.CFont.CPalette.CPen和CRgn. 在这六个GDI对象中,最常用的莫过于画笔和画刷了,即CPen类和CBrush类.本文就主要讲解画笔的使用. 画笔的应用实例 鸡啄米在这里直接通过一个波形图的实

转摘_结合个人经历总结的前端入门方法

转载请注明出处: https://github.com/qiu-deqing/FE-learning Table of Contents generated with DocToc FE-learning 必备基础技能 基本开发工具 学习方法和学习目标 入门之路 继续提高 一些个人经历 LingyuCoder的学习经历 工具 技能 语言基础 进阶 项目 未来 其他 入门书 一些不错的网站 历程 MrRaindrop的学习经历 缘起 项目,下一个项目 收集癖和知识管理 跟对神 读书 前端的定位 最