📄 resource.c
字号:
/*
参数中dataI[]为输入数据,sin_tab和cos_tab是为加快计算速度而建的正弦和余弦表,w为频率分布表
*/
void FFT(float dataI[],float sin_tab[],float cos_tab[],short w[]); //通过转换后dataI中的所有数据转到dataR中
#define C_MAX_BIT 8
#define C_MAX_DOT_NUMBER 256 //=pow(2,C_MAX_BIT)
void FFT(float dataI[],float sin_tab[],float cos_tab[],short w[]) //通过转换后dataI中的所有数据转到dataR中
{
short xx;
short L,i,j,k,b,p;
float TR,TI;
float TBR_COS,TBR_SIN,TBI_COS,TBI_SIN; //临时变量
float dataR[C_MAX_DOT_NUMBER]; //存放实部
for( i = 0; i < C_MAX_DOT_NUMBER; i++)
{
for(xx = 0,j = 0; j < C_MAX_BIT; j++)
{
xx = ( xx << 1) + ( (i >> j) & 0x01 ) ; //进行倒序
}
dataR[xx] = dataI[i]; //通过转换后dataI中的所有数据转到dataR中
dataI[i] = 0;
}
for(L = 0;L < C_MAX_BIT;L++)
{ /* for(1) */
b = 1;
b = ( b << L); /* b= 2^(L) */
for(j = 0;j < b; j++) /* for (2) */
{
p = 1;
i = C_MAX_BIT - L - 1;
p = ( p << i) * j; /* p=pow(2,7-L)*j; */
for( k = j ; k < C_MAX_DOT_NUMBER; k += 2*b) /* for (3) */
{
TR = dataR[k]; TI = dataI[k];
TBR_COS = dataR[k+b] * cos_tab[p];
TBR_SIN = dataR[k+b] * sin_tab[p];
TBI_COS = dataI[k+b] * cos_tab[p];
TBI_SIN = dataI[k+b] * sin_tab[p];
dataR[k] = TR + TBR_COS + TBI_SIN;
dataI[k] = TI - TBR_SIN + TBI_COS;
dataR[k+b] = TR - TBR_COS - TBI_SIN;
dataI[k+b] = TI + TBR_SIN - TBI_COS;
} /* END for (3) */
} /* END for (2) */
} /* END for (1) */
p = 1;
p = ( p << (C_MAX_BIT - 1) );
b = 0;
L = C_MAX_BIT - 5;
k = ( C_MAX_DOT_NUMBER >> L); // /8
for(i = 0; i <= k; i++)
{
w[i] = (short)( 0.5 + sqrt( dataR[i] * dataR[i] + dataI[i] * dataI[i] )/p );
if(b < w[i])b = w[i];
}
w[0]=w[0]/2;
} /* END FFT */
/*input.c 手机或类似设备T9拼音输入法源代码*/
#define C_KEYCOD_FUNCTION 7
#define C_KEYCOD_SETUP 8
#define C_KEYCOD_TEST 0
#define C_KEYCOD_RETURN 10
#define C_KEYCOD_INPUT 10 //输入法切换键
#define C_KEYCOD_COMFIRM 11
#define C_KEYCOD_PAGEDOWN 11 //翻页键
#define C_KEYCOD_MINUS 12
#define C_KEYCOD_LEFT 12 //在出现的拼音中向左选择
#define C_KEYCOD_PLUS 13
#define C_KEYCOD_RIGHT 13 //在出现的拼音中向右选择
#define C_KEYCOD_DATA 14
#define C_KEYCOD_DEL 14 //删除输入
#define C_KEYCOD_POINT 15
#define C_KEYCOD_ASCII 15 //各种标点符号
#define C_KEYCOD_CHANNEL 15
#define C_PINYIN_HPOSI 0
#define C_PINYIN_VPOSI ( 240 - 24*2 - 2)
#define C_PINYIN_HDOT ( 32*10 + 8 )
#define C_PINYIN_VDOT 24
#define C_WORD_HPOSI 0
#define C_WORD_VPOSI ( 240 - 24*1-2 )
#define C_WORD_HDOT ( 32*10 + 8 )
#define C_WORD_VDOT 24
#define C_MAX_PAGE_WORD 10 /*每页能显示的最多字数*/
#define C_MAX_ASSOCIATION 2 /*总的可以联想字数*/
#define C_PINYIN_TOTAL 398 /*具有的拼音总数*/
#define C_MAX_PINYIN_LEN 6 /*拼音的最大长度*/
#define C_MAX_PINYIN_NUM 216 /*按键产生的最大组合*/
const unsigned short _inputmode[] = {CH(4293),CH(5554),CH(2083),CH(4820),CH(4801),CH(4820),CH(3820),CH(5084),CH(3988),CH(4627)};//数字大写小写拼音区位
const u_short _HFWORD[] = {25, /*高频字*/
2136,5148,4043,2645,4650,5487,3667,1827,4610,5366,
2504,5010,5258,2156,5027,4147,4239,5448,2590,3013,
5052,2302,3343,3581,4512};/*的有人和我主你不为这工要在地一上是中国经以发了民同*/
const u_short _A[] ={7,1601,1602,2639,6325,7925,6436,7571} ;
/* A 啊阿呵吖锕嗄腌 7 */
const u_short _AI[] ={23,
1614,1611,1604,1605,1613,1609,1612,1606,1607,1610,
1615,1603,1608,2084,6263,6440,7040,7208,7451,7733,
7945,8616,6441} ;
/* AI 爱矮挨哎碍癌艾唉哀 蔼隘埃皑呆捱嗳嫒瑷 暧砹锿霭嗌 24 */
const u_short _AN[] ={20,
1620,1618,1621,1622,1619,1624,1616,1617,1623,1907,
2567,5847,5991,6278,6577,6654,7281,7907,8038,8786} ;
/* AN 按安暗岸俺案鞍氨胺 厂广谙埯揞犴庵桉铵 鹌黯 20 */
const u_short _ANG[] ={3,1626,1625,1627} ;
/* ANG 昂肮盎 3 */
const u_short _AO[] ={24,
1623,1628,1633,1634,1630,1635,1629,1631,1636,4789,
5974,6427,6514,6658,6959,7033,7081,7365,8190,8292,
8643,8701,8773,6254} ;
/* AO 袄凹傲奥熬懊敖翱澳 嚣坳嗷岙廒遨媪骜獒 聱螯鏊鳌鏖拗 24 */
const u_short _BA[] ={26,
1649,1643,1641,1654,1646,1653,1647,1645,1637,1639,
1651,1652,1640,1648,1642,1644,1650,1638,6056,6135,
6517,6917,7857,8446,8649,8741} ;
/* BA 把八吧爸拔罢跋巴芭 扒坝霸叭靶笆疤耙捌 茇菝岜灞钯粑鲅魃 26 */
const u_short _BAI[] ={12,
1657,1655,1658,1660,1656,1661,1659,1814,1662,6267,
7494,6334} ;
/* BAI 百白摆败柏拜佰伯稗 捭掰呗 12 */
const u_short _BAN[] ={21,
1675,1676,1664,1667,1672,1665,1670,1663,1669,1673,
1666,1671,1674,1668,1677,5870,5964,7851,8103,8113,
8418} ;
/* BAN 半办班般拌搬版斑板伴 扳扮瓣颁绊阪坂钣瘢癍 舨 21 */
const u_short _BANG[] ={14,
1679,1684,1683,1685,1687,1678,1681,1686,1688,1680,
1682,1689,6182,6826} ;
/* BANG 帮棒绑磅镑邦榜蚌傍梆 膀谤蒡浜 14 */
const u_short _BAO[] ={27,
3758,1692,1707,1708,1705,1703,1709,1701,1706,1712,
1694,1710,1702,1693,1704,1690,1691,1711,3758,3857,
6165,7063,7650,8017,8157,8532,8621} ;
/* BAO 炮包抱报饱保暴薄宝爆 剥豹雹褒堡苞胞鲍炮瀑 葆孢煲鸨褓趵龅 27 */
const u_short _BEI[] ={27,
1727,1717,1722,1713,1719,1715,1724,1714,1716,1720,
1718,1721,1726,1723,1725,1759,5635,5893,6177,6703,
7753,8039,8156,8645,8725,5873,6334} ;
/* BEI 被北倍杯背悲备碑卑贝 辈钡焙狈惫臂孛邶蓓悖 碚鹎褙鐾鞴陂呗 27 */
const u_short _BEN[] ={9,1730,1728,1729,1731,2627,5946,5948,7928,7458} ;
/* BEN 本奔苯笨夯畚坌锛贲 9 */
const u_short _BENG[] ={9,1736,1733,1734,1732,1737,1686,1735,6452,7420} ;
/* BENG 蹦绷甭崩迸蚌泵嘣甏 9 */
const u_short _BI[] ={57,
1740,1742,1753,1739,1744,1756,1760,1738,1747,
1759,1743,1741,1758,1745,1750,1755,1757,1746,
1748,1751,1754,1761,1749,1752,3556,3558,5616,
5734,6037,6074,6109,6141,6221,6357,6589,6656,
6725,6868,6908,6986,6994,7030,7052,7221,7815,
7873,7985,8357,8375,8387,8416,8437,8547,8734,
6333,7458,8152} ;
/* BI 比笔闭鼻碧必避逼毕 臂彼鄙壁蓖币弊辟蔽 毙庇敝陛毖痹秘泌匕
俾芘荜荸萆薜哔狴庳 愎滗濞弼妣婢嬖璧畀 铋秕筚箅篦舭襞跸髀
吡贲裨 57 */
const u_short _BIAN[] ={27,
1763,1768,1767,1773,1764,1771,1766,1765,1762,1769,
1770,1772,5650,5945,6048,6677,6774,7652,7730,7760,
8125,8159,8289,8354,8693,8752,7134} ;
/* BIAN 边变便遍编辩扁贬鞭 卞辨辫匾弁苄忭汴煸 砭碥窆褊蝙笾鳊髟缏 27 */
const u_short _BIAO[] ={15,
1777,1774,1775,1776,7027,7228,7609,7613,7614,7958,
7980,8106,8149,8707,7084} ;
/* BIAO 表标彪膘婊杓飑飙飚 镖镳瘭裱鳔骠 15 */
const u_short _BIE[] ={5,1780,1779,1778,1781,8531} ;
/* BIE 别憋鳖瘪蹩 5 */
const u_short _BIN[] ={16,
1786,1784,1787,1782,1783,1785,5747,6557,7145,7375,
7587,7957,8738,8762,7167,7336} ;
/* BIN 宾濒摈彬斌滨傧豳缤 殡膑镔髌鬓玢槟 16 */
const u_short _BING[] ={14,
1802,1801,1788,1789,1791,1793,3833,1792,1790,1794,
5787,5891,6280,7336} ;
/* BING 并病兵冰丙饼屏秉柄 炳禀邴摒槟 14 */
const u_short _BO[] ={37,
1806,1808,1805,1820,1809,1814,1821,1803,1694,1701,
1810,1804,1807,1811,1817,1815,1667,1656,1816,1819,
1812,1813,1818,3839,1823,5781,6403,6636,7362,7502,
7771,7864,8030,8404,8543,8559,6212} ;
/* BO 拨波播泊博伯驳玻剥 薄勃菠钵搏脖帛般柏 舶渤铂箔膊魄卜亳啵
饽檗擘礴钹鹁簸跛踣 蕃 37 */
const u_short _BU[] ={20,
1827,1829,1825,1828,1831,1822,1823,1830,1824,1704,
1826,1832,3850,6318,6945,7419,7446,7848,7863,8519} ;
/* BU 不步补布部捕卜簿哺 堡埠怖埔卟逋瓿晡钚 钸醭 20 */
const u_short _CA[] ={4,1833,1880,7769,6474} ;
/* CA 擦拆礤嚓 4 */
const u_short _CAI[] ={11,
1837,1843,1841,1836,1838,1835,1834,1840,1839,1844,
1842} ;
/* CAI 才菜采材财裁猜踩睬 蔡彩 11 */
const u_short _CAN[] ={13,
1847,1848,1884,1846,1850,1849,1845,1851,7078,7218,
8451,8785,6978} ;
/* CAN 蚕残掺参惨惭餐灿骖 璨粲黪孱 13*/
const u_short _CANG[] ={6,1856,1854,1855,1853,1852,5687} ;
/* CANG 藏仓沧舱苍伧 6*/
const u_short _CAO[] ={9,
1861,1857,1860,1859,1858,6448,6878,8309,8429} ;
/* CAO 草操曹槽糙嘈漕螬艚 9*/
const u_short _CE[] = {6,1865,1864,1863,1866,1862,6692} ;
/* CE 册侧策测厕恻 6*/
const u_short _CEN[] ={3,1846,6515,6825} ;
/* CEN 参岑涔 3*/
const u_short _CENG[] ={4,5288,1867,1868,6465} ;
/* CENG 曾层蹭噌 4*/
const u_short _CHA[] ={23,
1873,1869,1870,1872,1878,1877,1875,1876,1871,1874,
1879,6639,6766,7017,7230,7322,7363,7942,7979,8135,
4118,6474,7311} ;
/* CHA 查插叉茶差岔搽察茬 碴诧馇汊姹杈槎檫锸 镲衩刹嚓楂 23*/
const u_short _CHAI[] ={8,1881,1880,1878,1882,5713,7846,8218,8091};
/* CHAI 柴拆差豺侪钗虿瘥 8*/
const u_short _CHAN[] ={27,
1890,1888,1884,1883,1891,1892,1889,1887,1885,1886,
5770,5838,6159,6660,6667,6893,6904,6981,7031,7086,
7472,8324,8580,2105,6978,7688,7966} ;
/* CHAN 产缠掺搀阐颤铲谗蝉 馋冁谄蒇廛忏潺澶羼 婵骣觇蟾躔单孱禅镡 27*/
const u_short _CHANG[] ={27,
1904,1910,1903,1901,1907,1902,1906,1909,1893,1908,
1911,1894,1905,5686,5943,6041,6137,6568,6674,6714,
6749,7029,7047,7438,7509,8680,4149} ;
/* CHANG 长唱常场厂尝肠畅昌 敞倡猖偿伥鬯苌菖徜 怅惝阊娼嫦昶氅鲳裳 27*/
const u_short _CHAO[] ={15,
1915,1913,1912,1919,1917,1918,1920,1916,2943,1914,
6687,7443,8173,2034,7644} ;
/* CHAO 朝抄超吵潮巢炒嘲剿 钞怊晁耖绰焯 15*/
const u_short _CHE[] ={9,
1921,1923,1922,1924,1925,1963,1926,5969,7726} ;
/* CHE 车撤扯掣彻尺澈坼砗 9*/
const u_short _CHEN[] ={32,
1935,1938,1929,1928,1930,1931,1933,1934,1936,1940,
1927,1932,5840,5863,6251,6433,6923,7201,7755,7755,
8619,5687} ;
/* CHEN 趁称辰臣尘晨沉陈衬 橙郴忱谌谶抻嗔宸琛 碜碜龀伧 32*/
const u_short _CHENG[] ={29,
1941,1943,4202,1937,1930,1939,1944,1942,1947,1951,
1945,1948,1949,1950,5609,5984,7239,7263,7583,7810,
7881,8146,8241,8508,1940,1946,6465,7441,7885} ;
/* CHENG 成乘盛撑尘城程呈诚 秤惩承逞骋丞埕枨柽 塍瞠铖裎蛏酲橙澄噌 晟铛 29*/
const u_short _CHI[] ={39,
1952,1963,1957,1956,1965,1953,1964,1961,1960,1954,
1966,1958,1959,1962,1967,5749,6015,6061,6319,6374,
6420,6445,6560,6633,7042,7523,7787,8023,8101,8161,
8231,8304,8355,8388,8489,8556,8746,1955,5970} ;
/* CHI 吃尺迟池翅痴赤齿耻 持斥弛驰侈炽傺墀茌 叱哧啻嗤彳饬媸敕眵
鸱瘛褫蚩螭笞篪豉踟 魑匙坻 39*/
const u_short _CHONG[] ={14,
1969,5456,1970,1968,1972,1971,6091,6671,6731,7905,
8409,8430,5131,5454} ;
/* CHONG 冲重虫充宠崇茺忡憧 铳舂艟涌种 14*/
const u_short _CHOU[] ={17,
1973,1978,1984,1980,1983,1977,1981,1974,1979,1976,
1975,1982,5717,8626,8112,8637,6492} ;
/* CHOU 抽愁臭仇丑稠绸酬筹 踌畴瞅俦龊瘳雠帱 17*/
const u_short _CHU[] ={28,
1986,2006,1985,1990,1993,2005,1987,1994,2001,2002,
4883,1988,1989,1991,1992,2003,2004,5601,5927,6680,
6732,7109,7238,7290,7343,8260,8573,8777} ;
/* CHU 出处初锄除触橱楚础 储畜厨躇雏滁矗搐亍 刍怵憷绌杵楮樗蜍蹰 黜 28*/
const u_short _CHUAI[] ={6,2007,6285,7590,8563,6408,6460};
/* CHUAI 揣搋膪踹啜嘬 6*/
const u_short _CHUAN[] ={13,
2009,2012,2011,2014,2008,2013,2010,6622,6955,7161,
7516,7843,8413};
/* CHUAN 穿船传串川喘椽舛遄 巛氚钏舡 13*/
const u_short _CHUANG[] ={8,2016,2018,2019,2020,2015,2017,6675} ;
/* CHUANG 窗床闯创疮幢怆 8*/
const u_short _CHUI[] ={9,
2021,2025,2022,2024,2023,5521,5879,1961,7319} ;
/* CHUI 吹垂炊锤捶椎陲齿槌 9*/
const u_short _CHUN[] ={10,
2026,2029,2031,2032,2028,2030,2027,6127,8040,8277} ;
/* CHUN 春唇纯蠢醇淳椿莼鹑 蝽 10*/
const u_short _CHUO[] ={6,2033,2034,7401,8554,8626,6408};
/* CHUO 戳绰辍踔龊啜 6*/
const u_short _CI[] ={19,
2046,2043,2042,2041,2040,2038,2037,2039,2044,2036,
2035,2045,6358,7684,8043,8457,1878,4337,5540} ;
/* CI 次此词瓷慈雌磁辞刺 茨疵赐呲祠鹚糍差伺 兹 19*/
const u_short _CONG[] ={12,
2051,2052,2048,2050,2047,2049,6042,6840,7085,7193,
7214,7240};
/* CONG 从丛葱匆聪囱苁淙骢 琮璁枞 12*/
const u_short _COU[] ={4,2053,7308,7403,7577} ;
/* COU 凑楱辏腠 4*/
const u_short _CU[] ={12,
2054,2055,2056,2057,5568,6193,6562,6607,7367,8530,
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -