![](https://img-blog.csdnimg.cn/20201014180756757.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
单片机
0木木0
从事嵌入式软件开发,精通STM32,
《STM32库开发实战指南》作者
展开
-
51单片机学习笔记
高考没考出水平,大大影响了我的心情,打算复读,但随着时间的流逝,热情逐渐褪去。几乎用了半个月才调整好。漫长的暑假,总不能全用来调整心态吧,于是按计划,重新接触编程,编程带来的快乐很快就把阴霾驱散了。而且对大学生活的憧憬令我打消了复读的念头。 重新接触编程好几天了,进展神速,感觉有必要记录一下这段学习经历,这将会成为我宝贵的经验啊,待我成为高手之时,把这些记录拿出来,写教材,写书都容易啦。哈哈。我也希望通过这种方式,结交同道中人,共同学习。 在这篇文章中先把前几天学习的内容记原创 2010-07-23 22:58:00 · 1905 阅读 · 1 评论 -
51单片机学习笔记(二)
按照教材,昨天学到了检测按键的程序,也很明确昨天学那个程序难登大雅之堂,因为它没有实现按键在闭合和开关时的电压信号抖动。如图示,键按下试产生多个抖动的波形,也就是产生了多个101010,而我们实际中只是两个状态只是1,或只是0。所以收集了干扰信号。于是就有今天我学的“去抖动程序”如下: 去抖原理:收到第一个低电平信号(按下的信号)后,开始延迟再次收集信号,再确认是否低电平(一直被按下)这时收集的信息就来自抖动波形图的中间部分,所以只要这个时间段是低电平,按键就肯定被按下了,不会再有抖动。这时就跳到指令检原创 2010-07-24 22:48:00 · 752 阅读 · 0 评论 -
51单片机学习笔记(三)
感觉现在每一天写的程序都在增加难度,或者是因为我太心急,书中的一些过渡程序我觉得太简单就只看书上的例程,理解后没有亲自在电脑上调试,结果编写进阶的程序就感觉很困难了。所以以后要一个一个程序慢慢递进,不能太心急了。 今天这个程序是在昨天按键控制led灯的基础上改为按键控制数码管了,要实现按一个键数码管显示的数字加一,按另一个键数码管的数字减一。虽然这个功能简单,但实现起来却很复杂。我调试了一个小时还找不出错误,最后还是打开书本参考了一下例程才豁然开朗。 调试记录: (1)程序中的,inc c原创 2010-07-26 00:16:00 · 766 阅读 · 0 评论 -
51单片机学习笔记(四)
隔了两天没有写笔记了,也不算是偷懒吧,因为这两天写的程序也不少的,只是有些问题没有弄清楚,所以没有写笔记,今天基本上弄懂了,但还是有一些地方处理不好,还是把它留到日后处理吧,感觉这些问题不是我一时半会能够搞定的。 这两天主要是学习了51单片机的计时器的使用。分别尝试了查询法计时和中断法计时。其中查询法计时我自己编写程序时检测完 TF0 口数据为1时(数据溢出),时间到。于是开始执行相应的指令,但忘记用clr tf0来使tf0口清零,以置后续计时出错。参考书本后发现有jbc这样的指令,可原创 2010-07-28 16:49:00 · 1124 阅读 · 0 评论 -
51单片机学习笔记(五)
<br /> 已经很多天没有写程序了,原因很简单,竟是迷上了新版的西游记,连续看了几天,今天写的是续上以前的教材,“心率计数器”是继“电子时钟”的一个计算器/计时器的应用。<br /> 对于计数器/计时器的应用,似乎就是熟练的问题,对计数器/计时器的使用很容易理解,但是要是不看书本,那编写出的程序多半是有错误的,因为对TMOD,TCON,IE,的控制方式,不看书是很难把它记住的,而应用起来却是十分简单。<br /> 在这里要说一下在计数器模式下原创 2010-08-06 17:31:00 · 924 阅读 · 0 评论 -
关于单片机上for循环中运用ACC的隐蔽错误
最近写了几个程序,一个是用51单片机读取模数传感器adc0832的电压值,一个是读取ds1302的时间值,结果都出现了读数一直为0的情况。我调试了近一个星期,修改了一个我认为不可能会错的句子,程序运行成功了,这才发现了一个极其隐蔽的错误。(我用的是xp系统,用keil4软件编译) 先上代码:第一个为错误代码,第二个为正确代码。这是用来向ds1302芯片写入命令或数据的函数。实现把8位的数据dat一位一位地写入ds1302的io口。其中ACC0为ACC的第0位。 //for(i=0;i原创 2011-04-04 23:13:00 · 4730 阅读 · 10 评论 -
野火图片
原创 2012-08-05 21:21:57 · 1038 阅读 · 1 评论