-
大小: 34KB文件類型: .zip金幣: 2下載: 0 次發布日期: 2021-05-22
- 語言: 其他
- 標簽: msp430f149??FFT??1602??
資源簡介
本代碼實現了基于msp430f149的FFT算法,結果在1602液晶上顯示(頻譜總功率),本人已調試通過,限于149芯片的RAM目前只做了128點的FFT,移植到其他RAM更大的430或是其他處理器平臺上可以輕松實現512點、1024點等的FFT,采用模塊化編程,便于移植和修改!

代碼片段和文件信息
#include?“1602.h“
#define?DataPort?P4OUT ?????????????//?LCD1602數據接口
#define?CLR_RS?P5OUT&=~BIT5;?????????//?RS?=?P5.5
#define?SET_RS?P5OUT|=BIT5;
#define?CLR_RW?P5OUT&=~BIT6; ?????//?RW?=?P5.6
#define?SET_RW?P5OUT|=BIT6;
#define?CLR_EN?P5OUT&=~BIT7; ?????//?EN?=?P5.7
#define?SET_EN?P5OUT|=BIT7;
/*******************************************
*函數名稱:Write_Com
*功????能:向液晶模塊寫入命令
*參????數:com--命令,
*返回值??:無
********************************************/
void?Write_Com(uint8?com)?
{????
??Delay_Nms(1);
??CLR_EN;
??CLR_RS;
??CLR_RW;?
??nop;
??DataPort?=?com;????????????//將命令字寫入數據端口?
??nop;
??SET_EN;????????????????????//產生使能脈沖信號
??nop;
??nop;
??CLR_EN;
}
/*******************************************
*函數名稱:Write_Data
*功????能:向液晶顯示的當前地址寫入顯示數據
*參????數:data--顯示字符數據
*返回值??:無
********************************************/
void?Write_Data(uint8?dat)?
{
??Delay_Nms(1);
??SET_RS;
??CLR_RW;?
??nop;
??DataPort?=?dat;????????????//將顯示數據寫入數據端口
??nop;
??SET_EN;????????????????????//產生使能脈沖信號
??nop;?
??nop;?
??CLR_EN;
}
/*******************************************
*函數名稱:SET_XY
*功????能:向液晶輸入顯示字符位置的坐標信息
*參????數:x--位置的列坐標
*??????????y--位置的行坐標
*返回值??:無
********************************************/
void?SET_XY(uint8?x?uint8?y)?
{
??uint8?add;
??if?(x?==?0)?
??{
????add?=?0x80?+?y;
??}
??else?
??{
????add?=?0xc0?+?y;?//?0xc0?=?0x80?+?0x40
??}
??Write_Com(add);
}
/*******************************************
*函數名稱:Write_Char
*功????能:在某個位置顯示一個字符
*參????數:x--位置的列坐標
*??????????y--位置的行坐標
*??????????dat--顯示的字符數據
*返回值??:無
********************************************/
void?Write_Char(uint8?x?uint8?y?uint8?dat)?
{
??SET_XY(x?y);
??Write_Data(dat);
}
/*******************************************
*函數名稱:write_N_char
*功????能:讓液晶從某個位置起連續顯示N個字符
*參????數:x--位置的列坐標
*??????????y--位置的行坐標
*??????????n--字符個數
*??????????ptr--指向字符存放位置的指針
*返回值??:無
********************************************/
void?Write_N_Char(uint8?x?uint8?y?uint8?n?uint8?*pt)?
{
??uint8?i;
??for?(i=0;?i ??{
????Write_Char(x?y++?pt[i]);
????if?(y?==?0x10)
????{
??????y?=?0;?
??????x?^=?1;
????}
??}
}
/***********************************************
*函數名稱:Write_String
*功????能:讓液晶從某個位置起連續顯示一個字符串
*參????數:x--位置的列坐標
*??????????y--位置的行坐標
*??????????ptr--指向字符串存放位置的指針
*返回值??:無
***********************************************/
void?Write_String(uint8?x?uint8?y?uint8?*pt)?
{
??while(*pt?!=?‘\0‘)???
??{
????Write_Data(*(pt++));
??}
}
/***********************************************
*函數名稱:Write_Number
*功????能:讓液晶從某個位置起連續顯示數字
*參????數:x--位置的列坐標
*??????????y--位置的行坐標
*??????????dat--要顯示的數字
*返回值??:無
***********************************************/
void?Write_Number(uint8?x?uint8?y?uint16?dat)
{
??uint8?Temp[4];
??
??if?(dat?10000)
??{
????Temp[0]?=?dat?/?1000;
????Temp[1]?=?dat?%?1000?/?100;
????Temp[2]?=?dat?%?100?/?10;
????Temp[3]?=?dat?%?10;
??}
??else
??{
????
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????目錄???????????0??2013-08-24?16:11??fft\
?????文件????????6991??2013-08-24?15:54??fft\1602.c
?????文件?????????696??2013-08-24?15:04??fft\1602.h
?????文件????????1977??2013-08-24?15:12??fft\BoardConfig.h
?????目錄???????????0??2013-08-24?13:49??fft\Debug\
?????目錄???????????0??2013-08-24?14:39??fft\Debug\Exe\
?????文件???????23125??2013-08-24?16:11??fft\Debug\Exe\fft.txt
?????目錄???????????0??2013-08-24?13:49??fft\Debug\List\
?????目錄???????????0??2013-08-24?18:12??fft\Debug\Obj\
?????文件?????????138??2013-08-24?16:11??fft\Debug\Obj\fft.pbd
?????文件???????71573??2013-08-24?16:11??fft\Debug\Obj\main.r43
?????文件????????1699??2013-08-24?14:41??fft\fft.c
?????文件????????3101??2013-08-24?18:12??fft\fft.dep
?????文件???????52202??2013-08-24?13:50??fft\fft.ewp
?????文件?????????157??2013-08-24?13:50??fft\fft.eww
?????文件?????????198??2013-08-24?14:41??fft\fft.h
?????文件????????2464??2013-08-24?16:11??fft\main.c
?????目錄???????????0??2013-08-24?18:12??fft\settings\
?????文件????????1141??2013-08-24?13:50??fft\settings\fft.cspy.bat
?????文件??????????63??2013-08-24?18:12??fft\settings\fft.dbgdt
?????文件?????????486??2013-08-24?18:12??fft\settings\fft.dni
?????文件????????6005??2013-08-24?18:12??fft\settings\fft.wsdt
評論
共有 條評論