第一个单片机程序,单片机c语言入门

c语言,单片机应该怎么学习呢?
单片机是一门很有用的技术,懂单片机可以找一份很好的研发岗工作 。所谓万事开头难,在初学入门阶段可能摸不着头脑无从下手,如果有了比较好的学习方法单片机学习起来也是很有趣、很容易的 。和大家分享一下单片机以及单片机C语言编程的学习方法 。1.选择一块单片机开发板不管你是从51单片机开始,还是直接从STM32、AVR开始,建议买一块单片机开发板 。
切记,在学习单片机的时候不要和学习高数一样天天抱着书看,单片机是一门实践性非常强的课程,如果只看书不动手永远是纸上谈兵 。书都不要看,直接买一块开发板,对单片机而言,最好的书就是单片机的数据手册 。2.学习单片机普通GPIO口的配置方式不管你选择哪个型号的单片机入门,其学习方法都是一致的 。首先要学习单片机普通GPIO口的配置方法,这包括单片机GPIO口的输出控制和输入检测 。
比如学习如何用C语言实现单片机点亮LED灯、如何用C语言控制蜂鸣器发声、如何用C语言控制继电器动作、如何用C语言实现按键电灯、按键使蜂鸣器发声、按键使继电器动作等 。3.学习单片机的定时器、AD转换、中断等片上资源单片机具有丰富的片上资源,合理的使用这些片上资源可以简化产品的设计使方案最优 。所以学习这些片上资源非常重要 。
这些片上资源包括定时器,可以实现定时功能或计数功能,该功能非常有用 。单片机的AD转换功能可以将模拟量转化成数字量,在信号采集方面是非常重要的 。使用单片机的中断资源可以节省单片机的资源,提高代码执行效率 。4.学习UART、IIC、SPI、CAN等通讯功能通讯功能可以实现数据的传输,如wifi、蓝牙、RS485等都是常用的通讯功能,所以这一块一定要学习 。
现在绝大多数的单片机都带有UART、IIC、SPI甚至CAN通讯功能,其他一些通讯功能可能都是由这几种通讯功能延时出来的,比如说UART功能配合不同的电平转换芯片可以实现RS232、RS485、CAN,甚至蓝牙和wifi通讯等 。5.参与/主导单片机项目学习的目的是为了以后能够用单片机设计出方案合理、性能稳定的产品,所以要抓住参与项目的机会,在项目中锻炼实践动手能力 。
51单片机C语言需要学习哪些知识?
答主从事嵌入式、单片机开发工作有几年了,负责硬件电路的设计和程序的编写调试等,所以结合自身的情况给与回答 。1.单片机编程与PC编程不同单片机C语言和PC编程时存在很大区别的,单片机C语言编程是偏向于硬件的,在编程时接触更多的是单片机的寄存器的设置、硬件端口的控制、硬件逻辑的设计,这与PC编程区别很大 。
单片机编程所面对的对象是以单片机为核心的主控板、控制板,需要天天待在实验室,搭建测试环境测试代码 。2.单片机编程需要学习哪些内容要懂单片机的编程,首先要懂单片机 。懂单片机的寄存器的配置方法,能从单片机的datasheet和编程手册上看懂寄存器如何配置才能实现自己所需要的功能 。比如控制板要输出占空比可变的方波,如果用单片机的片上资源实现PWM,需要配置相应的寄存器 。
可能涉及到时钟周期的设置、外设时钟的使能、GPIO复用功能的配置、定时器的配置、预装初值的计算等 。要懂单片机的编程,其次要懂硬件设计 。前面提到过,单片机编程的对象还是以单片机为核心的控制板,控制板要实现功能需要硬件的支持 。比如要设计一个单片机驱动电路,在编程时就要懂得给高电平继电器动作,还是给低电平动作 。
所以三极管或者mos管如何工作一定要清楚 。用程序控制LED灯,该给高电平还是低电平?这些都要知道 。要懂单片机的编程,要懂常用的通讯协议 。单片机要实现通讯功能,需要相应的硬件接口走相应的通讯协议,比如常用的IIC,SPI,RS232,RS485,CAN等,这些都是单片机系统中常用的通信方式,所以这些通讯方式的编程一定要有所了解 。

推荐阅读