Chinaunix首页 | 论坛 | 博客
  • 博客访问: 12620
  • 博文数量: 5
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 53
  • 用 户 组: 普通用户
  • 注册时间: 2014-05-10 22:00
文章分类
文章存档

2014年(5)

我的朋友

分类: 嵌入式

2014-06-21 21:35:15

       第一次发文章,对自己前段时间的学习总结。
      本人研究生在读,本科的时候学的很渣,靠大四的突然爆发考了一所还算不错的大学读研究生,选的是嵌入式方向,本科完全没有硬件经验,就学过c语言,考的方向是信号处理方向,不过自己对硬件感兴趣,所以就跟着现在的导师搞硬件方向。由于基础不好,所以学的也很吃力,不过还好本人心态蛮好,也蛮认真,所以自己感觉进步还是很快的,上学期学了半学期的linux,主要是搞了下micro2440开发板,做了两个项目,这学期玩了下单片机,可能很多人会说应该是先学习单片机,再学习嵌入式的,不过我不这么认为,每个人的情况不一样嘛,适合自己才重要。好了,废话就不说了,总结下前一个月学51单片机的学习吧。
      用的单片机的主控芯片是stc89c52rc,指令代码完全兼容传统8051单片机,12时钟/机器周期和6时钟/机器周期可任意选择,工作电压5v,工作频率范围是0-40MHZ。我用的这款单片机的外围模块有数码管模块,流水灯,4x4矩阵键盘,独立按键,红外,蜂鸣器......具体的模块还有很多。
      下面依次讲下我学习的各个模块吧,这个对于老手来说是太简单了,我也就是总结,加深自己的印象。
       (1)点亮流水灯
                其实流水灯就是一个发光二极管,从它的电路图知道,要是它亮就是给p1引脚低电平就好了,所以写它的程序很简单,直接对端口赋高低电平,p1=oxfe,这里我要说的是对流水灯闪烁,这就要用到延迟函数了,延迟通常分为硬件延迟和软件延迟两种,硬件延迟是用到定时器/计数器,另一种延迟就是软件延迟。要计算延迟时间,就要涉及到机器周期的概念,一个机器周期是六个状态周期,是十二个时钟周期。
       (2)数码管显示
                 这个和流水灯点亮原理一样,主要是要区分好段选和位选,这里用到了两块74hc573芯片,用来区分段选和位选,用到了端口的复用,p0端口复用给了段选和位选,所以使用的时候先要定义好位选后在使用段选
         (3)按键模块
                按键模块我在理解的基础上做了一个打分器,按键按下后,是低电平,通过判断低电平实现累加,在加上显示模块就完成了打分器。
这里主要是要注意函数的调用。
          后面还有很多模块,由于没有经常用到,先写到这个地方,希望这个是个好的开头,以后要经常对所学的只是进行总结。



阅读(381) | 评论(0) | 转发(0) |
0

上一篇:没有了

下一篇:micro2440串口驱动程序设计

给主人留下些什么吧!~~