首先要认识单片机是啥?单片机语言是啥?单片机是一种可存储可读写可编程可运行的芯片,你写啥它就运行啥,运行出错,那你程序写错了。单片机语言,嗯!确定要学C啊!有哪一种语言能够抗衡C的强大地位?没有!哪一种语言市场占有率都没C高,C虽然不是面向对象的高级语言,可是不妨碍它的强大。语言的发展史,是机器语言0/1,汇编,C,高级语言(C++/JAVA/PYTHON/php),承上接下的就是C啦!提醒一点啊!不是全部可编程芯片都是用C语言,有些是古老的机器语言和汇编,有些是C基础上开发的,好比LUA语言也是能够往芯片处理器里面写的,固然你NB想用二进制往里面写也是可行的。

怎么搭建环境我就不说了,反正网上一大堆,有问题就去找答案就能够了,认真的学习会有的。

51单片机环境搭建:https://www.cnblogs.com/lulipro/p/10685032.html

stm32等高级单片机搭建:https://blog.csdn.net/wowocpp/article/details/80333811

环境搭建好了,点进去,进行第一次试编程!咱们先来写国产STC51系列单片机的程序(超详细代码解读,累得像狗)。php

**点亮一个小灯的程序**

#include //引入51单片机库头文件,没它全部内置函数就无法用,必须的。(里面有不少初始化的代码,你们能够打开看看)

sfr WDT_CONTR=0xe1; //STC单片机的看门狗初始化,就是防止你程序写的有问题,给你程序设个狗看着,一旦程序跑飞或者死了,就给你复位重启。

sbit led=P0^0; //#include 库里的东西,把全部的单片机脚都设好了,咱们直接拿来用,咱们点亮第0.0脚链接的led小灯。

void Delay(unsigned int t); //定义一个延迟函数,单片机没有延迟的方法,咱们建立一个,方便,名字想取啥就取啥,我这里按你们喜欢的取Delay。

void main (void) //程序入口,主函数main,每一个程序必须有一个mian,并且必须是mian,不要想了,必需要的,这就是门,一个程序没门是不行的。

{ //函数里面的内容要用英文大括号{},编程软件是外国的,因此要用英文键盘,你把搜狗调出来写,最后错误把你累成狗。

WDT_CONTR=0x37; //设置看门的狗,本身看stc官方文档取,很是详细的说明。

led=0; //点亮小灯啦啦啦0是高电平,1是低电平,头文件初始化设置的,你在头文件里要改为1高电平0低电平,也是能够的。

Delay(50000); //单片机咱们来个ms级的延迟,长短本身调,具体多久我没测,大概实测1s吧。

Delay(50000);

Delay(50000);

led=1; //关掉led灯

Delay(30000); //延迟一段时间,这个时间能够改的。

Delay(50000);

Delay(50000);

WDT_CONTR=0x36; //喂狗,若是喂狗时间是正常的,那么不会出现问题,若是半天不喂狗,那么看门狗重启。

}

void Delay(unsigned int t) //咱们设置的延迟函数,总时间是你本身定的,固然设定值是int,整数。

{

while(--t); //用一个循环自减的方式来实现定时。好比我定的50000,那么50000会自减到0,就自动跳出了循环,while是循环函数。

}

//程序到此运行一遍,你不断电,它又会从头运行。固然,你之后写的程序很是复杂,那么可能要好久才会从新运行一次,若是你写的是等待程序,或者是设定只运行一次的加个while(1);,那么永远停在这儿。

真的是够详细了,保证你懂。小白这一篇学好了,学通了,我下一篇带你进入初级菜鸟阶段,点我头像找我原创的的文章继续看。(持续更新)html

单片机c语言全程图文教程,单片机C语言,从小白到菜鸟进阶教程(超详细代码解读)...相关推荐

  1. 单片机数字钟(调时,调时闪烁,万年历,年月日)超详细解析

    2019/07/13 单片机数字钟(调时,调时闪烁,万年历,年月日)超详细解析 发表日期:2019/07/13 单片机开发板:巫妖王2.0, 使用同款开发板可直接上板测试 文档说明: 实现功能 : 一 ...

  2. HTML+CSS小白入门与进阶教程

    HTML+CSS小白入门与进阶教程 本文旨在让你快速了解HTML语法结构,通过实例操作快速从无到有的入门与进阶.Html语言学习的特点有点像刚开始学word软件,word的功能就像html标签,用多了 ...

  3. 苹果,U盘越狱iPhone绕ID最新教程及各种坑解决,吐血之作(超详细超简单教程)-balenaEtcher-Checkm8-bootra1n

    U盘越狱iPhone绕ID最新教程及各种坑解决,吐血之作(超详细超简单教程)-balenaEtcher-Checkm8-bootra1n 这是安装多个苹果版本及虚拟机版本后成功的教程,由于资源上传到百 ...

  4. M8SDK教程-游戏开发心得(三):DDraw进阶教程-贴图,Alpha和Sprite动画,RPG游戏雏形

    M8SDK教程-游戏开发心得(三):DDraw进阶教程-贴图,Alpha和Sprite动画,RPG游戏雏形 引用: M8 SDK教程- 游戏开发心得(一): 游戏程序框架 http://bbs.mei ...

  5. 【Python入门教程】教你如何10分钟入门Python!(超详细)

    前言:我们在职业生涯中都需要通过各种方式来提升自身的专业能力,在这里我们建了一个Q群[856833272]欢迎大家来交流学习,更多资料免费分享还有免费直播课领取!学习路上有伙伴,学习路上不孤单!(也可 ...

  6. c语言实现路由功能,前端路由的两种实现方式,内附详细代码

    一.前端路由介绍 前端路由主要应用在SPA(单页面开发)项目中.在无刷新的情况下,根据不同的URL来显示不同的组件或者内容. 前端路由的实现原理 : hash值 + onhashchange事件 hi ...

  7. qt控制程序打开记事本_QT记事本小部件教程(二):应用程序主要源文件main.cpp详细代码...

    Qt是目前最先进.最完整的跨平台C++开发工具.它不仅完全实现了一次编写,所有平台无差别运行,更提供了几乎所有开发过程中需要用到的工具.如今,Qt已被运用于超过70个行业.数千家企业,支持数百万设备及 ...

  8. 主生产计划 操作教程 用友u8_用友财务软件不会操作?超详细操作流程及技巧,收藏...

    我常常在想,身为普通会计的我到底做错了什么? 如果什么都没有做错,那为什么要日复一日地被用友折磨? 试错再试错,太辛苦了!总算对了,感谢我们办公室的李姐,她是我们办公室的大神,经常在工作之余,总结一些 ...

  9. java版本匠魂下载教程_匠魂工具怎么升级?这篇超详细教程攻略请收下

    哈喽大家好我是雪兔!今天兔子要给大家讲的是:匠魂工具的更换升级 匠魂工具的更换升级 首先我们要搞清楚为什么要给工具更换升级? 很多萌新刚开始玩匠魂的时候都很头大,我怎么挖不了铁?怎么挖不了黑曜石?这就 ...

最新文章

  1. UbuntuKylin技巧
  2. html表格数据点击事件,如何在iview的table单元格里实现点击事件?
  3. dmesg与printk命令
  4. Centos7 Zookeeper
  5. 同学,你有一份来自支付宝AI学姐的面试锦囊待查收
  6. python2.7 pyqt4创建qtapp_python-2.7 – 向TabWidget pyqt4添加加号按钮
  7. 【MySQL】rds 不支持镜像表/联合表,怎么办?
  8. 小林菌2020总结,我差点没毕业~
  9. 【英语学习】【WOTD】tenacious 释义/词源/示例
  10. 2015 EC L - Multiplication Table
  11. 死磕 java同步系列之AQS起篇
  12. Hibernate错误处理:Unable to get the default Bean Va...
  13. 【2016北京集训测试赛(七)】自动机 (思考题)
  14. 《数学之美》--吴军
  15. Java实现阿里云域名动态解析,DDNS功能
  16. GitDown: 下载Github特定文件夹
  17. java坦克大战案例_JAVA实现经典坦克大战源代码
  18. “武汉加油”“中国加油”
  19. 微信备份聊天记录,显示连接错误,终极解决办法
  20. 双向可控硅在交流调压电路中的使用

热门文章

  1. htc desire g7 android4.0 miui,HTC Desire G7 Android 2.3.7 ROM Miui 推荐稳定版2.8.3
  2. 高光谱数据预处理之移动窗口平均平滑算法
  3. Linux下的无名管道
  4. 一起自学SLAM算法:7.7 典型SLAM算法
  5. java:Cassandra入门与实战——下
  6. 微软6年来首次推出新Windows系统,Windows11正式发布!
  7. java实现简单数独游戏
  8. Kotlin学习笔记(三):Kotlin中的函数
  9. 研究ITAT服装运营模式(一):ITAT:“铁三角”开创服装零售蓝海
  10. 安卓弹窗广告(自适应屏幕)