现代社会编程是一项重要的技能,怎么学习编程。我想把我的学习心得跟大家分享。
编程是一种语言,就像我们学习英语一样。因此需要每天都去练习,即使练习10分钟,坚持久了,一样有很大的进步。
我们首先要选择一本好的入门的单片机,所谓好的就是作者的编程思路好理解,你用他的程序很容易就改造出自己的代码。我使用的是正点原子STM32F407(哟做广告的嫌疑)。
如果用程序来写出某一个完善的功能。写出这段程序的功能、要花费30%的时间,而70%的时间要调这段代码。因为你会不断遇到程序BUG,然后你就要不断完善代码,消除BUG。这个过程,就是你通过软件仿真来观察现象,然后由这个现象结合你的已有的知识去推断哪里出了问题,然后到出问题的地方修改。这个阶段培养你的理性思维,你回陷入解决一个BUG的快乐中,然后又会遇到新的BUG。这是一个螺旋上升的阶段;最终你会成为一个编程高手。
编程,是一个爱好。你可以不精,但一定要会。

这是一段跑马灯程序。流水灯。一排灯像琴键,一个一个一个一次的亮。这段程序很简单、int main(void)这个是主函数,就像大树躯干一样。Delay_init(168),就是设置我们单片机工作的时钟168MHZ。时钟大家都理解,就像我们上一上午课,第一节数学老师的课,然后到了时间上第二节语文老师的课,因为有了时钟。单品机里的各条指令就能够有序执行,不会出现一节课连个老师都来。LED_Init(),就是在这里你要填写LED的信息,比如LED灯他的家庭地址,是在单片机的哪个引脚。他的家是很富还是很穷,很富他家就会楼道里有灯,对应着单片机在他的引脚输出高电平3.3V,很穷对应他家楼道里没灯。对应着单片机的引脚输出低电平。接下来的while(1),这是一个无限的轮回。在这里,单片机不断执行()里面的指令。GPIO_ResetBits(GPIOF,GPIO_Pin_9),就是让他家穷、LED灯是灭的,然后单片机输出低电平0V,这里我们插一个LED灯的电路图。

左边的三角符号代表LED灯,510代表电阻大小510欧姆。电阻起到限制通过LED灯两端的电流,3.3V/510欧=0.0065A=6.5ma,LED两端通过5~10ma之间,灯都可以正常亮。因此LED输出高电平3.3V时候,左端红框就是3.3V电压,LED两端没有电压差,因此没有电流流动。LED不亮。当LED输出低电平0V时候,左端红框就是0V电压,LED两端有3.3V的电压差。两端就有电流流动,LED灯发光。
Delay_ms(500),就是接着他家穷,他家灯不亮。过苦日子500ms,就是半秒。我们又让他家改变。不能让人一直穷啊。GPIO_SetBits(GPIOF,GPIO_Pin_9),终于野鸡变凤凰了,他家有钱了,他整个屋都开着灯。好日子不长,delay_ms(500)、就过了半秒的好日子。哎,你小子有钱这么嚣张,我看不惯了。之后就while循环轮回开始,接着GPIO_ResetBits(GPIOF,GPIO_Pin_9)过苦日子…

这个是大街上常见的由LED灯组成的广告牌,程序很简单,有一个软件。你想在屏幕上显示什么字,就在那个软件里输入什么字。之后就会自动生成一段程序代码,然后把代码程序烧写进单片机。那个屏幕就会显示你想要的字。
编程不分年龄,不分性别。只要你有颗开始的心。我在编程路上与你同行,有问题随时可以与我交流。愿我们一起成长,不断精进自己。
网友评论