在单片机系统中,LED数码管的应用是很常见的,不过对我们偏软件开发的人来说,要想研究LED还得储备一定的知识才能进行近一步的工作。不过采用.NET Micro Framework系统,我们马上就可以站在软件人员的角度来研究LED数码管显示0~F数字的原理了。

为了便于演示,我们选用的是一款共阴的单个LED显示数码管,其阴极接GND之前需要串联一个330欧的电阻,其管脚定义如下:

注:左上角pin脚为1脚。

LED数码管和开发板的接线表如下:

序号

LED管脚

开发板

备注

1

A(10)

PC0

2

B(9)

PC1

3

C(8)

PC2

4

D(5)

PC3

5

E(4)

PC4

6

F(2)

PC5

7

G(3)

PC6

8

DP(7)

PC7

小数点

9

1或6

GND

中间接330欧电阻

最终器件的接线效果图如下:

为了便于显示数字0、1、2…A、B…F,我们进行了如下编码:

//0 1 2 3 4 5 6 7 8 9 A B C D E F

byte[] DigitalFlag = new byte[] { 0xBF, 0x06, 0x5B, 0x4F, 0x66, 0x6D, 0x7D, 0x07, 0x7F, 0x6F, 0x77, 0x7C, 0x39, 0x5E, 0x79, 0x71 };

类似字符库中的编码,通过这个编码我们就可以比较容易的显示对应的数字了,相关代码如下:

public void Display(int hex, bool decimalpoint)

{

if (hex < 0 || hex > 15) return;

for (int i = 0; i < 7; i++)

{

LED_Data[i].Write((DigitalFlag[hex] >> i & 0x1) > 0);

}

LED_Data[7].Write(decimalpoint);

}

hex的取值就是0~15,decimalpoint表示是否显示小数点。这些代码编写好后,主程序就非常简单了,相关代码如下:

public static void Main()

{

int i = 0;

while (true)

{

if (i > 15) i = 0;

led.Display(i++, false);

Thread.Sleep(1000);

}

}

演示视频网址:http://video.sina.com.cn/v/b/44112962-1804832611.html

(1)、.NET Micro Framework开发板

http://item.taobao.com/item.htm?id=7117999726

(2)、LED显示相关套件

http://item.taobao.com/item.htm?id=8836634908

本文源码:http://www.sky-walker.com.cn/yefan/MFV40/SourceCode/LEDDisplayTest.rar

MF快速参考: .NET Micro Framework 快速入门

MF中文讨论组:http://space.cnblogs.com/group/MFSoft/

【低价开发板】http://item.taobao.com/item.htm?id=7117999726

参加了博客大赛,请大家投上一票!您的支持,将是我最大的动力,谢谢!http://2010blog.51cto.com/1635641

【STM32 .Net MF开发板学习-25】LED数码管显示相关推荐

  1. 【STM32 .Net MF开发板学习-02】GPIO测试

    前段时间我借用市面上现成的Corex-M3开发板,打造了最低价的.Net Micro Framework开发板(参见<免费发放firmwave,打造史上最低价.Net MF开发板>),在此 ...

  2. 【STM32 .Net MF开发板学习-28】中文显示(WPF方式)

    在<为Cortex-M3打造轻量级TinyGUI>中我们提到.NET MF的官方图形库为WPF,考虑到内存的限制和CPU的性能,所以我们开发了TinyGUI库,并在<TinyGUI绘 ...

  3. 【STM32 .Net MF开发板学习-17】Wifi遥控智能小车

    恰好以前购买的一个PDA含Wifi功能,所以与其用PC通过Zigbee控制智能小车,不如用PDA来控制,这样更为方便,不过由于目前.NET MF开发板不直接支持Wifi功能,所以我们也只好间接控制了, ...

  4. 【STM32 .NET MF开发板学习-29】摄像头蓝牙图像远程获取

    目前生产串口摄像头的厂家有很多,每家的通信协议也不同,所以针对不同的摄像头都必须编写相对应的摄像头驱动程序. 最早做医疗项目的时候,开发过一款串口摄像头的驱动,不过是配合TinyIOs而使用,并没有把 ...

  5. 【STM32 Net MF开发板学习-27】GPRS通信实现

    GPRS是General Packet Radio Service(通用分组无线服务技术)的简称,它是GSM移动电话用户可用的一种移动数据业务.GPRS和以往连续在频道传输的方式不同,是以封包(Pac ...

  6. 【STM32 NET MF开发板学习-29】摄像头蓝牙图像远程获取

    分享一下我老师大神的人工智能教程.零基础!通俗易懂!风趣幽默!还带黄段子!希望你也加入到我们人工智能的队伍中来!https://blog.csdn.net/jiangjunshow 目前生产串口摄像头 ...

  7. 【STM32 .Net MF开发板学习-11】步进电机控制(非PWM模式)

    选用的步进电机的型号为28BYJ-48(或MP28GA,5V,转速比1/64),驱动电路选用 uln2003芯片的驱动板,其控制时序图如下: 四相八拍:A->AB->B ->BC - ...

  8. 【STM32 Net MF开发板学习-11】步进电机控制(非PWM模式)

    选用的步进电机的型号为28BYJ-48(或MP28GA,5V,转速比1/64),驱动电路选用uln2003芯片的驱动板,其控制时序图如下: 四相八拍:A->AB->B ->BC -& ...

  9. 【STM32 Net MF开发板学习-19】DHT11温湿度传感器通信(上)

    前段时间开发远程医疗系统(Dr.Cloud)就曾用到过温湿度传感器,不过当时考虑到集成难度,选了一个RS485接口的传感器,该传感器实现了Modbus Rtu Slave的功能,只要客户程序实现Mod ...

最新文章

  1. MERGE INTO
  2. ‘复杂变简单‘的代码例子
  3. 男人对待恋爱的不同阶段......
  4. 硒4 Alpha –期望什么?
  5. 计算机主板型号进bios,什么是BIOS?
  6. 一个java错误的总结
  7. 30 System类
  8. 下午,无心编程,读小诗...
  9. Mysql报错(必解决):The user specified as a definer (‘mysql.infoschema‘@‘localhost‘) does not exist
  10. Ubuntu 定时锁屏3.0
  11. 【直接下载】x86_64-6.3.0-release-win32-seh-rt_v5-rev2
  12. 设计模式之中介者模式
  13. 图像匹配所用方法总结
  14. Android Gradle Plugins系列-02-Maven Publish 插件踩坑指南
  15. 定义一个方法用于判断一个字符串是否是对称的字符串(StringBuilder),例如:abcba、上海自来水来自海上均为对称字符串。
  16. 老版本金蝶迷你版9.1升级到金蝶KIS 13.0,升级错误.
  17. leelen可视对讲怎么接线_电子门铃怎么安装 电子对讲门铃安装方法【详细介绍】...
  18. Windows系统的四个常见后门
  19. Asterisk介绍
  20. OpenGL - Deferred Rendering

热门文章

  1. Python 索引for循环
  2. 范数(赋范线性空间、向量范数、矩阵范数)
  3. rsync - 远程同步工具
  4. CentOS 6.5使用yum快速搭建LAMP环境
  5. aspx文件、aspx.cs文件、aspx.designer.cs文件之讲解
  6. Mirror--如何在主库上增加文件
  7. java File类笔记
  8. Headfirst JSP 01 (概述)
  9. C语言字符糊到了一起,C语言速成及格课.docx
  10. php如何删除数据库中的数据库文件夹,学习猿地-php数据库如何删除数据