📄 main.c
字号:
#include <msp430x16x.h>
#include "uart.c"
#include "ds18b20.c"
#include "DS18B20_PORTS.h"
void main(void)
{
volatile unsigned int i;
unsigned char Value[3];
WDTCTL = WDTPW + WDTHOLD; // Stop WDT
BCSCTL1 &= ~XT2OFF; // XT2= HF XTAL
do
{
IFG1 &= ~OFIFG; // Clear OSCFault flag
for (i = 0xFF; i > 0; i--); // Time for flag to set
}
while ((IFG1 & OFIFG)); // OSCFault flag still set?
BCSCTL2 |= SELM_2 + SELS ; // SMCLK = MCLK= XT2 (safe) = 4M
P5DIR |= 0x70; // Set P5.456 to output direction
P5OUT |= 0x70;
init_UART(); //初始化UART1
_EINT(); //开中断,允许接收中断
uart_TBuf[0] = 'b' ; //如果UART空闲,发送数据
uart_TBuf[1] = 'g' ; //如果UART空闲,发送数据
uart_TBuf[2] = 'n' ; //如果UART空闲,发送数据
uart_Start();
while(1)
{
Value[0]=Value[1]=Value[2]=0;
DS18B20_Single_Read_Temperature ( Value);
P5OUT ^= 0x70; // Toggle P5.456 using exclusive-OR
uart_TBuf[0] = Value[0] ; //如果UART空闲,发送数据
uart_TBuf[1] = Value[1] ; //如果UART空闲,发送数据
uart_TBuf[2] = Value[2] ; //如果UART空闲,发送数据
uart_Start(); // 开启uart发送
Soft_Delay_s(5);
uart_TBuf[0] = 'A' ; //如果UART空闲,发送数据
uart_TBuf[1] = 'G' ; //如果UART空闲,发送数据
uart_TBuf[2] = 'N' ; //如果UART空闲,发送数据
uart_Start();
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -