本文目录一览:
基于STM32和DDS芯片实现的正交信号发生器
使用的ad9854 行么
#include "ad9854.h"
unsigned char table9854[8];
void delay(uint32_t t)
{
unsigned int i=0;
while(t--)
for(i=0;i=1000;i++);
}
void Port_IO_Init(void)
{
GPIO_InitTypeDef GPIO_InitStruct ;
GPIO_InitStruct.GPIO_Mode = GPIO_Mode_Out_PP ;
GPIO_InitStruct.GPIO_Pin = MASTER_RESET_PORT | IO_UPDATE_PORT | FBH_PORT | RD_PORT | WR_PORT | SHAPED_LEYING_PORT ;
GPIO_InitStruct.GPIO_Speed = GPIO_Speed_50MHz ;
RCC_APB2PeriphClockCmd (RCC_APB2Periph_GPIOA | RCC_APB2Periph_GPIOC, ENABLE );
GPIO_Init (CTRL_PORT, GPIO_InitStruct);
GPIO_InitStruct.GPIO_Pin = ADDRESS_PORT | DATA_PORT ;
GPIO_Init (DAD_PORT, GPIO_InitStruct);
}
void send_byte(unsigned char add,unsigned char data)
{
WR(1);
delay(2);
ADDRESS(add);
delay(2);
WR(0);
delay(2);
DATA(data);
delay(2);
WR(1);
delay(2);
delay(20);
IO_UPDATE(0);
delay(20);
IO_UPDATE(1);
delay(20);
IO_UPDATE(0);
delay(20);
}
void ad9854_ftw1 (uint64_t f)
{
send_byte(FTW1_6,(((uint64_t)(f*256)/100000000))(0x0000000000ff));
send_byte(FTW1_5,(((uint64_t)(f*65536)/100000000))(0x0000000000ff));
send_byte(FTW1_4,(((uint64_t)(f*16777216)/100000000))(0x0000000000ff));
send_byte(FTW1_3,(((uint64_t)(f*33554432)/1953125))(0x0000000000ff));
send_byte(FTW1_2,(((uint64_t)(f*2147483648)/1953125))(0x0000000000ff));
send_byte(FTW1_1,(((uint64_t)(f*549755813888)/1953125))(0x0000000000ff));
}
/*void ad9854_dfw (void)
{
send_byte(DFW_6,0x00);
send_byte(DFW_5,0x00);
send_byte(DFW_4,0x00);
send_byte(DFW_3,0x0f);
send_byte(DFW_2,0x55);
send_byte(DFW_1,0x55);
send_byte(RRC_3,0xf0);
send_byte(RRC_2,0x10);
send_byte(RRC_1,0xf5);
}
void ad9854_ftw2 (uint64_t f)
{
send_byte(FTW2_6,((uint64_t)((f*256)/280000000))(0x0000000000ff));
send_byte(FTW2_5,((uint64_t)((f*65536)/280000000))(0x0000000000ff));
send_byte(FTW2_4,((uint64_t)((f*16777216)/280000000))(0x0000000000ff));
send_byte(FTW2_3,((uint64_t)((f*4294967296)/280000000))(0x0000000000ff));
send_byte(FTW2_2,((uint64_t)((f*1099511627776)/280000000))(0x0000000000ff));
send_byte(FTW2_1,((uint64_t)((f*281474976710656)/280000000))(0x0000000000ff));
}
*/
void ad9854v(float v)
{
if(v=1)
{
table9854[6]=0xff;
table9854[7]=0xff;
}
else
{
table9854[6]=((uint16_t)(v*4096))/256;//??
table9854[7]=((uint16_t)(v*4096))%256;//???????256
}
send_byte(OSKI_2,table9854[6]); //0~11? 2^12 1V (x/4096)*1=K x=4096k
send_byte(OSKI_1,table9854[7]);
send_byte(OSKQ_2,table9854[6]);
send_byte(OSKQ_1,table9854[7]);
}
void init_9854(void)
{
Port_IO_Init();
MASTER_RESET(0);
delay(200);
MASTER_RESET(1);
delay(200);
MASTER_RESET(0);
delay(2);
send_byte(REFCLK,0x01);
delay(2);
send_byte(MOD,0x02);
delay(2);
send_byte(PD,0x00);
delay(2);
send_byte(OSK_S,0x40);
delay(2);
send_byte(UDCLK_1,0x20);
delay(2);
IO_UPDATE(0);
delay(20);
IO_UPDATE(1);
delay(20);
IO_UPDATE(0);
delay(20);
}
/******************* (C) COPYRIGHT 2012 tc shh *****END OF FILE***************/
#ifndef _AD9854_H_
#define _AD9854_H_
#include "stm32f10x.h"
#define PAR1_H 0x00 //Phase Adjust Register#113:8
#define PAR1_L 0X01 //Phase Adjust Register#17:0
#define PAR2_H 0X02 //Phase Adjust Register#213:8
#define PAR2_L 0X03 //Phase Adjust Register#27:0
#define FTW1_6 0X04 //Frequency Tuning Word147:40
#define FTW1_5 0X05 //Frequency Tuning Word139:32
#define FTW1_4 0X06 //Frequency Tuning Word131:24
#define FTW1_3 0X07 //Frequency Tuning Word123:16
#define FTW1_2 0X08 //Frequency Tuning Word115:8
#define FTW1_1 0X09 //Frequency Tuning Word17:0
#define FTW2_6 0X0A //Frequency Tuning Word247:40
#define FTW2_5 0X0B //Frequency Tuning Word239:32
#define FTW2_4 0X0C //Frequency Tuning Word231:24
#define FTW2_3 0X0D //Frequency Tuning Word223:16
#define FTW2_2 0X0E //Frequency Tuning Word215:8
#define FTW2_1 0X0F //Frequency Tuning Word27:0
#define DFW_6 0X10 //Delta Frequency Word47:40
#define DFW_5 0X11 //Delta Frequency Word39:32
#define DFW_4 0X12 //Delta Frequency Word31:24
#define DFW_3 0X13 //Delta Frequency Word23:16
#define DFW_2 0X14 //Delta Frequency Word15:8
#define DFW_1 0X15 //Delta Frequency Word7:0
#define UDCLK_4 0X16 //Update Clock31:24
#define UDCLK_3 0X17 //Update Clock23:16
#define UDCLK_2 0X18 //Update Clock15:8
#define UDCLK_1 0X19 //Update Clock7:0
#define RRC_3 0X1A //Ramp Rate Clock19:16
#define RRC_2 0X1B //Ramp Rate Clock15:8
#define RRC_1 0X1C //Ramp Rate Clock7:0
#define PD 0X1D //Power Down:DC,DC,DC,Comp PD,0,QDAC PD,DAC PD,DIG PD
#define REFCLK 0X1E //REFCLK:DC,PLL Range,Bypass PLL,RM4,RM3,RM2,RM1,RM0
#define MOD 0X1F //MOD:CLR ACC1,CLR ACC2,Triangle,SRC QDAC,M2,M1,M0,Int Update Clk
#define OSK_S 0X20 //OSKSERIAL COM:DC,Bypass Inv Sinc,OSK EN,OSK INT,DC,DC,LSB First,SDO Active
#define OSKI_2 0X21 //Output Shape Key I Mult11:8
#define OSKI_1 0X22 //Output Shape Key I Mult7:0
#define OSKQ_2 0X23 //Output Shape Key Q Mult11:8
#define OSKQ_1 0X24 //Output Shape Key Q Mult7:0
#define OSKRR 0X25 //Output Shape Key Ramp Rate7:0
#define QDAC_2 0X26 //QDAC11:8
#define QDAC_1 0X27 //QDAC7:0
#define DAD_PORT GPIOC
#define CTRL_PORT GPIOA
#define ADDRESS_PORT GPIO_Pin_0 |GPIO_Pin_1 |GPIO_Pin_2 |GPIO_Pin_3 |GPIO_Pin_4 |GPIO_Pin_5
#define DATA_PORT GPIO_Pin_6 |GPIO_Pin_7 |GPIO_Pin_8 |GPIO_Pin_9 |GPIO_Pin_10 |GPIO_Pin_11 |GPIO_Pin_12 | GPIO_Pin_13
#define MASTER_RESET_PORT GPIO_Pin_0
#define IO_UPDATE_PORT GPIO_Pin_1
#define FBH_PORT GPIO_Pin_2 //fsk/bpsk/hold
#define RD_PORT GPIO_Pin_3
#define WR_PORT GPIO_Pin_4
#define SHAPED_LEYING_PORT GPIO_Pin_5
#define MASTER_RESET(x) x? GPIO_SetBits ( CTRL_PORT , MASTER_RESET_PORT ) : GPIO_ResetBits ( CTRL_PORT , MASTER_RESET_PORT )
#define IO_UPDATE(x) x? GPIO_SetBits ( CTRL_PORT , IO_UPDATE_PORT ) : GPIO_ResetBits ( CTRL_PORT , IO_UPDATE_PORT )
#define FBH(x) x? GPIO_SetBits ( CTRL_PORT , FBH_PORT ) : GPIO_ResetBits ( CTRL_PORT , FBH_PORT )
//#define RD(x) x? GPIO_SetBits ( CTRL_PORT , RD_PORT ) : GPIO_ResetBits ( CTRL_PORT , RD_PORT )
#define WR(x) x? GPIO_SetBits ( CTRL_PORT , WR_PORT ) : GPIO_ResetBits ( CTRL_PORT , WR_PORT )
#define SHAPED_LEYING(x) x? GPIO_SetBits ( CTRL_PORT , SHAPED_LEYING_PORT ) : GPIO_ResetBits ( CTRL_PORT , SHAPED_LEYING_PORT )
#define ADDRESS(x) GPIO_Write (DAD_PORT , ((x(ADDRESS_PORT)) | (GPIO_ReadOutputData (DAD_PORT) 0xffc0)))
#define DATA(x) GPIO_Write (DAD_PORT , (((x6)(DATA_PORT)) | (GPIO_ReadOutputData (DAD_PORT) 0xc03f)))
void init_9854(void);
void ad9854_ftw1 (uint64_t f);
void delay(uint32_t t);
//void ad9854_ftw2 (uint64_t f);
#endif
/******************* (C) COPYRIGHT 2012 tc shh *****END OF FILE***************/
富士通DPK810驱动,急需
可以用XP系统的EPSON 1600K仿真驱动,也可以用富士通网站上的下载DPK810驱动安装。
;productId=3cb9f688-9854-436e-afda-57474a6bcd87comp_stats=comp-FrontProducts_list01-1298525245939.html
不管怎么样,一般都是先安装并口的,安装完后,最重要的是要把接口改为com口。
自驾车路线查询上海至三亚
驾车路线:全程约2404.7公里
起点:上海市
1.上海市内驾车方案
1) 从起点向西南方向出发,沿人民大道行驶410米,左转进入黄陂北路
2) 沿黄陂北路行驶280米,右转进入延安东路
3) 沿延安东路行驶400米,过延安东路立交桥,朝江苏路/瑞金一路方向,直行
4) 行驶20米,直行
5) 行驶20米,直行进入延安中路
6) 沿延安中路行驶540米,朝江苏路/茂名南(北)路方向,直行进入延安中路
7) 沿延安中路行驶150米,过右侧的陕西大厦约220米后,稍向右转
8) 行驶380米,在入口,进入延安高架路
9) 沿延安高架路行驶10.0公里,朝湖州/虹桥枢纽(南)/虹桥机场2号航站楼/G50方向,稍向左转进入G50
10) 沿G50行驶7.2公里,朝宁波/G15/沈海高速(嘉金)/南通方向,稍向右转
11) 行驶410米,过蟠龙港桥,朝宁波方向,稍向右转
12) 行驶1.3公里,在入口,进入G15
13) 沿G15行驶8.9公里,朝上海市区/G60/杭州/新桥方向,稍向右转
14) 行驶920米,朝上海市区/G60/杭州/沪昆高速(沪杭)方向,稍向左转
15) 行驶170米,朝杭州方向,稍向右转
16) 行驶290米,右前方转弯
2.行驶300米,在入口,进入G92
3.沿G92行驶68.7公里,稍向右转进入G60
4.沿G60行驶45.3公里,朝绍兴/金华/G2501方向,稍向右转进入G60
5.沿G60行驶6.8公里,直行进入G92
6.沿G92行驶17.9公里,朝杭金衢高速/绕城南线方向,稍向右转进入G60
7.沿G60行驶17.4公里,朝诸暨/义乌/金华/衢州方向,稍向右转进入G60
8.沿G60行驶513.5公里,过昌东南枢纽,朝宜春/长沙/吉安/广州方向,稍向右转进入G60
9.沿G60行驶38.6公里,朝新余/吉安/长沙/G60方向,稍向右转进入G60
10.沿G60行驶73.8公里,朝吉安/广州/井冈山/S69方向,稍向右转进入樟树枢纽
11.沿樟树枢纽行驶1.7公里,过樟树枢纽,在入口,进入S69
12.沿S69行驶105.3公里,朝赣州/广州方向,稍向右转进入G45
13.沿G45行驶268.8公里,直行进入G4511
14.沿G4511行驶129.6公里,直行进入G25
15.沿G25行驶119.8公里,朝惠东/东莞/S20/中山方向,稍向右转进入镇隆互通1号桥
16.沿镇隆互通1号桥行驶380米,过镇隆互通1号桥,朝东莞/珠海方向,稍向右转进入镇隆互通1号桥
17.沿镇隆互通1号桥行驶550米,在入口,进入S20
18.沿S20行驶15.3公里,直行进入虎岗高速公路
19.沿虎岗高速公路行驶50.6公里,朝虎门/广州/珠海方向,稍向右转
20.行驶1.6公里,在入口,进入G15
21.沿G15行驶2.6公里,朝虎门/中山/珠海方向,稍向右转进入虎门高速公路
22.沿虎门高速公路行驶18.6公里,在出口,进入京珠高速东段
23.沿京珠高速东段行驶5.6公里,朝中江高速/西部沿海高速/中山/珠海方向,稍向右转
24.行驶1.1公里,在入口,进入京珠高速公路
25.沿京珠高速公路行驶24.0公里,朝中江高速/港口/古镇/江门方向,稍向右转进入新隆立交桥
26.沿新隆立交桥行驶680米,在入口,进入中江高速公路
27.沿中江高速公路行驶39.0公里,直行进入江鹤高速公路
28.沿江鹤高速公路行驶19.0公里,过共和收费站约270米后,朝开平/茂名/湛江方向,稍向右转
29.行驶2.1公里,在入口,进入G15
30.沿G15行驶327.7公里,朝广西/海南方向,稍向右转
31.行驶620米,在入口,进入G75
32.沿G75行驶4.1公里,在海南出口,
33.行驶420米,右前方转弯
34.行驶130米,直行
35.行驶130米,朝徐闻方向,稍向右转
36.行驶100米,右前方转弯进入G207
37.沿G207行驶55.1公里,直行进入环岛
38.沿环岛行驶70米,在第1个出口,直行进入G207
39.沿G207行驶33.8公里,右前方转弯进入环岛
40.沿环岛行驶100米,在第2个出口,直行进入G207
41.沿G207行驶45.2公里,右前方转弯进入环岛
42.沿环岛行驶80米,在第3个出口,右转进入G207
43.沿G207行驶4.4公里,右前方转弯进入环岛
44.沿环岛行驶60米,在第1个出口,直行进入G207
45.沿G207行驶7.6公里,过右侧的鸿雁大厦约270米后,右前方转弯
46.行驶28.2公里,右后方转弯进入港源路
47.沿港源路行驶290米,右转进入滨海大道
48.沿滨海大道行驶40米,过右侧的海南第一摩尔购物广场约160米后,左前方转弯进入海港路
49.沿海港路行驶610米,过右侧的旺旺综合商店约120米后,直行进入G224
50.沿G224行驶1.8公里,过右侧的海口华茂加油站约120米后,左转
51.行驶20米,直行进入G223
52.沿G223行驶11.5公里,直行进入东线高速公路
53.沿东线高速公路行驶6.1公里,直行进入G98
54.沿G98行驶237.3公里,朝三亚方向,直行进入G98
55.沿G98行驶150米,稍向右转进入G224
56.三亚市内驾车方案
1) 沿G224行驶5.6公里,直行进入环岛
2) 沿环岛行驶80米,在第1个出口,直行进入G223
3) 沿G223行驶8.5公里,左转进入凤凰路
4) 沿凤凰路行驶2.6公里,稍向右转进入新风街
5) 沿新风街行驶990米,到达终点(在道路右侧)
终点:三亚市百度地图
厦门到海南三亚多少公里
驾车路线:全程约1499.6公里
起点:厦门市
1.厦门市内驾车方案
1) 从起点向正南方向出发,行驶40米,右转进入湖滨北路
2) 沿湖滨北路行驶910米,过右侧的外贸大厦约280米后,右转进入东渡路
3) 沿东渡路行驶1.3公里,过右侧的国检大厦约180米后,朝海沧大桥方向,直行进入海大立交
4) 沿海大立交行驶5.2公里,直行进入石塘立交桥
5) 沿石塘立交桥行驶1.3公里,直行进入马青路
6) 沿马青路行驶7.3公里,朝S7621/汕头/厦漳大桥/招银港方向,稍向右转上匝道
7) 沿匝道行驶480米,直行上匝道
2.沿匝道行驶560米,直行进入招银疏港高速公路
3.沿招银疏港高速公路行驶27.2公里,过龙应中桥,朝漳浦/诏安/汕头/G15方向,稍向左转进入枫林枢纽
4.沿枫林枢纽行驶1.7公里,过新圩大桥,直行进入沈海高速公路
5.沿沈海高速公路行驶448.8公里,稍向右转进入凌坑互通
6.沿凌坑互通行驶390米,过凌坑互通约370米后,直行进入广惠高速公路
7.沿广惠高速公路行驶15.7公里,朝惠州/S20/东莞/大岭方向,稍向右转上匝道
8.沿匝道行驶1.7公里,直行进入潮莞高速公路
9.沿潮莞高速公路行驶77.0公里,直行进入莞佛高速公路
10.沿莞佛高速公路行驶23.7公里,朝虎门/广州/珠海/广深港高铁虎门站方向,稍向右转进入五点梅立交
11.沿五点梅立交行驶630米,过五点梅立交约970米后,直行进入沈海高速公路
12.沿沈海高速公路行驶2.6公里,朝虎门大桥/G9411/虎门/中山方向,稍向左转进入莞佛高速公路
13.沿莞佛高速公路行驶1.5公里,过太平立交约740米后,直行进入莞佛高速公路
14.沿莞佛高速公路行驶22.0公里,过黄阁南路8#桥,朝中山/珠海/江门/湛江方向,稍向右转上匝道
15.沿匝道行驶1.1公里,直行进入广澳高速公路
16.沿广澳高速公路行驶23.9公里,过海隆桥,朝中江高速/港口/江门/阳江方向,稍向右转进入新隆立交桥
17.沿新隆立交桥行驶450米,过新隆立交桥约230米后,直行进入深罗高速公路
18.沿深罗高速公路行驶9.0公里,过为民路跨线桥,朝江门/阳江/G94/G15方向,稍向左转进入珠三角环线高速公路
19.沿珠三角环线高速公路行驶640米,过广珠西线中山西立交约1.2公里后,直行进入珠三角环线高速公路
20.沿珠三角环线高速公路行驶31.9公里,过木朗跨线桥,朝共和/湛江/S26方向,稍向左转进入深罗高速公路
21.沿深罗高速公路行驶610米,直行进入深罗高速公路
22.沿深罗高速公路行驶15.1公里,过共和中学立交桥,朝开平/茂名/湛江方向,稍向右转上匝道
23.沿匝道行驶2.1公里,直行进入沈海高速公路
24.沿沈海高速公路行驶445.1公里,直行上匝道
25.沿匝道行驶440米,直行进入G207
26.沿G207行驶5.7公里,直行进入G207
27.沿G207行驶120米,在第3个出口,朝海安港码头/海口方向,稍向左转进入红旗一路
28.沿红旗一路行驶1.6公里,直行进入红旗二路
29.沿红旗二路行驶910米,左前方转弯进入徐海路
30.沿徐海路行驶1.8公里,直行进入徐海路
31.沿徐海路行驶100米,在第1个出口,朝海安港码头/海安新港码头/海口方向,右前方转弯进入徐海路
32.沿徐海路行驶5.5公里,直行进入徐海路
33.沿徐海路行驶450米,在第2个出口,朝海安港码头方向,左转进入G207
34.沿G207行驶1.8公里,过右侧的鸿雁大厦约220米后,稍向右转进入G207
35.沿G207行驶27.3公里,左前方转弯
36.行驶40米,左前方转弯
37.行驶780米,右前方转弯
38.行驶270米,右转进入港源路
39.沿港源路行驶280米,右转进入滨海大道
40.沿滨海大道行驶1.3公里,调头进入滨海大道
41.沿滨海大道行驶2.4公里,右转进入丘海大道
42.沿丘海大道行驶8.1公里,直行进入中线高速公路
43.沿中线高速公路行驶40米,直行进入中线高速公路
44.沿中线高速公路行驶10米,朝机场/琼海/洋浦/G98方向,稍向右转进入丘海互通
45.沿丘海互通行驶1.5公里,过丘海互通约1.0公里后,直行进入海南环岛高速公路
46.沿海南环岛高速公路行驶254.4公里,过封塘大桥,在三亚市区/荔枝沟/迎宾路出口,稍向右转进入荔枝沟互通
47.沿荔枝沟互通行驶510米,过荔枝沟互通,右前方转弯进入X820
48.三亚市内驾车方案
1) 沿X820行驶2.7公里,右转进入迎宾路
2) 沿迎宾路行驶560米,左转
3) 行驶820米,右前方转弯
4) 行驶1.0公里,右前方转弯
5) 行驶1.3公里,左转进入凤凰路
6) 沿凤凰路行驶1.6公里,右转进入新风街
7) 沿新风街行驶960米,到达终点(在道路右侧)
终点:三亚市