原创 【博客大赛】【原创】 嵌入式开发工具-VS2010 EXPRESS

2012-3-20 19:37 4261 19 23 分类: MCU/ 嵌入式

当提到VS2010作为嵌入式开发工具,替代IAR, Keil等工具时,也许你会感到惊讶,但确实可以,而且更有力,更方便.大家知道用IAR,keil等工具,如果要调试程序的话,还必须具有昂贵的仿真器,虽然有山寨的jlink之类的,但也挺麻烦的不是吗?而用VS2010你知道怎么招,直接用USB,或者串口就能通过VS2010强大的调试功能进行调试.下面我自制了个Netduino mini作为硬件平台.

首先要感谢http://www.netduino.com/.硬件及固件是开源的..

先上图

img_20120307_190942.jpg
img_20120310_150907.jpg
Netduino mini只是最小系统,留有十多个IO口,还有一个串口用来程序下载及调试.我是在Netduino mini基础上稍微做了修改,比如我用MAX3232代替ADM3101EACPZ,用AMS117-3.3,及AMS1117-5.5代替MC33269d-5.0G,MC33269D-3.3G等.
 
下面讲讲如何用VS2010工具进行开发.
1. 环境搭建
第一步当然先安装VS2010.
第二步下载Microsoft NETMF SDK 17.9M  bhttp://www.microsoft.com/downloads/details.aspx?familyid=CFF5A7B7-C21C-4127-AC65-5516384DA3A0&displaylang=en并安装.VS2010必须先安装. 注:这是微软提供开源面向嵌入式的.net.
这样基本环境就搭建好了,打开VS2010你会发现多了一个工程模板 Micro Framework
它就是今后写应用程序的模板.
 
2. 硬件平台的环境搭建

第一步 下载SAM-BA v2.11, 主芯片是atmel公司的AT91SAMX512,SAM-BA v2.11是ATMEL官方提供的下载固件的上位机,主要用它来下载TinyBooterDecompressor.bin

第二步 当你安装了Microsoft NETMF SDK后,在其tools文件夹下有个MFDeploy工具,我们用它来下载Netduino提供的固件 NetduinoMiniFirmware_v4.1.0.6_RS232

这样一切就绪. 下面就可以开始使用VS2010这个强大的开发工具. 这里演示一个驱动LED的示例.

3. 使用VS2010编写自己的应用程序

using System;
using Microsoft.SPOT;
using Microsoft.SPOT.Hardware;
using System.Threading;

namespace NetduinoMiniTest
{
    public class Program
    {
        public static void Main()
        {           
            OutputPort led = new OutputPort((Cpu.Pin)60, false); 

           while (true)
            {
                led.Write(true);
                Thread.Sleep(250);
                led.Write(false);
                Thread.Sleep(250);
            }
        }

    }
}

Netduino论坛解说: AT91SAM7X512具有PA0~PA31,PB0~PB31

IO编号: PA0=0,PA1=1...PA31=31,PB0=32,PB1=33...

在这里用到AD1对应PB28,PB28=60如图

6.jpg
 

所以有

OutputPort led = new OutputPort((Cpu.Pin)60, false);

在VS2010 工程设置里设置成串口调试方式, 就可以自动的串口下载并可以设断点,调试等操作.

7.jpg

结果: 准确的 250ms延时.下图是用逻辑分析仪对PB28进行的采样结果 .

5.jpg
img_20120320_193459.jpg

附上原理图及PCB

注:附件里有硬件所需的两个固件.

文章评论4条评论)

登录后参与讨论

用户606501 2014-4-8 16:11

相当棒的文章,最近也想学习,感谢楼主分享

用户1123831 2013-6-14 14:29

我对你这个很感兴趣,你的锁定时间是多少?频谱杂散又是多少呢?

用户403664 2013-3-28 15:46

你引用错人了。。

gaozhx023_490985704 2013-3-22 10:44

不可以,4350的鉴频鉴相器有自己的带宽,一般4350各个寄存器设置好之后,输入的参考信号变换在十几M输出信号可以锁定,超出后4350就不能锁定了

用户1665027 2013-1-30 14:05

想问一下如果带宽再大一些,比如扫频范围2-4GHZ,4350对DDS输入的信号可以自动切换VCO么,因为4350里面是有3个VCO呀

用户403664 2012-6-5 14:16

重新上传一次看看吧

gaozhx023_490985704 2012-6-4 22:28

我也不清楚,我自己也试了一下也不能下载

用户1696769 2012-6-4 18:05

第一个图片怎么下载不了呢?奇怪

用户1700654 2012-3-30 21:15

NB啊!!!!

用户1683842 2012-3-29 08:51

不错!!省钱啊

相关推荐阅读
用户312232 2012-03-19 16:25
.net micro framework小小测试
现在的技术真是日新月异,.net能够在普通的微处理器上跑了,感觉挺神气的呢. 下面从基本测试环境搭起. 1. 下载VS2010并安装 2.下载Microsoft NETMF SDK 1...
用户312232 2012-03-18 14:45
stm32 矩阵键盘
//write by dragonbao 2011-9-16. 这是硬件上的键盘规划 // | 1 | 2 | 3 | 4 | ---line 1 PE6 // // ----------...
用户312232 2012-03-18 14:32
IAR printf重定向到usart设置
General Options->Library Configuration的Library要选择Full 不要忘了加上stdio.h头文件 #define PUTCHAR_PROT...
用户312232 2012-03-18 14:25
示波器使用事项1
使用探头的“X1”档时,示波器探头大约相当于一个100pF的电容,这在频率较高时,影响很大,会使信号幅度衰减很多,甚至导致振荡电路停振。 使用“X10”档则会改善很多,因为输入阻抗会增大很多。...
用户312232 2012-03-18 14:07
双系统 删除ubuntu
下载一个MbrFix文件,从下面链接或附件中下载。 在CMD窗口输入 MbrFix /drive 0 fixmbr 按提示选 Y 重启后用分区工具恢复Linux分区。 http:/...
我要评论
4
19
关闭 站长推荐上一条 /2 下一条