2016-05-17 QG工作室训练营两日结

 

日期: 2016-05-17

生活小记 回顾这一周,收获挺多的,从最初的完全不懂,到现在懂了很多,并且开始学习了单片机了,感觉这一切过得很快,训练营的培训已经结束了,接下来的几天看似好像放松了,其实还是不能放松。其实这学期,过得非常非常快,还没来得及休息,就快要放假了,这在高中都没这种感觉。并且,学期末了,选修刚刚开始,部门的活动也刚刚开始,这就需要我有很好的时间观念和取舍观念来决定一些事情了,我相信自己的选择不会让自己后悔的。希望这一次的选择,能够让自己不再有遗憾,也希望自己在接下来的时间里好好把握。
学习开发比赛情况 今天一直在研究哪个开发板,刚开始线都不敢插,听说弄错了,会烧坏,我在想,刚买来一天,要是烧坏了,那岂不是亏大了啊!所以,就一步一步按照教程来,非常开心光盘里面附带的资料,非常好,很齐全,而且教程很详细,我按照教程,一步一步地安装开发环境,安装驱动,安装完后,又开始按照视频里面讲的,然后自己写了一个代码试试,当烧录成功并且成功点亮的时候,心情是非常地激动的,因为这第一次啊!

然后,看了下流水灯的教程,看到里面涉及到左移右移,我在想,能不能自己直接做个循环来实现这个功能呢,然后我就分别让p2=0x00 p2=0x01 p2=0x02 p2=0x04 p2=0x08 依次循环然后加延迟,也实现了,当时作为一个新手来说,真的是很激动的。

但是其中,还是有不懂的地方,就是关于延迟的函数,里面的循环次数不知道,是怎么计算出来的,然后,我就百度了下,才大概明白了,但是,还不是很懂。

大概是说首先要知道一个指令周期是几秒 1/(晶振频率除以12),然后要知道循环究竟执行了几个指令周期 可以用keil里在线反汇编命令看看你的循环编译成机器语言后到底是几个指令周期,这样就知道了延迟时间。

例如for(i=0,i<255,i++){x=2},这里x=2是一个指令周期 而执行了255次 假如晶振是12MHZ的 则你执行一个指令周期是1us 255次是0.255ms。

最后就是在定义sbit led0=P2^1的时候,为什么在main中不能直接P2^1=1呢,一定要led0=1,然后我也百度了下,可能是由于不知道怎么搜索,最终还是找不到结果,所以就只好按照规定,按照他说的规则去写了。

今天没有写培训的作业,而是在看单片机的,觉得很神奇,第一次用代码操作,实现了自己想要的功能,虽然是非常非常地简单,以后再回想起来的话,可能会笑自己。但这也是自己第一次的手动实验,全程都是自己操作,所以印象非常审核。
感想收获 这一周,学到了很多知识,不仅仅是代码的收获,还有代码外的收获,从训练营到和每个小伙伴的交流,从有点怕师兄到现在基本不怕了的转变,感觉收获蛮大的,那就是除了学习上的收获后,在这期间,结识和许多好朋友,如果没有训练营,大家也不会相互认识,更不可能相互聊天,更不可能听到各位师兄的内心想法。

说真的,这个月,绝对是大学四年学得最多的一个阶段,后期可能会继续学,但是因为没人监督你,你或多或少会变得懒散,如果没有同伴的一起合作,你也不会想着如何赶进度,所以,我很珍惜这次的培训。
存在问题 以后上课尽量不要睡觉,尽量别让课下占用太多时间来看课本,让自己的时间观念更加增强,让自己的处理能力更加高效,做到事半功倍。