-
大小: 68KB文件类型: .rar金币: 1下载: 0 次发布日期: 2021-06-14
- 语言: 其他
- 标签: msp430g2553 12864
资源简介
msp430G2553测各种波形的频率和幅度并显示在lcd12864上
代码片段和文件信息
#include “msp430g2553.h“
#include “stdio.h“
#define uint unsigned int
#define uchar unsigned char
#define ulint unsigned long int
unsigned long data;//频率
double TA_OverflowCnt=0;//溢出次数
float adc_sample=0;
float adc_max=0;
float effective_value=0;
void init_TA();
void init_adc();
void cal_max();
void delay(uint t);
void delay1(void);
void int_430(void);
void sendbyte(uchar zdata);
void write_com(uchar cmdcode);
void write_data(uchar Dispdata);
void lcdinit();
void print_string( char *s);
void display_fre(void);
void display_range(void);
void display_effective_value(void);
void main()
{ init_TA();
init_adc();
int_430();
lcdinit();
while(1)
{
cal_max();
display_fre();
display_range();
//display_effective_value();
delay1();
}
}
void init_TA()
{
P1SEL |= BIT0; //选取管脚第二功能
P1DIR &=~ BIT0; //p1.0置为输入
TA1CCR0=65535;//定时1s
TACCR0=65535;
TA1CTL |= TASSEL_2 + ID_3 + MC_1 + TAIE + TACLR;//P1.1 SMCLK作为时钟,8分频,增计数,中断使能初始置0
TA0CTL = TASSEL_0 + TACLR + TAIE + MC_2;//P1.0 外部输入时钟,中断使能,初始清零,连续计数
TA0CCTL0 |= CCIE;//使能捕获
TA1CCTL0 |= CCIE;
_EINT(); //打开全局中断
}
void init_adc()
{
ADC10CTL1 |= CONSEQ_2;//单通道重复采样模式
//ADC10CTL0 |= SREF_0+REFON+REF2_5V;//选择内部参考电源,打开基准源,参考电压设置为VCC 3.3V
ADC10CTL0 |= SREF_0;
ADC10CTL0 |= ADC10SHT_0+MSC;//过采样率设置为4个采样周期
ADC10CTL1|= ADC10SSEL_3+ADC10DIV_1+SHS_0;//采样时钟为SMCLK,二分频
ADC10CTL1 |=INCH_1;//选择采样通道A1
ADC10CTL0 |= ADC10ON;//开启ADC10
ADC10AE0 |= 0x02;//开启外部采样通道
}
void cal_max()
{
adc_max=0;
adc_sample=0;
unsigned int i;
for(i=0;i<65635;i++)
{
ADC10CTL0 |=ENC+ADC10SC; //开始转换
while((ADC10CTL0 &ADC10IFG)==0); //等待ADC10IFG标志变高(转换完成)
adc_sample=(((float)ADC10MEM) *4.096) /1023; //读取采样结果
if(adc_max < adc_sample)
{
adc_max=adc_sample;
}
//effective_value=adc_max/1.414;
display_fre();
display_range();
//display_effective_value();
delay1();
}
}
/*************延时函数************/
void delay(uint t)
{
uint ij;
for(i=0;i for(j=0;j<10;j++);
}
//1s延时的计数闸门
void delay1(void)
{
unsigned long i;
for(i=0;i<11900;i++)
{
_NOP(); // 该函数用来产生一个 MSP430 系统时钟周期的延时
}
}
void int_430(void)
{
P1SEL&=~BIT6;//输出高电平,充当电源
P1SEL&=~BIT7;
P1DIR|= BIT6;
P1DIR|= BIT7;
P1OUT|=BIT6;
P1OUT|=BIT7;
WDTCTL=WDTPW+WDTHOLD; // 关闭看门狗
P1SEL&=~BIT4;
P1DIR|= BIT4;
P1OUT&=~BIT4;
P1SEL&=~BIT5;
P1DIR|= BIT5;
P1OUT&=~BIT5;
}
/*************数据传送函数************/
void sendbyte(uchar zdata)
{
uchar code_seg7serial_clk serial_shift;
code_seg7=zdata;
serial_shift=0x80;
for(serial_clk=0; serial_clk<8; serial_clk++)
{
if(code_seg7&serial_shift)
{
P1OUT|=BIT4; //SID为1
}
else
{
P1OUT&=~BIT4; //SID为0
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 612 2019-05-16 17:24 aaaa\.ccsproject
文件 24143 2019-05-16 17:24 aaaa\.cproject
文件 5358 2019-05-21 18:08 aaaa\.launches\aaaa.launch
文件 834 2019-05-16 17:23 aaaa\.project
文件 62 2019-05-16 17:23 aaaa\.settings\org.eclipse.cdt.codan.core.prefs
文件 123 2019-05-16 17:24 aaaa\.settings\org.eclipse.cdt.debug.core.prefs
文件 208 2019-05-16 17:24 aaaa\.settings\org.eclipse.core.resources.prefs
文件 39192 2019-05-22 16:45 aaaa\Debug\aaaa.map
文件 100896 2019-05-22 16:45 aaaa\Debug\aaaa.out
文件 251248 2019-05-22 16:45 aaaa\Debug\aaaa_li
文件 47 2019-05-22 20:41 aaaa\Debug\ccsObjs.opt
文件 1713 2019-05-22 16:45 aaaa\Debug\main.d
文件 47824 2019-05-22 16:45 aaaa\Debug\main.obj
文件 4156 2019-05-22 20:41 aaaa\Debug\makefile
文件 248 2019-05-19 22:03 aaaa\Debug\ob
文件 2073 2019-05-22 20:41 aaaa\Debug\sources.mk
文件 945 2019-05-22 20:41 aaaa\Debug\subdir_rules.mk
文件 530 2019-05-22 20:41 aaaa\Debug\subdir_vars.mk
文件 8984 2019-05-18 10:53 aaaa\lnk_msp430g2253.cmd
文件 8441 2019-05-22 16:45 aaaa\main.c
文件 822 2019-05-16 17:24 aaaa\targetConfigs\MSP430G2253.ccxm
文件 806 2019-05-16 17:24 aaaa\targetConfigs\readme.txt
目录 0 2019-05-18 11:42 aaaa\.launches
目录 0 2019-05-16 17:24 aaaa\.settings
目录 0 2019-05-22 16:45 aaaa\Debug
目录 0 2019-05-16 17:24 aaaa\targetConfigs
目录 0 2019-05-18 11:42 aaaa
----------- --------- ---------- ----- ----
499265 27
............此处省略0个文件信息
相关资源
- 基于proteus仿真的LCD12864的驱动程序
- LCD12864仿真
- STC12单片机运用LTC1865AD转换 含12864液晶
- 基于proteus仿真单片机贪吃蛇程序在
- msp430g2553温度光照强度的测试与无线传
- 利用AT89C51对LCD12864的控制
- 基于12864LCD的波形显示系统的研制
- LCD12864中文资料带汉字库
- LCD12864(KS0108) C51程序
- 合泰单片机 双通道ad+两路pwm+oled128
- 单片机GPS接收LCD12864显示Keil程序
- msp430g2553和LCD12864的串行显示代码
- 基于单片机和LCD12864的简易计算器
- ST7565驱动12864驱动程序调试成功的
- 12864DDRAM入门
- 基于单片机万年历+温度+LCD12864 prote
- protues中AMPIRE12864液晶数据手册及程序
- Verilog HDL编写的FPGA LCD12864液晶显示代
- LCD12864汉字显示原理图及程序
- FPGA 12864驱动
- 带中文字库的12864LCD显示程序
- 51单片机驱动DS1302时间模块+DS18B20温度
- lcd12864字库生成软件
- 基于LPC2366的LCD12864-5液晶驱动程序
- msp430G25532 程序代码全
- 51单片机DHT11温湿度传感器12864显示
- LTC1864_12864数字电压表16位精度
- G2553 12864的程序
- 12864_ST7656
- MSP430单片机驱动12864动态显示文字图片
评论
共有 条评论