到学校里事情有点多,笔记刚好写到ADC,ADC内容也有点多,所以暂时停更了,不过这份笔记我一定会去完善的,感兴趣的可以持续关注一下。
今天发现一个很好的开发MSP430单片机的IDE,感觉能够对大多数正在准备电赛和入门使用MSP430单片机的同学提供到很大的帮助,特意来发一份博客,将我收集的资料分享出来,需要的同学自取就可以了。
相信很多同学都听参加过电赛的学长说过Arduino,而今天的这份资料就是让大家使用Arduino的开发方式去开发MSP430。我是在Seeed发现的该方法,上面主要是介绍一款LaunchPad的扩展板,只是引出IO,想自制的也可以自制一块,也包括一些常见传感器使用的Demo,该教程我也会放在资料包里,官网链接为https://wiki.seeedstudio.com/cn/Grove_Base_BoosterPack/
话不多说,以板载LED闪烁的Demo作为展示:

// most launchpads have a red LED
#define LED RED_LED//see pins_energia.h for more LED definitions
//#define LED GREEN_LED// the setup routine runs once when you press reset:
void setup() {                // initialize the digital pin as an output.pinMode(LED, OUTPUT);
}// the loop routine runs over and over again forever:
void loop() {digitalWrite(LED, HIGH);   // turn the LED on (HIGH is the voltage level)delay(1000);               // wait for a seconddigitalWrite(LED, LOW);    // turn the LED off by making the voltage LOWdelay(1000);               // wait for a second
}

像正常Arduino的开发流程,你只需要选择开发板定义,端口号(注意:端口处会显示两个串口,一个是下载口,一个是仿真口,我们选择下载端口),再点击上传就可以了。不过任何事物都有两面性,这只会让你快速开发Energia已有的开发板型号(LaunchPad系列),对其他MSP430型号的MCU和底层的一些寄存器学习并不会特别友善,但可以去阅读人家封装好的函数后再去学习底层知识,位置在:…\energia-1.8.10E23\hardware\energia\msp430\cores\msp430,LaunchPad型号定义在:\energia-1.8.10E23\hardware\energia\msp430\variants,个人建议大家都阅读一下吧,毕竟我们只是在使用人家写好的平台。
以下是Energia的官方链接:https://energia.nu/,我只翻译了部分介绍,感兴趣的同学可以自行去看看。
Energia 是一个开源电子原型设计平台,由 Robert Wessels 于 2012 年 1 月创立,其目标是将 Wiring 和 Arduino 框架引入基于德州仪器 MSP430 的 LaunchPad。 Energia IDE 是跨平台的,支持 Mac OS、Windows 和 Linux。 Energia 使用 Peter Bigot 的 msp gcc 编译器。Energia 包括一个集成开发环境 (IDE),它以处理 IDE(处理→接线→Arduino→Energia)为基础。 Energia 也是一个可移植的框架/抽象层,可以在其他流行的 IDE 中使用。
Energia 和 Arduino 的基础是 Hernando Barragan 开发的 Wiring 框架。该框架是为设计师和艺术家精心创建的,旨在鼓励来自世界各地的初学者和专家分享想法、知识和集体经验的社区。Energia 团队采用边做边学的理念,努力让直接使用硬件变得容易。专业工程师、企业家、制造商和学生都可以从 Energia 为微控制器带来的易用性中受益。
德州仪器(Texas Instruments)提供了 MSP430、MSP432x、TM4C、C2000、CC32xx 和 CC13xx LaunchPad, LaunchPad 是由德州仪器 (TI) 制造的低成本微控制器板。最新版本的 Energia 支持大多数 LaunchPad 产品。
最后再展示一个ADC12数值在数码管上的显示Demo吧:

#include "TM1637.h" /* Macro Define */
#define CLK               39          /* 4-Digit Display clock pin */
#define DIO               38          /* 4-Digit Display data pin */
#define LED               RED_LED     /* blink LED */
#define ROTARY_ANGLE_P    24          /* pin of rotary angle sensor *//* Global Variables */
TM1637 tm1637(CLK, DIO);              /* 4-Digit Display object */
int analog_value = 0;                 /* variable to store the value coming from rotary angle sensor */
int blink_interval = 0;               /* LED delay time */
int8_t bits[4] = {0};                 /* array to store the single bits of the value *//* the setup() method runs once, when the sketch starts */
void setup()
{/* Initialize 4-Digit Display */tm1637.init();tm1637.set(BRIGHT_TYPICAL);/* declare the LED pin as an OUTPUT */pinMode(LED, OUTPUT);
}/* the loop() method runs over and over again */
void loop()
{   analog_value = analogRead(ROTARY_ANGLE_P);      /* read the value from the sensor */blink_interval = analog_value;                  /* store the rotary analog value */digitalWrite(LED, HIGH);                        /* turn on LED */memset(bits, 0, 4);                             /* reset array before we use it */for(int i = 3; i >= 0; i--) {/* Convert the value to individual decimal digits for display */bits[i] = analog_value % 10;analog_value = analog_value / 10;  tm1637.display(i, bits[i]);                 /* display on 4-Digit Display */}/*The amount of time the LED will be on and off depends onthe value obtained by analogRead().*/ delay(blink_interval);    digitalWrite(LED, LOW);delay(blink_interval);
}

实物照:

如何使用Energia快速开发常见的MSP430/432LaunchPad相关推荐

  1. Web开发常见的软件架构

    Web开发常见的软件架构 一.看需求分析,看产品PRD:Product Requirement Document 二.根据PRD和产品原型建数据库表,注意三范式要求,用工具到处数据库关系图,并快速地理 ...

  2. 快速 开发平台 架构_快速介绍清洁架构

    快速 开发平台 架构 by Daniel Deutsch 由Daniel Deutsch 快速介绍清洁架构 (A quick introduction to clean architecture) I ...

  3. Learun对快速开发平台的基本认知与设定

    1 概述 随着软件行业日新月异的发展,使用传统的开发工具已经不能满足现有程序员的诉求,每个项目都要从零开始,代码无复用率:所有的基础功能需要一行一点的敲代码,一个预置基本功能模型,可以快速生成代码的开 ...

  4. android 编写系统应用,Android应用快速开发系统设计与实现

    摘要: 自Android系统诞生以来,传统的手持电话遭受了巨大冲击,智能手机的功能越来越强大,价格也越来越低廉,智能手机开始出现在越来越多的普通用户手中.到现在为止,Android手机已经在智能手机领 ...

  5. eclipse在网页进入时显示重定向过多_使用eclipse快速开发jsp以及编码问题、jsp页面元素、request对象学习的粗略记录...

    人老了真是什么都会忘记啊orz,早上发现学过去的东西好多都还没记录复盘... ...(懒虫作祟) 在开始之前,俺认为还是很有必要了解一下jsp的执行流程,俺发现CSDN上的"陈小哥cw&qu ...

  6. 浅析工业级物联网项目的快速开发

    浅析工业级物联网项目的快速开发 发表于2015-11-10 15:01| 1567次阅读| 来源CSDN| 4 条评论| 作者蒲婧 CTO俱乐部CTOCTO讲堂物联网工业级刘洪峰叶帆 width=&q ...

  7. 基于React和SpringBoot的快速开发模板QuickAdmin

    经过一段时间的总结和完善,我的管理系统快速开发模板已经基本成型,现在GitHub上开源啦: QuickAdmin QuickAdmin是基于Spring Boot和React.js实现的管理系统开发框 ...

  8. 使用 CodeIgniter 框架快速开发 PHP 应用(一)

    使用 CodeIgniter 框架快速开发 PHP 应用(一) 原文:使用 CodeIgniter 框架快速开发 PHP 应用(一) 对 CodeIgniter 的介绍 大多数PHPer都想写出运行状 ...

  9. 深入浅出教你做一个快速开发平台

    快速开发平台,重点在于快,要快无非就是两种手段: 1.生成代码 2.重用模块 详细看如下的分支图 就第一种情况生成代码来说,是每个快速开发平台必备的,基本上所有的快速开发平台都能生成CRUD,从jsp ...

最新文章

  1. “去了太空就别回来了!”贝索斯还没“上天”,就遭美国 5 万多人请愿:不准重返地球...
  2. 《评人工智能如何走向新阶段》后记(再续13)
  3. 希捷期望HAMR实现其营收的增长
  4. ES6:Set和Map
  5. [读书笔记] 美的历程
  6. 【英语学习】【医学】Unit 08 The Cardiovascular System
  7. NHibernate Profiler使用方法
  8. java读取propertiesshib,Java CommonUtils.constructServiceUrl方法代码示例
  9. 配置私有仓库(使用registry镜像搭建一个私有仓库)
  10. java之接口interface
  11. 微信公号“架构师之路”学习笔记(三)-MQ消息可达性_幂等性_延时性架构设计(应用场景、可靠投递、流量冲击)
  12. javascript : spket 视频教程
  13. Netapp存储模拟器一战成功
  14. 通过IO口控制STC15F2K60S2系列单片机输出pwm
  15. KVM虚拟化技术实践
  16. C语言程序设计精髓--第3周编程题在线测试
  17. mysql amoeba_MySQL基于Amoeba实现读写分离
  18. LiteFlow 开源编排规则引擎
  19. let和expr的区别
  20. python皮卡丘绘制_Python画皮卡丘

热门文章

  1. Could not execute menu item (internal error),如何修改端口号
  2. iPhone 11 Pro Max 拆解
  3. java boss打招呼,Java中几个隐藏“BOSS”
  4. 用SHA哈希算法加密密码文件
  5. Python判断if语句
  6. 数据库经典查询语句与练习题
  7. PDF怎么转Word?简单几步轻松操作
  8. 【S - Making the Grade】
  9. 木框木字的制作——盗墓笔记
  10. C语言链表学生成绩制作成链表,C语言程序设计课程设计基于链表的学生成绩管理系统.doc...