当前位置:首页 > 电源 > 功率器件
[导读]1.总体设计方案 1.1 主控制模块方案一:采用单片机。单片机的应用较为广泛,但是单片机的处理频率达不到我们的要求。所以我们只能够使用处理速度较快的处理器。方案二:采

1.总体设计方案

 

 

1.1 主控制模块

方案一:采用单片机。单片机的应用较为广泛,但是单片机的处理频率达不到我们的要求。所以我们只能够使用处理速度较快的处理器。

方案二:采用Xilinx的FPGA来实现主控制器。Xilinx的FPGA的内部IP核可以方便的产生DDS波形,这样就方便我们能够更好的产生想要的波形。

所以采用方案二。

1.2显示模块

方案一:使用TFT触摸屏。彩屏有这样明显的优点:微功耗,尺寸小,超薄轻巧,显示信息量大,字迹美观,视觉舒适,但是对于FPGA来说,其实现对触摸屏的控制不能够较好的完成控制要求。

方案二:使用VGA显示。FPGA可以实现对VGA的控制。VGA的使用较为广泛,且价格在接收的范围之内。而且,对于FPGA来说,实现对VGA接口的控制比控制其他的显示器更加的方便和快捷。这就节省了我们的设计麻烦。

所以采用方案二。

 

1.3 输入模块

方案一:使用矩阵键盘。矩阵键盘的编码较为简答,且可以实现较为复杂的控制。但是矩阵键盘的按键过少,不能够实现更多数据的输入。

方案二:使用PS2键盘。PS2键盘的控制更为简单,我们可以通过两根数据线精心数据的读取,且PS2键盘的设计更加符合我们设计要求,这就决定了PS2在本设计中的优势。

故采用方案二。

 

 

1.4 AD输出模块

ADS7822是一种单片高速12位逐次比较型A/D转换器, ADS7822内置双极性电路构成的混合集成转换显片,具有外接元件少,功耗低,精度高等特点,并且具有自动校零和自动极性转换功能,只需外接少量的阻容件即可构成一个完整的A/D转换器。所以该方案采用ADS7822作为AD输入的元器件。

 

 

1.5 DA输出模块

DAC7513是8分辨率的D/A转换集成芯片。与微处理器完全兼容。这个DA芯片以其价格低廉、接口简单、转换控制容易等优点,在单片机应用系统中得到广泛的应用。D/A转换器由8位输入锁存器、8位DAC寄存器、8位D/A转换电路及转换控制电路构成。

 

 

2.程序设计

2.1 AD输出

 

--**********************分频进程*************************

process(clk)

variable cnt1 : integer range 0 to 100;

variable cnt2 : integer range 0 to 20;

begin

if clk'event and clk='1' then

if cnt1=100 then

cnt1:=0;

if cnt2=20 then

cnt2:=0;

clock<=not clock;

if(cnt=3)then

cnt<=0;

else

cnt<=cnt+1;

end if;

else

cnt2:=cnt2+1;

end if;

else

cnt1:=cnt1+1;

end if;

end if;

end process;

--**************状态驱动进程**********************

sync :process(clock,reset)

begin

if(reset = '0') then

current_state <= start;

elsif(clock'event and clock='1') then

current_state <= next_state;

end if;

end process sync;

--***************adc驱动进程*******************

comb :process(current_state, intr)

begin

case current_state is

when start => --启动状态

next_state <= convert;

cs <= '0';

wr <= '0';

rd <= '1';

read_data <= '0';

when convert =>--初始化

if(intr = '0') then

next_state <= read1;

else

next_state <= convert;

end if;

cs <= '1';

wr <= '1';

rd <= '1';

read_data <= '0';

when read1 =>--读状态1

next_state <= read2;

cs <= '0';

wr <= '1';

rd <= '0';

read_data <= '1';

when read2 =>--读状态2

next_state <= start;

cs <= '1';

wr <= '1';

rd <= '1';

read_data <= '0';

when others =>--其他状态

next_state <= start;

end case;

end process comb;

--****************读取AD数据********************

get_data: process(clock,reset)

begin

if(reset = '0') then

p<=0;

elsif(clock'event and clock='1') then

if(read_data = '1') then

p<=conv_integer(data_i);

end if;

end if;

end process;[!--empirenews.page--]

2.2 DA输出

 

 

--*********************65536Hz分频进程************************

process(clk)

variable cnt1 : integer range 0 to 762;

begin

if clk'event and clk='1' then

case cnt1 IS

WHEN 381 =>

cp_65k<='1';

cnt1:=cnt1+1;

WHEN 762=>

cnt1:=0;

cp_65k<='0';

cp_wr<='0';

WHEN 20=>

cp_wr<='1';

cnt1:=cnt1+1;

WHEN OTHERS=>

cnt1:=cnt1+1;

end case;

end if;

end process;

--*********************1kHz分频进程************************

process(cp_65k)

variable cnt1 : integer range 0 to 64;

begin

if cp_65k'event and cp_65k='1' then

case cnt1 is

when 32=>cp_1k<='1';

cnt1:=cnt1+1;

when 64=>cnt1:=0;

cp_1k<='0';

when others=>cnt1:=cnt1+1;

end case;

end if;

end process;

--**************DDS地址累加器进程**********************

PROCESS(cp_65k)

BEGIN

IF(cp_65k'EVENT AND cp_65k='1') THEN

--DDS累加器循环累加dds_m

IF dds_add<65535 THEN

dds_add<=dds_add+dds_m;

ELSE

dds_add<=dds_add+dds_m-65536;

END IF;

END IF;

END PROCESS;

--***********************频率加减控制进程***************************

process(cp_1k)

VARIABLE keys:INTEGER RANGE 0 TO 127 :=0; --消抖累加器

begin

if cp_1k='1' then

case key is

when "10"=> --频率加

if keys=127 then

keys:=0;

bell<='1';

if dds_m=1000 then

dds_m<=1;

else

dds_m<=dds_m+1;

end if;

else

keys:=keys+1;

end if;

when "01"=> --频率减

if keys=127 then

keys:=0;

bell<='1';

if dds_m=1000 then

dds_m<=1;

else

dds_m<=dds_m-1;

end if;

else

keys:=keys+1;

end if;

when others=>bell<='0';

end case;

end if;

end process;

end dac;

2.3 VGA显示

 

 

3.性能指标

 

 

DA输出的波形

4.总结

经过了多日的努力,我们在本设计中基本实现了上述要求,并在有些功能方面提出了改进,使系统设计更加完善。在该设计中我们使用了FPGA作为主控器,但由于时间及器材条件的限制,本设计也存在不足,例如,测量范围不能达到更高的要求,测量精度也存在很大的提升空间。我们会在以后的学习中不断地弥补这些不足,完善测量系统设计。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

特朗普集团近日取消了其新推出的T1智能手机“将在美国制造”的宣传标语,此举源于外界对这款手机能否以当前定价在美国本土生产的质疑。

关键字: 特朗普 苹果 AI

美国总统特朗普在公开场合表示,他已要求苹果公司CEO蒂姆·库克停止在印度建厂,矛头直指该公司生产多元化的计划。

关键字: 特朗普 苹果 AI

4月10日消息,据媒体报道,美国总统特朗普宣布,美国对部分贸易伙伴暂停90天执行新关税政策,同时对中国的关税提高到125%,该消息公布后苹果股价飙升了15%。这次反弹使苹果市值增加了4000多亿美元,目前苹果市值接近3万...

关键字: 特朗普 AI 人工智能 特斯拉

3月25日消息,据报道,当地时间3月20日,美国总统特朗普在社交媒体平台“真实社交”上发文写道:“那些被抓到破坏特斯拉的人,将有很大可能被判入狱长达20年,这包括资助(破坏特斯拉汽车)者,我们正在寻找你。”

关键字: 特朗普 AI 人工智能 特斯拉

1月22日消息,刚刚,新任美国总统特朗普放出重磅消息,将全力支持美国AI发展。

关键字: 特朗普 AI 人工智能

特朗普先生有两件事一定会载入史册,一个是筑墙,一个是挖坑。在美墨边境筑墙的口号确保边境安全,降低因非法移民引起的犯罪率过高问题;在中美科技产业之间挖坑的口号也是安全,美国企业不得使用对美国国家安全构成威胁的电信设备,总统...

关键字: 特朗普 孤立主义 科技产业

据路透社1月17日消息显示,知情人士透露,特朗普已通知英特尔、铠侠在内的几家华为供应商,将要撤销其对华为的出货的部分许可证,同时将拒绝其他数十个向华为供货的申请。据透露,共有4家公司的8份许可被撤销。另外,相关公司收到撤...

关键字: 华为 芯片 特朗普

曾在2018年时被美国总统特朗普称作“世界第八奇迹”的富士康集团在美国威斯康星州投资建设的LCD显示屏工厂项目,如今却因为富士康将项目大幅缩水并拒绝签订新的合同而陷入了僵局。这也导致富士康无法从当地政府那里获得约40亿美...

关键字: 特朗普 富士康

今年5月,因自己发布的推文被贴上“无确凿依据”标签而与推特发生激烈争执后,美国总统特朗普签署了一项行政令,下令要求重审《通信规范法》第230条。

关键字: 谷歌 facebook 特朗普

众所周知,寄往白宫的所有邮件在到达白宫之前都会在他地进行分类和筛选。9月19日,根据美国相关执法官员的通报,本周早些时候,执法人员截获了一个寄给特朗普总统的包裹,该包裹内包含蓖麻毒蛋白。

关键字: 美国 白宫 特朗普
关闭