摘要: 1 #include "msp430g2553.h" 2 3 typedef unsigned char uchar; 4 typedef unsigned int uint; 5 6 #define LED BIT0 7 #define TXD BIT1 // TXD on P1.1 8 #define RXD BIT2 // RXD on P1.2 9 #define POUT P1OUT 10 11 #define BITT... 阅读全文
posted @ 2012-08-18 16:22 sky1991 阅读(648) 评论(3) 推荐(0) 编辑
摘要: /*************************************************** * LCD1602显示* cpu:AVRmega16** 描述:4线数据宽度,操作Lcd1602* 在LCD1602屏幕上第一行显示 www.goodmcu.cn * 第二行显示 13652037001* 如果没有显示请按复位键,并多试几次** 时间:2008年1月5日调试成功(出现问题主要是因为LCD第3脚V0的2K接地电阻没有接好)* www.goodmcu.cn** 硬件电路:MSP430F135核心实验板-I型* 硬件连接: * * MSP430与LCD连接信息 * LCD1602 阅读全文
posted @ 2012-08-18 15:54 sky1991 阅读(846) 评论(0) 推荐(0) 编辑
摘要: //******************************************************************************// 测试MSP430单片机向FLASH中写入操作// // 描述; 每次掉电或复位后都能看到数码管上显示的数值增1,说明对flash的写入与读取成功//// 注意:修改flash中的内容必须首先执行擦除操作,// 因为对FLASH的操作只能将1写成0,而不能将0写成1只有擦除才能将0写回1// 擦除操作至少将擦除1个段//// 如果使用其它型号的单片机,只需将头文件改为相应的<msp430xx.h>;// 并在Option 阅读全文
posted @ 2012-08-18 15:52 sky1991 阅读(530) 评论(0) 推荐(0) 编辑
摘要: 一、MSP430单片机FLASH存储器模块特点1.8~3.6V工作电压,2.7~3.6V编程电压;擦除/编程次数可达100000次:数据保持时间从10年到100年不等:60KB空间编程时间<5秒:保密熔丝烧断后不可恢复,不能再对JTAG进行任何访问;FLASH编程/擦除时间由内部硬件控制,无任何软件干预;二、FLASH存储器的操作由于FLASH存储器由很多相对独立的段组成,因此可在一个段中运行程序,而对另一个段进行擦除或写入操作。正在执行编程或擦除等操作的FLASH段是不能被访问的,因为这时该段是与片内地址总线暂时断开的。对FLASH模块的操作可分为3类:擦除、写入及读出。而擦除又可分为 阅读全文
posted @ 2012-08-18 15:49 sky1991 阅读(1964) 评论(0) 推荐(0) 编辑
摘要: //******************************************************************************// D13x 实例4 - 12位AD转换//// 描述:系统处于休眠状态LPM0// 如果AD采样值大于等于7FF小灯点亮;如果小于7FF小灯熄灭。// ACLK= n/a, MCLK= SMCLK= default DCO ~ 800k//// MSP430F13x// -------------------// /|\| XIN|- // | | | 32kHz// --|RST XOUT|-// | |// Vin-->| 阅读全文
posted @ 2012-08-18 15:46 sky1991 阅读(796) 评论(0) 推荐(0) 编辑
摘要: 一、ADC12转换模式ADC12提供4种转换模式:单通道单次转换对选定的通道进行单次转换要进行如下设置:x=CSStartAdd,指向转换开始地址ADC12MEMx存放转换结果ADC12IFG.x为对应的中断标志ADC12MCTLx寄存器中定义了通道和参考电压转换完成时必须使ENC再次复位并置位(上升沿),以准备下一次转换。在ENC复位并再次置位之前的输入信号将被忽略。序列通道单次转换对序列通道进行单次转换要进行如下设置:x=CSStartAdd,指示转换开始地址EOS(ADC12MCTLx.7)=1标志序列中最后通道y,非最后通道的EOS位都是0,表示序列没有结束。ADC12MEMx,... 阅读全文
posted @ 2012-08-18 15:44 sky1991 阅读(1376) 评论(0) 推荐(0) 编辑
摘要: //*******************************************************************************// D13x Demo - 利用Timer_A及中断实现RTC,观察LED灯的闪烁频率//// 描述:利用Timer_A及中断实现RTC;通过 P1 异或 来取反 P1.5;// 系统处于休眠状态LPM3,中断时唤醒执行P1.5切换// ACLK= n/a, MCLK= SMCLK= default DCO ~ 800k//// MSP430F13x// -------------------// /|\| XIN|- // | | 阅读全文
posted @ 2012-08-18 15:42 sky1991 阅读(371) 评论(0) 推荐(0) 编辑
摘要: //*******************************************************************************// D13x Demo - 在上一节基础上改变系统时钟,观察LED灯的闪烁频率//// 描述:通过改变系统时钟,来改变闪烁频率;通过 P1 异或 来取反 P1.5;软件循环延时// ACLK= n/a, MCLK= SMCLK= default DCO ~ 800k//// MSP430F13x// -----------------// /|\| XIN|- // | | |// --|RST XOUT|-// | |// | P 阅读全文
posted @ 2012-08-18 15:41 sky1991 阅读(447) 评论(0) 推荐(0) 编辑
摘要: CPU内状态寄存器SR中的SCG1、SCG2、OscOff和CPUOff位是重要的低功耗控制位。只要任意中断被响应,上述控制位就被压入堆栈保存,中断处理之后,又可以恢复先前的工作方式。在中断处理子程序执行期间,通过间接访问堆栈数据,可以操作这些位;这样允许程序在中断返回(RETI)后,以另一种功耗方式继续运行。各控制位作用如下:SCG1:当SCG1复位时,使能SMCLK;SCG1置位则禁止SMCLK。SCG0:当SCG0复位时,直流发生器被激活,只有SCG0被置位且DCOCLK信号没有用于MCLK或SMCLK,直流发生器才能被禁止。OscOff:当OscOff复位时,LFXT晶体振荡器激活,只 阅读全文
posted @ 2012-08-18 15:38 sky1991 阅读(517) 评论(0) 推荐(0) 编辑
摘要: 一、时钟源种类LFXT1CLK低频时钟源——MSP430每一种器件都有XT2CLK高频时钟源——存在于X13X、X14X、X15X、X16X、X43X、X44X等DCOCLK数字控制RC振荡器二、时钟源说明ACLK辅助时钟:ACLK是LFXT1CLK(低频时钟源)信号经过1、2、4、8分频得到的。ACLK可由软件选为各个外围模块的时钟信号,一般用于低速外设。MCLK系统主时钟:MCLK可由软件选择来自LFXT1CLK(低频时钟源)、XT2CLK(高频时钟源)、DCOCLK(数字控制RC振荡器)三者之一,然后经过1、2、4、8分频得到。MCLK主要用于CPU和系统。SMCLK子系统时钟:可由软件 阅读全文
posted @ 2012-08-18 15:37 sky1991 阅读(616) 评论(0) 推荐(0) 编辑
摘要: 定时器A是一个16位的定时/计数器。它有3个捕获/比较寄存器;能支持多个时序控制、多个捕获/比较功能和多个PWM输出;有广泛的中断功能,中断可由计数器溢出产生,也可以由捕获/比较寄存器产生。一、TimerA的4种工作模式1.停止模式用于定时器暂停,并不发生复位,所有寄存器现行的内容在停止模式结束后都可用。当定时器暂停后重新计数时,计数器将从暂停时的值开始以暂停前的计数方向计数。2.增计数模式捕获/比较寄存器CCR0用作Timer_A增计数模式的周期寄存器。因为CCR0为16位寄存器,所以该模式适用于定时器周期小于65536的连续计数情况。计数器TAR可以增计数到CCR0的值,当计数值与CCR0 阅读全文
posted @ 2012-08-18 15:34 sky1991 阅读(709) 评论(0) 推荐(0) 编辑