红牛开发板模拟器简要说明_V1.0

简介: 我们可以扩展官方的模拟器,根据需要我们可以定制和开发板尽可能相同的功能的模拟器(特别是pin脚的定义要统一起来),这样编写的代码就不用专门为了适应模拟器,而作特别处理了。

1.png

1、前言
.NET Micro Framwork 除了简单易于开发外,还有一个比较有用的功能,那就是支持模拟器开发。但是官方自带的模拟器是一个通用模拟器,不仅LCD和实际开发板有异同,就是按键的pin定义也是有区别的,更不要说一些LED等没有定义的功能了,这样在开发测试.NET Micro Framework应用程序时,还得依赖实际的开发板。

不过我们可以扩展官方的模拟器,根据需要我们可以定制和开发板尽可能相同的功能的模拟器(特别是pin脚的定义要统一起来),这样编写的代码就不用专门为了适应模拟器,而作特别处理了。

红牛开发板模拟器就是这方面的一个尝试,功能亦在不断扩展中…

2、模拟器简介
2.1 模拟器运行环境
开发环境:Microsoft Visual Studio 2010

.NET Micro Framwork版本:V4.1

2.2 模拟器下载
模拟器:http://www.sky-walker.com.cn/MFRelease/Tools/YFEmulator_Redox.rar

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

2.3 模拟器安装
(1)、解压后,把YFEmulator_Redox.exe、YFEmulator_Redox.exe.emulatorconfig等文件拷贝到任意目录。

(2)、直接运行YFEmulator.exe即完成注册。

(3)、在工程属性中打开“.Net Micro Framework”操作面板,Transport选择“Emulator”,Device选择"YFSoft Emulator for Redox"即可使用。

(4)、对应的.NET Micro Framework 4.1 SDK(V4.1.2821.0)

下载地址:

http://www.microsoft.com/downloads/en/details.aspx?FamilyID=CFF5A7B7-C21C-4127-AC65-5516384DA3A0

2.4 模拟器运行界面
image.png

(1)、按钮和LED pin脚定义和实际开发板完全一样;

(2)、NandFlash的相关操作,未来也将和实际开发板统一;

(3)、将提供新的TinyGUI库,以支持模拟器显示;

(4)、后续开发的库,将尽可能考虑支持模拟器操作;

3、模拟器测试
3.1 测试代码

public static void Main()

        {

            //wakeup - PA0  tamper- PC13  user1-PA8 user2- PD3  

            Cpu.Pin[] Button_Pins = new Cpu.Pin[] { (Cpu.Pin)GPIO_NAMES.PA0, (Cpu.Pin)GPIO_NAMES.PC13, (Cpu.Pin)GPIO_NAMES.PA8, (Cpu.Pin)GPIO_NAMES.PD3 };

            //LED

            Cpu.Pin[] LED_Pins = new Cpu.Pin[] { (Cpu.Pin)GPIO_NAMES.PF6, (Cpu.Pin)GPIO_NAMES.PF7, (Cpu.Pin)GPIO_NAMES.PF8, (Cpu.Pin)GPIO_NAMES.PF9, (Cpu.Pin)GPIO_NAMES.PF10 };

            InterruptPort[] button = new InterruptPort[Button_Pins.Length];

            for (int i = 0; i < button.Length; i++)

            {

                button[i] = new InterruptPort(Button_Pins[i], true, Port.ResistorMode.PullDown, Port.InterruptMode.InterruptEdgeBoth);

                button[i].OnInterrupt += new NativeEventHandler(Program_OnInterrupt);

            }

            OutputPort[] led = new OutputPort[LED_Pins.Length];

            for (int i = 0; i < led.Length; i++)

            {

                led[i] = new OutputPort(LED_Pins[i], false);

            }

            while (true)

            {

                for (int i = 0; i < led.Length; i++)

                {

                    led[i].Write(!led[i].Read());

                }

                Thread.Sleep(1000);

            }

        }

        static void Program_OnInterrupt(uint data1, uint data2, DateTime time)

        {

            Debug.Print(data1.ToString() + ":" + data2.ToString());

            System.TinyGUI.Graphics.Print(data1.ToString() + ":" + data2.ToString()+"/r/n");

        }

3.2在模拟器中的测试效果
 image.png

3.3在实际设备中的测试效果
image.png
 

 

4、小结
   其实不仅仅LCD、按键和LED可以模拟,串口、网口、SPI、I2C等也是可以模拟的,后续,我们根据实际的必要,可以开发出周边模块的模拟器,这样就可以实现花最少的代价,做最有效率的工作。

   相关文章引申阅读:

  (1)、支持横竖屏切换的.Net Micro Framework模拟器

   http://blog.csdn.net/yefanqiu/archive/2009/12/06/4950466.aspx

  (2)、Micro Framework 3.0模拟器改造

   http://blog.csdn.net/yefanqiu/archive/2009/01/31/3855650.aspx

  (3)、.Net Micro Framework研究—带IO的模拟器

   http://blog.csdn.net/yefanqiu/archive/2007/12/30/2005462.aspx

  (4)、.Net Micro Framework研究—带I2C总线的模拟器

   http://blog.csdn.net/yefanqiu/archive/2007/12/31/2006370.aspx

(5)、.Net Micro Framework研究—带AD的模拟器

 http://blog.csdn.net/yefanqiu/archive/2007/12/31/2006197.aspx

(6)、.Net Micro Framework研究—模拟器直接运行MF程序

http://blog.csdn.net/yefanqiu/archive/2008/01/02/2010225.aspx

(7)、.Net Micro Framework研究—模拟器改造

http://blog.csdn.net/yefanqiu/archive/2007/10/31/1860020.aspx

(8)、用模拟器零成本体验MF开发

http://blog.csdn.net/yefanqiu/archive/2008/07/16/2658204.aspx

相关文章
|
弹性计算 数据挖掘 UED
云服务器网站建设流程和步骤
网站建设的主要流程是必须了解的,这里就给大家介绍下网站建设的主要步骤!!
606 0
|
18天前
|
人工智能 自然语言处理 文字识别
阿里云百炼Qwen3.7-Max简介:能力、优势、支持订阅计划参考
Qwen3.7-Max是阿里云百炼面向智能体时代推出的新一代旗舰模型,对标GPT-5.5、Claude Opus 4.7等闭源旗舰。该模型支持百万级token上下文窗口,具备顶级推理能力、多模态搜索与视觉理解增强、流式输出低延迟响应等核心优势,覆盖编程、办公、长周期自主执行等复杂场景。同时支持OpenAI接口兼容,便于系统快速迁移。用户可通过Token Plan团队或节省计划等订阅方式灵活调用,适合企业级高要求场景使用。
6849 30
阿里云百炼Qwen3.7-Max简介:能力、优势、支持订阅计划参考
|
3天前
|
数据采集 人工智能 前端开发
让 Coding Agent 从黑盒到透明:阿里云 Agent 观测审计数据采集实践
AI Agent 规模化落地带来执行黑盒、行为难追溯、成本难度量三大难题。阿里云基于 OTel 标准,面向 Coding Agent、个人通用助理和框架型 Agent,推出 LoongSuite Pilot、插件及探针等无侵入采集方案,让 Agent 实现可看见、可分析、可审计、可治理。
610 138
|
3天前
|
人工智能 弹性计算 运维
阿里云发布堡垒机智能运维Agent,运维交互进入自然语言新时代
支持自然语言运维,提升效率与安全双保障。
1145 0
|
10天前
|
人工智能 安全 定位技术
CodeGraph深度解析 让Claude Code工具调用直降七成的核心原理与实操教程
如今以Claude Code为代表的AI编程智能体已经成为开发者日常编码、项目重构、漏洞修复的必备工具。但在长期使用过程中,几乎所有开发者都会遇到同一个明显痛点:AI虽然具备强大的代码生成与分析能力,却常常陷入盲目探索的循环中。
1174 1
|
13天前
|
存储 定位技术 数据库
CodeGraph 如何让 Claude Code减少 7 成工具调用?
CodeGraph 为 Coding Agent 提供本地代码知识图谱,把函数、类、调用链和框架路由提前整理成“项目地图”,减少盲目搜索和文件读取。它不是新 Agent,而是上下文基础设施,让 Agent 更快找到正确代码路径,平均减少 7 成工具调用。
1274 3
|
11天前
|
人工智能 弹性计算 安全
阿里云618活动时间、活动入口、优惠活动详细解读
2026年阿里云618创新加速季已全面开启,作为年度力度最大的云产品促销活动,本次大促覆盖轻量应用服务器、ECS云服务器、GPU云服务器、数据库、AI算力、安全服务、CDN等全品类产品,推出5亿元算力补贴、新用户限时秒杀、普惠满减、企业专享、免费试用、云大使返佣等多重福利,个人开发者、中小企业、AI团队均可享受专属低价。本文将系统梳理2026年阿里云618活动的完整时间节点、官方参与入口、各类优惠细则、使用规则、热门产品推荐及实操代码,帮助用户精准参与、高效省钱,以最低成本完成上云部署。
989 5
|
9天前
|
人工智能 自然语言处理 安全
Vibe Coding 实战:别盲目跟风,先分清 vibe coding 适合什么场景
本文系统总结vibe coding实战经验:明确其适用场景(原型、小工具、标准化模块),剖析5步落地流程(场景判定→结构化提示词→目录初始化→分模块生成→自动化校验),指出四大常见误区,并推荐适配工具Trae。强调“场景匹配+规则前置”是提效关键,避免盲目套用。
806 1