• 大小: 34KB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2021-06-15
  • 语言: 其他
  • 标签: MSP430  频率测量  

资源简介

该代码利用MSP430单片机测量信号的频率,测量频率范围广,精度高,可作为建简易的频率计。

资源截图

代码片段和文件信息


#include“msp430f449.h“
#define uint unsigned int 
#define uchar unsigned char

#define CS_H (P2DIR|=BIT0P2OUT|=BIT0) //这里定义了p2.0输出高电平
#define CS_L (P2DIR|=BIT0P2OUT&=~BIT0)//同上
#define SID_H (P2DIR|=BIT2P2OUT|=BIT2)
#define SID_L (P2DIR|=BIT2P2OUT&=~BIT2)
#define SCLK_H (P2DIR|=BIT4P2OUT|=BIT4)
#define SCLK_L (P2DIR|=BIT4P2OUT&=~BIT4)

void delay_1ms(uint x) 

  uint ij; 
  for(j=0;j   for(i=0;i<110;i++); 
}

void send_command(uchar command_data) 

 uchar i; 
 uchar i_data;
 i_data=0xf8; //首先把它给lcd
 CS_H;  //模组片选,高电平有效
 SCLK_L; //初始化为低,上升沿触发接收sid串行数据
 /*****************************************/
 for(i=0;i<8;i++) 
 { 
    if(i_data&0x80)
      SID_H;
    else
      SID_L;
    SCLK_L;                   
    SCLK_H; 
    i_data=i_data<<1; 
 } 
 
 /****************************************/
  i_data=command_data; 
  i_data&=0xf0;//屏蔽低四位
  for(i=0;i<8;i++) 
   { 
    if(i_data&0x80)
       SID_H;
    else
       SID_L;
    SCLK_L; 
    SCLK_H; 
    i_data=i_data<<1; 
   } 
/****************************************/
   i_data=command_data; 
   i_data<<=4;
   for(i=0;i<8;i++) 
    { 
     if(i_data&0x80)
       SID_H;
     else
       SID_L;
     SCLK_L; 
     SCLK_H; 
     i_data=i_data<<1; 
     } 
/*****************************************/
   CS_L; //关闭lcd 
   delay_1ms(1);//延时

void send_data(uchar command_data) 

 uchar i; 
 uchar i_data;
 i_data=0xfa;  
 CS_H; 
  for(i=0;i<8;i++) 
     { 
      if(i_data&0x80)
        SID_H;
      else
        SID_L;
     SCLK_L; 
     SCLK_H; 
     i_data=i_data<<1;  
     } 
/*****************************************/
  i_data=command_data; 
  i_data&=0xf0; 
  for(i=0;i<8;i++) 
    { 
     if(i_data&0x80)
        SID_H;
     else
        SID_L;
     SCLK_L; 
     SCLK_H; 
     i_data=i_data<<1; 
     } 
/****************************************/
    i_data=command_data;
    i_data<<=4; 
    for(i=0;i<8;i++) 
     { 
       if(i_data&0x80)
         SID_H;
       else
         SID_L;
       SCLK_L; 
       SCLK_H; 
       i_data=i_data<<1; 
      }
/************************************/
  CS_L; //关闭lcd 
  delay_1ms(1);  
}
  
 
void lcd_init() 

 delay_1ms(100); //延时100ms
 send_command(0x30); /*设置8位数据接口,基本指令模式。*/ 
 send_command(0x02); /*清DDRAM*/ 
 send_command(0x06); /*游标及显示右移一位*/  
 send_command(0x0c); /*整体显示开,游标关,反白关*/ 
 send_command(0x01); /*写入空格清屏幕*/ 
 send_command(0x80); /*设定首次显示位置*/ 

 
}
/******在特定位置显示一个字符*********/
void Display_char(uint xuint yuint c)
{
  uint i=0j=0;
  if(y==0)
  {
    send_command(0x80);
 /*   for(i=0;i     send_data(‘ ‘);*/
    send_data(c);
    for(j=x;j<15;j++)
     send_data(‘ ‘);
   }
  if(y==1)
  {
    send_command(0x90);
 //   for(i=0;i   //  send_data(‘ ‘);
    send_data(c);
    for(j=x;j<15;j++)
     send_data(‘ ‘);
   }
}
/******在特定位置显示一个字符串*********/
void Display_string(uint xuin

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件      26803  2012-11-29 18:56  频率补偿\测频\Debug\Exe\freq2.d43

     文件        216  2012-11-29 18:57  频率补偿\测频\Debug\Obj\freq2.pbd

     文件      50928  2012-11-29 18:56  频率补偿\测频\Debug\Obj\main.r43

     文件       5815  2012-11-29 18:56  频率补偿\测频\Debug\Obj\time.r43

     文件       4022  2012-11-29 19:29  频率补偿\测频\freq2.dep

     文件      20123  2012-11-25 15:45  频率补偿\测频\freq2.ewd

     文件      52267  2012-11-27 20:00  频率补偿\测频\freq2.ewp

     文件        159  2012-11-25 15:45  频率补偿\测频\freq2.ewp.eww

     文件       4046  2012-11-29 13:23  频率补偿\测频\lcd.c

     文件       3634  2012-11-29 18:16  频率补偿\测频\main.c

     文件          0  2012-11-29 18:59  频率补偿\测频\path.txt

     文件       1110  2012-11-29 18:57  频率补偿\测频\settings\freq2.cspy.bat

     文件       5573  2012-11-29 19:29  频率补偿\测频\settings\freq2.dbgdt

     文件       1265  2012-11-29 19:29  频率补偿\测频\settings\freq2.dni

     文件       4159  2012-11-29 19:29  频率补偿\测频\settings\freq2.ewp.wsdt

     文件        809  2012-11-29 18:56  频率补偿\测频\time.c

     文件         53  2012-11-25 15:29  频率补偿\测频\time.h

     目录          0  2012-11-28 13:07  频率补偿\测频\Debug\Exe

     目录          0  2012-11-25 13:28  频率补偿\测频\Debug\List

     目录          0  2012-11-29 19:29  频率补偿\测频\Debug\Obj

     目录          0  2012-11-25 13:28  频率补偿\测频\Debug

     目录          0  2012-11-25 17:41  频率补偿\测频\settings

     目录          0  2012-11-29 18:57  频率补偿\测频

     目录          0  2012-11-29 20:22  频率补偿

----------- ---------  ---------- -----  ----

               180982                    24


评论

共有 条评论