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

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

3天内不再提示

如何快速学习单片机编程

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

学习单片机编程,需要有基础,需要有方法。

一,写不出单片机程序的原因有哪些?

C语言掌握不够,常用的语法不理解。

单片机知识点没有掌握。

单片机编程没有入门。

第一,要一定C语言基础,单片机C语言和普通C语言语法差异

1.调用的头文件不一样。

2.编译器的不同会造成单片机C程序编写过程中细节的差异,比如unsignedint类型,在某些编译器当中是与unsigendchar一样的位宽。

如何快速学习单片机编程

第二,要有一定的硬件知识。理解普通的三极管,高低电平,电压电流等基本概念。这个能看得懂原理图,从事单片机开发,会需要调试程序,需要通过一定的工具,万用表示波器来分析自己的软件是否正常。

第三。必须要有一块合适的开发板。资料教程要齐全,没有开发板,就没有练习和实操的机会和平台,更谈不上进步。

单片机分为很多种,8位单片机,16位单片机,32位单片机,从未接触过单片机开发的初学者,在选择开发板时,建议用从8位单片机如AT89S51作为单片机入门芯片

对于基础知识较薄弱的同学,不建议一开始就学习stm32,因stm32学习难度会大很多,知识点也更多,学不好会打击积极性。

二,能熟练编写单片机程序,有什么方法?

首先,单片机的入门级别的知识点:

1,开发环境的搭建和使用,下载程序的操作。这一块非常重要,这个学不会,后面的单片机编程无从谈起。

2,端口IO输出,实操LED灯的亮灭,流水灯实验。

3,端口IO输入,实操按键的输入高低电平变化,操作LED的亮灭。

4,串口的输入输出,掌握ASCII码的字符与0-255数字的对应关系,并学会利用串口进行调试信息打印,掌握利用串口调试代码的方法。(这种调试方法很重要,很多单片机不能在线仿真,只能用串口调试)

5,掌握定时器功能。掌握普通定时器中断函数的写法和用法,如果对应的单片机包含PWM设置,也必须掌握PWM的配置和使用。

6,掌握IIC时序操作,很多常用芯片都用IIC通信,比如EEPORM存储芯片,掌握后读写相关参数。存储的数据断电不丢失。

7,一般开发板都会有实时时钟芯片如DS1302,掌握其用法,可以在综合练习中用到。

一定要熟练掌握以上知识点,初学者心中要形成自己单片机开发的知识树。

接下来说下

第一,多学习和多看教学资料和视频,目前51级别的开发板非常多,价格实惠,而且有很多优质的教学视频。可以作为入门教程。

第二,推荐郭天祥的入门书籍《手把手教你学单片机C语言》,以及他的教学视频《十天学会单片机编程》,我就是看了这本书和视频,然后不断练习,才踏入单片机编程领域的。

第二,多练习,想需要单片机,看得懂不一定写得出来,一定要跟着视频书籍和老师的要求,自己一点点的编写出来,并每个知识点做好记录。并思考总结,消耗吸收变成自己的知识。

综合实验

根据自己所学习的知识点,完成一个带定时闹钟功能的实时时钟,

1通过按键设置闹钟,需要将闹钟时间存储在EEPORM中。

2,通过按键修改时间,对ds1302的操作,时间计数的累加,

3,通过切换闹钟-时间显示模式,比如长按,短按键的搭配等

4,数码管在不同的模式下分别显示时间和闹钟。

按照我文中的要求来进行操作和学习,最后完成实时时钟的这个实验,那么您的单片机编程能力一定得到很大提升!

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

    关注

    180

    文章

    7588

    浏览量

    135740
  • 单片机编程
    +关注

    关注

    10

    文章

    49

    浏览量

    24573
收藏 人收藏

    评论

    相关推荐

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

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

    十天学会单片机可能吗?单片机入门需要多久?

    一下,单片机的入门其实并没有想象中那么难。对于那些有一定编程基础,尤其是有C语言基础的学习者来说,入门的过程可能仅需几天。例如,有人可能在三天内就掌握了单片机的基础
    的头像 发表于 09-05 08:00 657次阅读
    十天学会<b class='flag-5'>单片机</b>可能吗?<b class='flag-5'>单片机</b>入门需要多久?

    stm32单片机用什么软件编程

    STM32单片机是一种广泛应用于嵌入式系统领域的微控制器,具有高性能、低功耗、丰富的外设接口等特点。要对STM32单片机进行编程,需要选择合适的软件工具。 概述 STM32单片机
    的头像 发表于 09-02 10:16 705次阅读

    单片机图形化编程软件有哪些

    Arduino IDE以其简单易用的界面和丰富的库函数,成为了许多初学者的首选。虽然它本质上不是纯粹的图形化编程软件,但其提供的示例代码和直观的操作方式,使得学习单片机编程变得相对容易
    的头像 发表于 09-02 10:14 672次阅读

    一个暑假如何学习单片机

    一个暑假是学习和掌握单片机基础知识的良好时机。以下是一个关于如何在暑假期间学习单片机的建议计划
    的头像 发表于 07-03 09:19 456次阅读
    一个暑假如何<b class='flag-5'>学习</b><b class='flag-5'>单片机</b>

    stm32单片机学习路线

    STM32的寄存器编程可以帮助你更深入地了解单片机的工作原理和底层操作。通过编写简单的程序,控制LED、读取按键等基本操作来加深理解。 5.学习HAL库和CubeMX:HAL库是STM32提供
    发表于 05-10 15:34

    单片机开发好学吗?学习中有哪些乐趣与挑战?

    一提到单片机学习大家都会觉得难学,事实真的是这样吗?今天就来探讨一些单片机学习的那点事儿。对于许多初学者来说,刚开始接触单片机
    的头像 发表于 03-28 08:04 1708次阅读
    <b class='flag-5'>单片机</b>开发好学吗?<b class='flag-5'>学习</b>中有哪些乐趣与挑战?

    新手学习单片机最常见的六大误区!

    最近看到台私信要资料的同学比较多,想必大家都是对单片机有着浓厚的学习兴趣,但是很多新手开始入门单片机的时候都会遇到一些学习的误区,今天就来整理一下大家可能会遇到的六大误区。
    的头像 发表于 03-28 08:03 702次阅读
    新手<b class='flag-5'>学习</b><b class='flag-5'>单片机</b>最常见的六大误区!

    fpga编程单片机编程的区别

    FPGA编程单片机编程的主要区别体现在以下几个方面。
    的头像 发表于 03-14 17:16 866次阅读

    单片机编程和plc编程有什么区别

    单片机编程和PLC编程是两种不同的嵌入式系统开发领域。在这篇文章中,我们将详细探讨这两种编程方式的区别。首先,我们将简要介绍单片机和PLC的
    的头像 发表于 02-22 10:23 2357次阅读

    单片机编程实例介绍

    单片机(Microcontroller)是指内部集成了处理器核心、存储器、输入输出接口和外围设备接口等功能模块的集成电路芯片。它具有体积小、功耗低、性能高等优点,被广泛应用于嵌入式系统中。单片机编程
    的头像 发表于 01-16 09:37 2525次阅读

    单片机编程实例总结

    单片机编程实例总结
    的头像 发表于 01-16 09:17 949次阅读

    8051单片机和STM32单片机编程环境对比

    比较流行的单片机环境有keil和IAR,这两种环境可以覆盖市面上90%的单片机型号,而且都提供了函数库。根据单片机位数不同,这两个编程环境也有不同的版本。
    发表于 12-25 10:01 1270次阅读
    8051<b class='flag-5'>单片机</b>和STM32<b class='flag-5'>单片机</b>的<b class='flag-5'>编程</b>环境对比

    你用过哪些编程语言开发单片机

    C语言是最常用的一种用于单片机的开发语言,也是一种高级编程语言,具有较好的可移植性和可读性。对于单片机,通常使用嵌入式C来进行开发。 举例:用C语言写一段STM32单片机点灯程序。
    发表于 12-04 10:18 1201次阅读

    51单片机C语言编程入门学习资料

    电子发烧友网站提供《51单片机C语言编程入门学习资料.pdf》资料免费下载
    发表于 11-18 11:04 14次下载
    51<b class='flag-5'>单片机</b>C语言<b class='flag-5'>编程</b>入门<b class='flag-5'>学习</b>资料