MSP430F5438点亮led
今天只是想点亮一个led灯,因为没有视频,搞得很多的东西都是自己摸,下午本来讲和咨询店家,TMD说好给一点技术支持,结果一点也不给,我真想草泥马了,其实代码早就写出来了,只是哥哥不知道这款开发板还有接一下外部的电源,这个是我始料未及的,导致最后回到最初的起点,一点一点的看电路图,这里我把今天的程序小结一下!!!
点亮一个led灯
首先看电路图:
这个电路图是关键,理解,首先必须要打开VCC,这个是我今天犯错的最主要的原因,因为我开始以为开发板上的电源是自动接上的,导致程序调试了一上午,没有成功
之后看VCC,也就是标号1,搜索一下VCC的引脚
也就是要控制P5.4口输出一个高电平
代码:
put_P5DIR_BIT4(1);//引脚为输出引脚
put_P5_OUT_BIT4(1);//打开外部电源
接下来看标号2
标号2是一个led_PWR,注意这里是一个控制输出一个0,就可以导通三极管,
在电路图上搜索一下led_PWR,这里出现如图管脚
这里显示的是LED PWR是第P7.3管脚,即P7.3只需要输出一个低信号就可以了
示例代码:
put_P7DIR_BIT3(1);//引脚为输出引脚
put_P7_OUT_BIT3(0);//导通三极管
之后在电路图中搜索DIG1,由电路图可以知道,DIG1必须是一个低电平
这里可以看到DIG1控制引脚是P9.0,所以,点亮一个数码管现在很容易了
put_P9DIR_BIT0(1);//设置端口为输出端口
put_P9OUT_BIT0(0);//导通二级管
示例代码:
- #include<msp430x54x.h>
- #include"for_5438_wjx.c"//头文件
- void main( void )
- {
- // Stop watchdog timer to prevent time out reset
- WDTCTL = WDTPW + WDTHOLD;//关闭看门狗
- put_P5DIR_BIT4(); // 主电源 P5.4
- put_P5OUT_BIT4(); //打开外设电源
- put_P9SEL_BIT0();//设置P9.0为普通I/O
- put_P9DIR_BIT0();//设置P9.0为输出
- put_P7SEL_BIT3();//开发板上7.3口是lcd的电源,设置P7.3为普通I/O
- put_P7DIR_BIT3();//设置P7.3为输出
- put_P7OUT_BIT3();//给lcd供电
- put_P9OUT_BIT0();//点亮led数码管
- while();
- }
总结一下最近所学的,将led以5毫秒的频率流水灯闪烁
- #include<msp430x54x.h>
- #include"for_5438_wjx.c"
- #include"PIN_DEF.h"
- #define CPU_F ((double)8000000)
- #define delay_us(x) __delay_cycles((long)(CPU_F*(double)x/1000000.0))
- #define delay_ms(x) __delay_cycles((long)(CPU_F*(double)x/1000.0))
- unsigned char table1[]={0x0e,0x0d,0x0b,0x07};
- unsigned char table2[]={0xe0,0xd0,0xb0,0x70};
- void main( void )
- {
- // Stop watchdog timer to prevent time out reset
- unsigned i,j;
- WDTCTL = WDTPW + WDTHOLD;//关闭看门狗
- put_P5DIR_BIT4(); // 主电源 P5.4
- put_P5OUT_BIT4(); //打开外设电源
- put_P9SEL(0x0); //设置P9.0到P9.3为普通I/O
- put_P9DIR(0x0f); //设置P9.0到P9.3为输出
- put_P1SEL(0x0); //设置P1.4到P1.7为普通I/O
- put_P1DIR(0xf0); //设置P1.4到P1.7为输出
- put_P1OUT(0xf0); //关闭led显示
- put_P7SEL_BIT3(); //开发板上7.3口是lcd的电源,设置P7.3为普通I/O
- put_P7DIR_BIT3(); //设置P7.3为输出
- put_P7OUT_BIT3(); //给lcd供电
- F:
- for(i=;i<;i++)
- {
- put_P9OUT(table1[i]); //点亮led数码管
- delay_ms();
- }
- put_P9OUT(0x0f);
- for(j=;j<;j++)
- {
- put_P1OUT(table2[j]);
- delay_ms();
- }
- put_P1OUT(0xf0);
- goto F;
- }
版权所有,转载请注明链接地址:http://www.cnblogs.com/fengdashen/p/3391914.html
MSP430F5438点亮led的更多相关文章
- Arduino 极速入门系列–1 点亮 LED
本篇内容为,使用 Arduino 点亮 LED 的做法示范.很简单的一个入门示范.我们让 LED 闪. 本篇使用到的工具和材料 Arduino Mini Pro 1 PCS Mini USB 数据线 ...
- STM32学习笔记——点亮LED
STM32学习笔记——点亮LED 本人学习STM32是直接通过操作stm32的寄存器,使用的开发板是野火ISO-V2版本: 先简单的介绍一下stm32的GPIO: stm32的GPIO有多种模式: 1 ...
- STM32F407第一步之点亮LED
STM32F407第一步之点亮LED. 要点亮LED,首先了解一下F4的GPIO模块.首先看一下STM32F4数据手册,GPIO模块的内部结构图 看上去有点复杂,不要怕,慢慢理解就可以了.对外引脚那里 ...
- ARM学习篇一 点亮LED
要点亮LED,先决条件是什么,当然得有相应的硬件设施.板子的整个电路图比较大,我就直接取相关部分. 给发光二级管加上3.3v电压后,通过1k电阻,直接与S3C2440连接.至于为什么要加电阻,大家应该 ...
- zigbee学习之路(二)点亮LED
一.前言 今天,我来教大家如何点亮led,这也是学习开发板最基础的步骤了. 二.原理分析 cc2530芯片跟虽然是51的内核,但是它跟51单片机还是有区别的,51单片机不需要对IO口进行配置,而cc2 ...
- JZ2440开发笔记(5)——通过按键点亮LED
在JZ2440中,点亮LED就是给LED的控制位设置为输出,数据位设置为低电平,而通过按键点亮LED,就需要将按键对应的控制位设置为输出. 下面是JZ2440的3个LED电路图: 下面是JZ2440的 ...
- 【蓝牙低功耗BLE】控制GPIO来点亮LED
这节讲一下最简单的,也是最基础的东西.CC2540的IO操作,把PORT口当做GPIO来用,废话不多说,往下看. 1.硬件电路 硬件电路时最简单的,用一根GPIO去控制LED灯.因为GPIO作为out ...
- arm-点亮led灯
点亮指路灯:学习四环节:led原理图分析,芯片手册导读,思维导图设计,为什么要使用led:通常led是作为程序调试的重要手段.led原理图:led实质为发光二极管,当其两端电压一定时,即处于导通状态. ...
- 第二章之S5PV210在BL1中点亮LED灯
1,u-boot中第一个入口在./arch/arm/cpu/armv7/start.S 翻到153行:如下图 前面都是进行一些基本设置,不用管. cpu_init_cp15设置协处理器, cpu_in ...
随机推荐
- eclipse中切换jre后报错:Java compiler level does not match the version of the installed Java project facet.
项目移除原来的jre环境lib后,添加本地的jre,报错如下: Java compiler level does not match the version of the installed Java ...
- cf 283A
不能简单模拟(会超时) 运用一点小技巧 减少时间复杂度 #include <cstdio> #include <cstring> using namespace std; ...
- 论反馈信息如何推动 IT 运维团队进步?
我们还记得<快乐大本营>中经典游戏----快乐传真吗?游戏规则是:很多人站一排,只有第一个人才看到最准确的信息,用东西隔着,戴耳机,一一将从前一个人获得的信息传递下去,最后一个人说出推测的 ...
- hdu 4678 Mine 博弈论
这是一题简单的博弈论!! 所有的空白+边界的数字(个数为n)为一堆,容易推出其SG函数值为n%2+1: 其他所有的数字(个数为m)的SG值为m%2. 再就是用dfs将空白部分搜一下即可!(注意细节) ...
- Mybatis代码生成器 xml配置文件 连接SQL SERVER 2005
<?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE generatorConfiguratio ...
- IntelliJ Idea12 破解码与中文乱码配置
user name:JavaDeveloper serial number:92547-KY2BB-QZ0S1-PEZCV-HUT8Q-6RYY4 会出现Ok可以点击就会将软件 安装后, ...
- coco2d-js 多屏适配相关API
setDesignResolutionSize() //设计分辨率大小及模式 setContentScaleFactor() //内容缩放因子 setSearchPaths() //资源搜索路径 g ...
- POJ1265——Area(Pick定理+多边形面积)
Area DescriptionBeing well known for its highly innovative products, Merck would definitely be a goo ...
- Cobalt Strike
http://www.77169.com/hack/201512/222080.shtm
- SSH应该使用密钥还是密码?
关于SSH,几乎每个人都同意密钥要优于密码,更安全,并且更先进,但我并不同意这个观点. 虽然密钥的确可以更好,但它有着还没被意识到的严重风险,并且我认为比得到妥善管理的密码更不安全. 通常密钥更好的理 ...