MSP430单片机无线温度接收系统的设计

发布者:AngelicGrace最新更新时间:2020-11-26 来源: elecfans关键字:MSP430  单片机 手机看文章 扫描二维码
随时随地手机看文章

#include

#defineucharunsignedchar

#defineuintunsignedint

uchardN[6];//要显示的6位温度数字

ucharscandata[16]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,

0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};//数码管七段码;0--f

ucharcnt=0;//数码管位选变量

ucharThermometer[1];//温度全局变量

MSP430单片机无线温度接收系统的设计

intThermometer_1;

voidinit_clock(void);//时钟模块初始化

voidinit_watchdog(void);//看门狗初始化

voidinit_codeDisplay(void);//数码管初始化

voidinit_sci(void);//串口初始化

/*******************************************

函数名称:init_all

功能:总初始化

参数:无

返回值:无

********************************************/

voidinit_all(void)

{

WDTCTL=WDTPW+WDTHOLD;//禁止看门狗

init_clock();//总线时钟初始化-MSP430为锁频环

init_watchdog();//看门狗模块初始化

init_sci();//串口初始化

init_codeDisplay();//数码管初始化

}

/****************主函数****************/

voidmain(void)

{

init_all();//主初始化程序

while(1);//后台等待

}

/*******************************************

函数名称:init_clock

功能:系统时钟初始化

参数:无

返回值:无

********************************************/

voidinit_clock(void)

{

uchari;

/*------选择系统主时钟为8MHz-------*/

BCSCTL1&=~XT2OFF;//打开XT2高频晶体振荡器

do

{

IFG1&=~OFIFG;//清除晶振失败标志

for(i=0xFF;i》0;i--);//等待8MHz晶体起振

}

while((IFG1&OFIFG));//晶振失效标志仍然存在?

BCSCTL2|=SELM_2+SELS;//MCLK和SMCLK选择高频晶振

}

/*******************************************

函数名称:init_watchdog

功能:看门狗初始化

参数:无

返回值:无

********************************************/

voidinit_watchdog(void)

{

//设置看门狗定时器,初始化控制数码管的IO

WDTCTL=WDT_ADLY_1_9;

IE1|=WDTIE;

//计数时钟选择SMLK=8MHz,1/8分频后为1MHz

TACTL|=TASSEL_2+ID_3;

//打开全局中断

_EINT();

}

/*******************************************

函数名称:init_sci

功能:串口初始化

参数:无

返回值:无

********************************************/

voidinit_sci(void)

{

P3SEL|=0x30;//P3.4,5=USART0TXD/RXD

ME1|=UTXE0+URXE0;//EnableUSART0TXD/RXD

UCTL0|=CHAR;//8-bitcharacter

UTCTL0|=SSEL1;//UCLK=SMCLK

/*8M/9600=833833=0x03410.000*8=0*/

UBR00=0x41;

UBR10=0x03;

UMCTL0=0x00;

/*UBR00=0x45;//8MHz115200

UBR10=0x00;//8MHz115200

UMCTL0=0x00;*///8MHz115200modulaTIon

UCTL0&=~SWRST;//IniTIalizeUSARTstatemachine

IE1|=URXIE0;//EnableUSART0RXinterrupt

_BIS_SR(GIE);//EnterLPM0w/interrupt

}

/*******************************************

函数名称:init_codeDisplay

功能:数码管显示初始化

参数:无

返回值:无

********************************************/

voidinit_codeDisplay(void)

{

P4DIR=0xff;

P5DIR = 0xff;

关键字:MSP430  单片机 引用地址:MSP430单片机无线温度接收系统的设计

上一篇:MSP430单片机对步进电机的驱动控制设计
下一篇:MSP430单片机的比较器工作原理解析

推荐阅读最新更新时间:2024-11-05 22:53

单片机的ISP在线编程设计
  随着电子技术的日益发展,芯片的规模越来越大,封装日趋小型化,相应地对系统板级调试的困难也在加大。在传统的调试方式中,频繁的调试和更换程序需要频繁地插拔芯片,开发效率极低。AT89S系列单片机提供的ISP在线编程技术彻底地改变了传统的开发模式,开发单片机系统时不会损坏芯片的引脚,加速了产品的上市并降低了研发成本,缩短了从设计、制造到现场调试的时间,简化了生产流程,大大提高了工作效率,因此它是对市场定型产品进行现场升级和维护的经济、有效的方式,极大地促进了PLD产品的发展。 1 PC机并行口 1.1 并行口硬件接口简介   标准并行口有25个引脚,其中数据端口引脚为2~9,状态端口引脚为15、10~13,控制端口引脚1、14
[单片机]
<font color='red'>单片机</font>的ISP在线编程设计
基于C504单片机的变频调速系统
    摘要: 介绍了一种以C504专用芯片和智能功率模块IPM为基础的SPWM变频调速系统。它可以实现输出频率在0~60Hz和载波频率在500Hz~10kHz之间变化,有数条V/F曲线、启动时间、载波比和调制方式等选择功能,并具有多种保护功能和人机对话功能,对参数可随时调节。     关键词: C504芯片 SPWM 变频调速 捕捉/比较单元(CCU) 随着变频调速应用的日益广泛,相关技术的日益成熟,人们不仅对变频调速系统的性能要求越来越高,而且对控制芯片的功能要求越来越多,对功能开关元件的智能化要求越来越高,以满足生产的需求并适应不同的工作环境。为此,本文介绍了一种主电路采用智能模块IPM,控制芯片采用西
[传感技术]
物联网操作系统热潮来临,开路者庆科冷静对待
谷歌在今年的I/O大会上首次推出了名为 Brillo 的操作系统,基于Android底层框架,仅保留了Android系统的基础功能,支持低功耗蓝牙、Wi-Fi连接。再看国内,华为也于近日发布面向物联网的操作系统LiteOS,腾讯则是发布了TOS+智能硬件开放平台战略...... 这一系列的消息让上海庆科CEO王永虹很是兴奋,因为物联网操作系统终于得到了巨头们的重视。面对巨头们的虎视眈眈,王永虹则显示出非常乐观的心态: 得到巨头们的认可,证明我们这几年至少没有白忙活。大家都进入这一市场,未来才能更好。 与阿里共同发力智能领域 王永虹对笔者介绍了公司在近几年物联网浪潮中取得的成就。2012年庆科开始在家
[物联网]
如何选择合适的微处理器?选择微控制器的十个步骤
选择适合某个产品使用的微处理器是一项艰巨的任务。不仅要考虑许多技术因素,而且要考虑可能影响到项目成败的成本和交货时间等商业问题。 在项目刚启动时,人们经常压抑不住马上动手的欲望,在系统细节出台之前就准备微控制器选型了。这当然不是个好主意。 在微控制器方面做任何决策时,硬件和软件工程师首先应设计出系统的高层结构、框图和流程图,只有到那时才有足够的信息开始对微控制器选型进行合理的决策。此时遵循以下10个简单步骤可确保做出正确的选择。 步骤1:制作一份要求的硬件接口清单 利用大致的硬件框图制作出一份微控制器需要支持的所有外部接口清单。有两种常见的接口类型需要列出来。第一种是通信接口。 系统中一般会使用到USB、I2C、SPI、
[单片机]
如何选择合适的微处理器?选择<font color='red'>微控制器</font>的十个步骤
PIC单片机双机异步通信程序
pic单片机双机异步通信(dhd0) 1 单片机PIC1编程(发送部分) #include /*该程序实现单片机双机异步通信功能,该程序是发送部分*/ unsigned char tran ; /*定义一个数组存储发送数据*/ unsigned char k,data; /*定义通用寄存器*/ cONST char table ={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0XD8,0x80, 0x90,0x88,0x83,0xc6,0xa1,0x86,0x8e,0x7f,0xbf,0x89,0xff}; /*不带小数点的显示段码表*/ /*SPI显示初始化子程序*/ void S
[单片机]
MSP430 FLASH结构 InfoA(1080H-10FFh)和InfoB(1000H-10FFH)
Flash 存储器被分割成两部分: 主存储器和信息存储器, 两者在操作上没有什么 区别。两部分的区别在于段的大小和物理地址的不同 Flash 存储器被分割成两部分:主存储器和信息存储器,两者在操作上没有什么区别。两部分的区别在于段的大小和物理地址的不同。 每个主存储区和信息存储区由若干个段组成。举例Easy430f2132学习板上的主芯片2132来说,f2132由8KB+256Bflash的资源。 8K的flash是主存储区,专门用来存储代码或信息的。该存储区被划分为若干个段,每个段的大小为512B,可以推断,f2132共有8KB/512B=16段。 256B的信息段被划分为4个段,分别为A,B,C,D四个段,每段大
[单片机]
<font color='red'>MSP430</font> FLASH结构 InfoA(1080H-10FFh)和InfoB(1000H-10FFH)
低成本ARM 32位MCU,开发人员面临的两种选择
要使用低成本的 32位微控制器 ,开发人员面临两种选择,基于Cortex-M3内核或者ARM7TDMI内核的处理器。如何做出选择?选择标准又是什么?本文主要介绍了ARM Cortex-M3内核微控制器区别于ARM7的一些特点,帮助您快速选择。 1.ARM实现方法 ARM Cortex-M3是一种基于 ARM V7架构 的最新ARM嵌入式内核,它采用哈佛结构,使用分离的指令和数据总线(冯诺伊曼结构下,数据和指令共用一条总线)。从本质上来说,哈佛结构在物理上更为复杂,但是处理速度明显加快。根据摩尔定理,复杂性并不是一件非常重要的事,而吞吐量的增加却极具价值。 ARM公司对Cortex-M3的定位是:向专业嵌入式市场提供低
[单片机]
AVR单片机端口操作
说明:本节重点介绍真正双向端口操作的方法,及与伪双向端口操作的不同。跑马灯例子。建议先看跑马灯,再绕回来看前面的介绍。 AVR端口是真正的双向端口,不像51伪双向。这也是AVR的一项优势,只是操作时大家注意DDRn就可以了。真正双向端口在模拟时序方面不如伪双向的方便。 DDRn PORTn PINn 解释:n为端口号:ABCDE DDRn:控制端口是输入还是输出,0为输入,1为输出。个人记忆方法:一比零大所以往外挤,即1为输出,0为输入。 PORTn:从引脚输出信号,当DDRn为1时,可以通过PORTn=x等端口操作语句给引脚输出赋值。 PINn:从引脚读输入信号,无论DDRn为何值,都可以通过x=PINn获得端口n
[单片机]
小广播
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
随便看看

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved