• LED灯控制


      .NET MF系列目录: http://www.cnblogs.com/lscy/archive/2012/08/23/2651768.html

    一、 目录

    1. STM32F103单片机

    2. GPIO

    3. Microsoft.Spot.Hardware

    4. 控制LED代码

    5. 接线

    6. 效果

    7. 下载

     

    二、 STM32F103单片机

    俺是做软件的,硬件不做过多介绍。

    Stm32F103:百度文库

    三、GPIO

         昨天刚开始学习MF,刚拿到“探索者一号”时,无从下手。大石头反复提到的一个名词:GPIO。因此花了一点时间来了解啥叫GPIO(点击,跳转到百度文库关于GPIO的解释)。

        从百度文库摘下关于GPIO的描述:

    General Purpose Input Output (通用输入/输出)简称为GPIO,或总线扩展器,利用工业标准I2C、SMBus™或SPI™接口简化了I/O口的扩展。当微控制器或芯片组没有足够的I/O端口,或当系统需要采用远端串行通信或控制时,GPIO产品能够提供额外的控制和监视功能。

        看“探索者一号”的原理图,头大,看不懂。找来做硬件的同事,教我。STM32F103单片机总共有7组GPIO端口,PA0~15……PG0~15,共16*7 = 112个GPIO口。

    clip_image002

    四、 Microsoft.Spot.Hardware

        命名空间Microsoft.Spot.Hardware是MF操作硬件设备的程序集,在这里是操作LED灯,我们只贴出与此相关的类图。

    clip_image004

        这里是关于输入输出端口的类图。控制LED灯是要输出高低电平,因此,我们再看OutputPort类的结构。

    clip_image006

        上ILSpy,看代码实现。

        ILSpy官网: http://www.ilspy.net/

    clip_image008

        如果程序集列表中无此程序集,自己想办法添加。

       添加步骤如下,看图,不多说:

    clip_image010

    clip_image012

    本机目录地址:

    C:\Program Files (x86)\Microsoft .NET Micro Framework\v4.2\Assemblies\be

    clip_image014

    点击打开,将会添加到ILSpy中。OutputPort如下:

    clip_image016

    InitalState为GPIO端口初始状态。

    构造函数参数portID为GPIO端口序号,类型为Cpu.Pin,稍后再述。

    Write(Boolean):输出GPIO状态,如果置为高电平,即为ture,反之,自己想。

    这里只有输出状态,那读状态在哪呢?在父类Port里面。

    clip_image018

    返回Boolean类型,表示端口当前状态。

    Cpu.Pin是一个枚举,代表GPIO端口的状态。在MF里面,只内置了16个,序号从0~15,代表PA0~15。(就这一点,我花了两小时,才弄明白,很是疼啊)

    clip_image020

     

    五、 控制LED代码

    都是写代码的人,不多说,看了就懂了。

    先引用Microsoft.Spot.Hardware

    clip_image022

    代码说明:

    OutputPort port0 = new OutputPort(Cpu.Pin.GPIO_Pin0, false); 定义PA0端口的初始状态为关。

    port0.Write(!port0.Read()); 读出端口状态,取反写入相反状态。

    这样,可以将GPIO端口为闪烁效果。

     

    六、 接线

    接线时需要按照原理图的标识,先上原理图(图片位置:文档左上角):

    clip_image024

    对应板子上面的:

    clip_image026

    此图为示意图,不是本文中描述的接线图,接线图看后面的演示效果视频。

     

    七、 效果

    编译代码,布署,看效果。

    视频下载

    八、 下载

    探索者原理图

     

     相关资源:

    1.QQ群:1600838

    2.博客:http://www.cnblogs.com/nnhy/  

    3.论坛:http://www.53wb.com/

     

  • 相关阅读:
    uva 489 Hangman Judge(水题)
    中国海洋大学第四届朗讯杯高级组 Cash Cow(模拟)
    中国海洋大学第四届朗讯杯高级组 A 2718 Rocky(模拟)
    poj 1039 Pipe(叉乘。。。)
    CodeForces 135 B. Rectangle and Square(判断正方形和 矩形)
    poj 1265 Area( pick 定理 )
    poj 2031 Building a Space Station(prime )
    hdu 4502 吉哥系列故事——临时工计划(dp)
    拉格朗日插值
    [USACO18DEC]The Cow Gathering P
  • 原文地址:https://www.cnblogs.com/lscy/p/2651771.html
Copyright © 2020-2023  润新知