摘要: 最近刚做好一个站,基于rails 3,教程为主,大家捧场看看,谢谢!www.yo945.com单片机用的是STC89C52RC第一个问题是,定义了一个unsigned int类型的全局变量后,单片机的速度变得莫名其妙的慢,有一个在1602液晶上显示一些字符的函数,结果却是大概2秒钟左右才显示一个字符。问题让人非常的费解,注释掉这个全局变量后,问题就全好了。更让我想不明白的是,这个全局变量我都没有使用,只是定义了想在后面用的。第二个问题,延时函数,int参数只能传最大到255的值void delay(int ms){ int i,j; for(i=0;i<ms;i++) for(j=0;j 阅读全文
posted @ 2010-05-29 00:06 灰色逻辑 阅读(586) 评论(2) 推荐(2) 编辑
摘要: 最近刚做好一个站,基于rails 3,教程为主,大家捧场看看,谢谢!www.yo945.com 弄了几天的Proteus仿真,终于觉得自己想做的东西,已经全部用Proteus仿真过了,应该可以动手做了。于是先用Proteus画好原理图,再用ARES画好PCB板图——虽然我只是用洞洞板焊接,但是有个PCB板图做参照,连线会容易很多。花了两个小时,去中关村买了必要的原件,开始动手。 单片机用的是STC89C552RC,原因除了价廉物美之外,最大的原因是,STC的单片机可以直接使用串口往里面下程序,这样我可以直接焊接好板子,然后连接好串口,一边写一边调试,不用把单片机拿来拿去了。为了焊的好看些,把线 阅读全文
posted @ 2010-05-27 21:04 灰色逻辑 阅读(4164) 评论(2) 推荐(2) 编辑
摘要: 最近刚做好一个站,基于rails 3,教程为主,大家捧场看看,谢谢!www.yo945.com在学习单片机的过程中,我常有这样的烦恼:随随便便一个芯片,少则占用三五个IO口,一般的就占用8个,稍微想用多一点芯片吧,老觉得IO口不够用。学串口的时候觉得串口是个好东西,连两条线就够了,现在学到I2C,觉得这也是一个非常好的东西,也是两条线,还能给每个总线上的设备设立地址,简直就是一个小网络了。I2C总线使用两条线,一条是时钟线,称为SCL,一条是数据线,称为SDA,各个设备就并在总线上,每一个总线上的设备都有一个自己的地址,主机在操作设备的时候,都会先发送一个地址码,告诉被操作机,接下来的命令由它 阅读全文
posted @ 2010-05-17 21:30 灰色逻辑 阅读(3629) 评论(4) 推荐(1) 编辑
摘要: 1602液晶,即一行有16个字符,共2行的液晶显示屏,只能显示ASCII码,不能显示汉字。一般1602有16条线,其中8根线是数据操作线,其他8根线是控制线,定义如下: 端口名称 说明 VSS 电源地 VDD 电源正极 VO 液晶对比度调节端 RS 数据/命令选择端(H为数据,L为命令) R/W 读写控制(H/L) E 使能 D0-D7 数据库端 BLA 背光电源正极 BLK 背光电源负极 ... 阅读全文
posted @ 2010-05-14 00:47 灰色逻辑 阅读(3355) 评论(2) 推荐(0) 编辑
摘要: 最近刚做好一个站,基于rails 3,教程为主,大家捧场看看,谢谢!www.yo945.com有事耽搁了几天,今天断续学习。串口的理论知识我就不记了,网上多的是。51单片机的串口,有4种方式,分别为方式0,方式1,方式2,方式3.由于我的目的,使用串口主要是为了和电脑进行通信,所以主要使用方式1(事实上我也只学了方式1,其他方式等用到的时候再学吧)。串口的方式1,其波特率与定时器T1相关,公式如下:方式1波特率 = (2SMOD×32)/(T1溢出率)SMOD是一个寄存器,一般我们就取0了T1的溢出率,即每秒T1计数满几次(相关知识可以看看前面笔记的记录)正是因为如上的公式,所以设置 阅读全文
posted @ 2010-05-09 01:17 灰色逻辑 阅读(3616) 评论(4) 推荐(1) 编辑
摘要: 现实中的很多量,都是模拟量,如温度,压力等,单片机要去了解它们,首先就要把这些量进行数字化,AD转换即把模拟量转变为数字量。这次书上介绍的AD芯片为ADC0804,8位并行AD转换芯片。关于AD转换的详细原理,我就不抄了,网上有的是。ADC0804的使用,比前面用过的锁存器74LS573难用得多,主要是读写数据都要根据时序图,进行电位的变化,而且芯片的接法也相对麻烦一点。下面记录一下引脚定义:VI... 阅读全文
posted @ 2010-04-19 23:30 灰色逻辑 阅读(4374) 评论(1) 推荐(1) 编辑
摘要: 最近刚做好一个站,基于rails 3,教程为主,大家捧场看看,谢谢!www.yo945.com与单片机交互,键盘可能是最直接的工具了。所以我对于键盘检测也是十分期待的。键盘说开了,其实就是很多的按钮。如果键盘数比较小的话,直接使用IO口连接按钮就可以了,比如我要实现一个功能,按键使数字加1或减1,这样的话,只需要两个按键就可以了。单个键盘的检测并不困难,先把IO口电平置为高电平,然后直接IO连按钮,再把按钮接地,当按下按钮时,检测到IO口电平为低即表示按下了按钮。当然这是理论情况下,实际的情况是,按下按钮后,电平还会上下的跳变几次,所以如果只是单纯的检测电平的变化,是不准确的。所以比较简单的方 阅读全文
posted @ 2010-04-16 23:26 灰色逻辑 阅读(2132) 评论(1) 推荐(1) 编辑
摘要: 最近刚做好一个站,基于rails 3,教程为主,大家捧场看看,谢谢!www.yo945.com以52单片机来说,一共有6个中断源,其说明如下(序号用于中断程序的编写):中断源名称默认级别序号说明INT0最高0外部中断0,由P3.2端口线引入,低电平或下降沿引起INT1第32由P3.3端口线引入,低电平或下降沿引起T0第21定时器/计数器0中断,由T0计数器计满回零引起T1第43定时器/计数器1中断,由T1计数器计满回零引起T2最低5定时器/计数器2中断,由T2计数器计满回零引起TI/RI第54串行口中断,串行端口完成一帧字符发送/接收后引起中断的允许和关闭,由中断允许寄存器IE控制,而IE又细 阅读全文
posted @ 2010-04-14 23:51 灰色逻辑 阅读(1971) 评论(0) 推荐(1) 编辑
摘要: 最近刚做好一个站,基于rails 3,教程为主,大家捧场看看,谢谢!www.yo945.com今天去怀柔了,本想去爬一下野长城,没想到都4月份了,山中居然还下起了雪,对于我这个没有进过大山,没爬过雪山的人来说,真的是太激动了。当然,所谓乐极生悲,虽然悲是没有,不过跤实在是摔了有几个。晚上回来发现没网络,还好有一块3G网卡,和老婆利用代理,一起上了网。昨天有事没看书,今天继续。今天学的是数码管和锁存器的使用。用锁存器的目的,是为了减小IO口的使用,本来至少得用15根IO口的,用了锁存器后,只需要用10根IO口,若是继续增加数码管,IO口的增加也是一根根增加了。锁存器的作用,是把当然IO口的状态保 阅读全文
posted @ 2010-04-11 23:05 灰色逻辑 阅读(3864) 评论(0) 推荐(1) 编辑
摘要: 最近刚做好一个站,基于rails 3,教程为主,大家捧场看看,谢谢!www.yo945.com其实学单片机实在是应该去买一块学习板的,我原本是买了一块的,结果学了段时间,又去弄别的东西了,这次来北京,想继续学习,又忘记带了……BS一下自己。单片机不做实验肯定是不行的,刚好近段时间,一直有在用Proteus来模拟电路,而Proteus最强大的地方,是模拟单片机,不想再买一块学习板,所以,就用Proteus来暂时代替学习板吧。我的学习环境:Keil 8.18Proteus 7.6Windows 7原来看的书,忘记了大半,所以只好再从头看起咯。看的书是郭天详写的《51单片机C语言教程——入门、提高、 阅读全文
posted @ 2010-04-09 23:53 灰色逻辑 阅读(2072) 评论(0) 推荐(1) 编辑