马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
—————***********************************—————
志
看到群里高手如云,内心嫉妒且感慨光阴如驹,希望自己能静下心,慢慢的累积,不做知识的”收藏夹“。把感悟体会写出来不奢求能解惑于他人。
—————***********************************—————
最近,把鸿哥的按键扫描部分看完,并且每节都亲自动手再写一遍,感觉收获很大。回想整下,脑海里留下了”框架“和”按键“两个词。
首先,”框架“--三区一线
鸿哥一开始便提出”三区一线“的框架结构,把单片机代码分成可视的几个部分:
拿开会(中国会议多)打个比方:我要主持个会议,那我需要提前到会议现场整理下会议资料(第一区);然后等待所有与会人员到场(分割线);与会人员都到了,交代下会议注意事项不 能抽烟,都关掉手机(第二区);最后开始具体的开会内容(第三区)。
- //三区一线结构
- void main() //主函数
- {
- initial_myself(); //第一区:初始化单片机
复制代码 有什么用?别人的代码就完全没有三区一线吗?有,如果你听过别人介绍自己的代码的话,我想一定听过,"main()开头几行,我是初始化下*****”;
如果你把鸿哥的代码去掉initial_myself();去掉delay_long(100);去掉initial_peripheral();- //没有三区一线 的LED灯闪烁
- void main()
- {
- led_dr = 1; //LED灭
-
- while (1) //循环代码
- {
- ed_dr = 0;
- delay_long(30);
- led_dr = 1;
- delay_long(30);
- }
- }
复制代码 对比上面代码,使用三区一线和不要三区一线,有什么差别!功能上面没有差别,都能实现LED灯的闪烁;但是给人的印象完全不同,使用三区一线,整体的打眼一看,你就知道代码的”思路“, 要实现的功能。
--------------------…………………框架的总结……………………… --------------------
不管是”三区一线“还是initial_myself(); delay_long(100); initial_peripheral(); 转换到现实生活,其实就是-------->命名,俗称”起个名字“;
那为什么要命名呢?打个比方,你公司来个上司,坐在你旁边,就是没有名字,每天你都要找他回报工作,询问计划,沟通交流;你不会发现少点什么吗?在外边偶遇,他没有看到你,你看到了 他,然后你”喂“?”嗨“?”那个“? 所以总结:框架是概括,对概括的整理命名,命名是为了方便(记忆、理解;加深理解)。
|