单⽚机C语⾔,从⼩⽩到菜鸟进阶教程(超详细代码解读)
**点亮⼀个⼩灯的程序**
#include <reg52.h> //引⼊51单⽚机库头⽂件,没它所有内置函数就没法⽤,必须的。(⾥⾯有很多初始化的代码,⼤家可以打开看看)
sfr WDT_CONTR=0xe1; //STC单⽚机的看门狗初始化,就是防⽌你程序写的有问题,给你程序设个狗看着,⼀旦程序跑飞或者死了,就给你复位重启。
sbit led=P0^0; //#include <reg52.h> 库⾥的东西,把所有的单⽚机脚都设好了,我们直接拿来⽤,我们点亮第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); //延迟⼀段时间,这个时间可以改的。
基础c语言代码Delay(50000);
Delay(50000);
WDT_CONTR=0x36; //喂狗,如果喂狗时间是正常的,那么不会出现问题,如果半天不喂狗,那么看门狗重启。
}
void Delay(unsigned int t) //我们设置的延迟函数,总时间是你⾃⼰定的,当然设定值是int,整数。
{
while(--t); //⽤⼀个循环⾃减的⽅式来实现定时。⽐如我定的50000,那么50000会⾃减到0,就⾃动跳出了循环,while是循环函数。
}
//程序到此运⾏⼀遍,你不断电,它⼜会从头运⾏。当然,你以后写的程序⾮常复杂,那么可能要很久才会重新运⾏⼀次,如果你写的是等待程序,或者是设定只运⾏⼀次的加个while(1);,那么永远停在这⼉。
真的是够详细了,保证你懂。⼩⽩这⼀篇学好了,学通了,我下⼀篇带你进⼊初级菜鸟阶段,点我头像我原创的的⽂章继续看。(持续更新)
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论