C++与硬件的结合

来源:互联网 发布:vb时间触发事件 编辑:程序博客网 时间:2024/05/21 06:29

感觉电子和编程程序才是科技。最近在看郭天祥老师单片机方面的书,想一下子一天把书看完,看来是不指望了,蛮打击积极性的。学电子已经这么多年,感觉没学到门道,一直在这个专业的门口徘徊。

总结一下:学习电子电路还是需要很多的硬件、要有电子计算机编写调试代码、配套的工具(仪表,电烙铁工具)、多接触各种元器件,结合书本多动手。自己当初上学的时候没钱,死啃书本没有用的,拼记忆肯定不行的。理想就是在电子上要有进步。学电子,就是要动手。

另外有些概念还是再要好好消化的,像DSP概念,有些电子方面的软件还是要好好练习的。电路波形图的概念,另外PROTEL软件,高级那两本书也要好好学习,再好好理解。

下一步,解决各种元器件的问题。如果有机会出差,就到外边给自己买些元器件。基础的东西,有几个仿真软件的书籍还是在北京航空航天大学买的,还好带回来了,那些都是我在南师大没买到的,现在收集在家里。现在网络也比以前丰富了,想找什么书,看什么程序都是可以的。


这两天在看书的时候,边写些程序,调试程序,然后把程序录入单片机中,这个过程遇到了书本的程序和电路板不兼容的问题,后来根据电路板的原理图,调整程序,理解电路板的结构,然后重新编写程序。另外烧录的时候也遇到了P1.0和P1.1需要接地的问题,还有有两根韦伯线解决了问题。


后面开始接触到中断的概念,不要一下子急于求成,慢慢看,慢慢消化。


#include<reg52.h>


sbit led1=P2^0;
sbit led2=P2^1;
sbit led3=P2^2;
sbit led4=P2^3;
sbit led5=P2^4;


#define uint unsigned int




void delay(unsigned int sec)
{
uint i,j;
for(i=sec;i>0;i--)
{
for(j=110;j>0;j--);
}
}


void main()
{
while(1)
{
led1=0;
delay(200);
led1=1;
delay(800);


led2=0;
delay(200);
led2=1;
delay(800);


led3=0;
delay(200);
led3=1;
delay(800);


}
}


IO输出总线操作法:

#include<reg52.h>


void main()
{
P2=0xaa;
while(1);
}


#include<reg52.h>


#define uint unsigned int


sbit led1=P2^0;


void delay_1s();


void main()
{
while(1)
{
led1=0;
delay_1s();
led1=1;
delay_1s();


}
}


void delay_1s()
{
    uint i,j;
for(i=1000;i>0;i--)
{
for(j=110;j>0;j--);
}
}


在输入这段代码的时候,要学习的是#define的概念;在while(1)后面多了;的代码,编译的时候出现的错误信息;声明的处理;延时时间的概念;函数的处理;另外还有全局变量和局部变量的概念;


#include<reg52.h>


#define uint unsigned int


sbit led1=P2^0;


void delay(uint);


void main()
{
while(1)
{
led1=0;
delay(1000);
led1=1;
delay(1000);


}
}


void delay(uint xms)
{
    uint i,j;
for(i=xms;i>0;i--)
{
for(j=110;j>0;j--);
}
}


形参和实参的概念;




原创粉丝点击