.net micro framework的入门例程-点灯神话-6.使用定时器代替延时函数闪烁LED
来源:互联网 发布:windows设置ntp客户端 编辑:程序博客网 时间:2024/05/22 10:38
可以学学怎么使用定时器
using System;
using System.Threading;using Microsoft.SPOT;
using Microsoft.SPOT.Hardware;
using GHIElectronics.Gadgeteer;
namespace my_LED
{
public class my_led
{
static OutputPort lampOutport = new OutputPort((Cpu.Pin)GHI.Hardware.G120.Pin.P1_15,false);
static InterruptPort switchInterrupt = new InterruptPort(
(Cpu.Pin)GHI.Hardware.G120.Pin.P2_10,
false,
Port.ResistorMode.PullUp,
Port.InterruptMode.InterruptEdgeBoth);
public static void Main()
{
switchInterrupt.OnInterrupt += new NativeEventHandler(switchInterrupt_OnInterrupt);
System.Threading.Timer timer = new System.Threading.Timer(
new TimerCallback(flashTick),
null,
5000,
5000);
System.Threading.Thread.Sleep(System.Threading.Timeout.Infinite);
}
static void switchInterrupt_OnInterrupt(uint data1, uint data2, DateTime time)
{
Monitor.Enter(switchInterrupt);
switch (data2)
{
case 0: lampOutport.Write(true); break;
case 1: lampOutport.Write(false); break;
default: break;
}
Monitor.Exit(switchInterrupt);
//throw new NotImplementedException();
}
private static void flashTick(object o)
{
if (!switchInterrupt.Read())
{
return;
}
lampOutport.Write(true);
System.Threading.Thread.Sleep(100);
System.Threading.Monitor.Enter(switchInterrupt);
if (switchInterrupt.Read())
{
lampOutport.Write(false);
}
System.Threading.Monitor.Exit(switchInterrupt);
}
}
}
0 0
- .net micro framework的入门例程-点灯神话-6.使用定时器代替延时函数闪烁LED
- .net micro framework的入门例程-点灯神话-4.加入闪烁LED函数
- .net micro framework的入门例程-点灯神话-5.加入一个线程闪烁LED
- .net micro framework的入门例程-点灯神话-7.队列存储LED灯闪烁时间并用串口发送
- .net micro framework的入门例程-点灯神话-8.串口接收字符D即发送LED闪烁日志
- .net micro framework的入门例程-点灯神话-2.按键控制LED灯
- .net micro framework的入门例程-点灯神话-3.按键中断控制LED
- .net micro framework的入门例程-点灯神话-1.神灯自闪
- Microsoft .NET Micro Framework移植开发笔记2之点灯神话
- .Net Micro Framework 快速入门
- .Net Micro Framework 快速入门
- Net Micro Framework 快速入门
- .Net Micro Framework 快速入门
- .Net Micro Framework 快速入门
- 【.Net Micro Framework PortingKit - 03】调试初步:点亮LED灯
- DSP:C54x定时器及使用定时器产生led的1s周期闪烁
- 定时器 LED 闪烁功能
- STM8S精确延时+LED闪烁
- PHP错误:Forbidden You don't have permission to access / on this server. 解决办法
- 复杂网络挖掘算法流水记录
- how to deal with the situation that the language support option disappears in linux ubuntu
- Ubuntu装wifi驱动(三步搞掂)
- 最好用的汉字转拼音代码PinYin4Objc(PinYin4J的objc版本)(更新到v1.1.1,增加block异步处理)┊
- .net micro framework的入门例程-点灯神话-6.使用定时器代替延时函数闪烁LED
- grep 用法详解
- Hrbust1053 Warcraft III (完全背包)
- hdu 4704 Sum(费马小定理)
- mac 下杀死一个端口号对应的进程
- .net micro framework的入门例程-点灯神话-7.队列存储LED灯闪烁时间并用串口发送
- epoll的原理和用法
- PIL模块与随机生成中文验证码
- 程序中使用cocostudio移植到android手机需要的若干配置过程