線上訂房服務-台灣趴趴狗聯合訂房中心
發文 回覆 瀏覽次數:1127
推到 Plurk!
推到 Facebook!

ADC0804VHDL程式問題..

答題得分者是:
m9520213
一般會員


發表:13
回覆:7
積分:4
註冊:2007-12-03

發送簡訊給我
#1 引用回覆 回覆 發表時間:2008-01-26 19:07:39 IP:220.133.xxx.xxx 訂閱
各位大大好~
我要用HDL程式碼~
他只有對0804的WR跟RD做控制~~
那CS 跟INTR都不用做控制嗎?

不知道有沒有大大~有用過FPGA來控過ADC0804的嗎?
希望可以向你請叫問題~
非常感謝~~

[code delphi]
Library IEEE;
USE IEEE.std_logic_1164.ALL;
USE IEEE.std_logic_arith.ALL;
USE IEEE.std_logic_unsigned.ALL;
ENTITY ADC0804 IS
PORT
(
AOP : OUT STD_LOGIC_VECTOR(7 DOWNTO 0);
AIN : IN STD_LOGIC_VECTOR(7 DOWNTO 0);
WR : OUT STD_LOGIC;
RD : OUT STD_LOGIC;
CLK : IN STD_LOGIC;
FERQ : IN STD_LOGIC
);
END ADC0804;
ARCHITECTURE a OF ADC0804 IS
SIGNAL D0,D1,D2,D3 : STD_LOGIC;
BEGIN
--*********************************************************************
time_sequence : block
BEGIN
process(CLK)
begin
if CLK'event and CLK='1' then
D3<=D2;
D2<=D1;
D1<=D0;
D0<=FERQ;
END if;
end process;
RD <= not (FERQ or D0 or D1);
WR <= not D3;
end block time_sequence;
--*********************************************************************
ADC_FETCH : block
SIGNAL EC : STD_LOGIC;
begin
process(CLK)
begin
if CLK'event and CLK='1' then
if EC='1' then
AOP <= AIN;
end if;
end if;
end process;
EC <= D1;
end block ADC_FETCH;
END a;[/code]
------
HI~~

版主


發表:261
回覆:2302
積分:1667
註冊:2005-01-04

發送簡訊給我
#2 引用回覆 回覆 發表時間:2008-01-26 21:31:15 IP:202.132.xxx.xxx 未訂閱
請先了解一些基本功能.

1> ADC0804 的 datasheet 你看過了嗎?

2> 這本書我也有, ADC這一部分你詳細讀過了嗎?


只使用一顆ADC, chip select 根本不須要控制, 直接接地就可以了. INTR 只是通知使用者 A/D 轉換已經完成, 不須要控制.
下完轉換命令, 等待轉換必須的基本時間後即可下 RD 命令直接讀回 data.

FYI.

P.S : 個人認為你的一些基本功沒有做足.
------
-------------------------------------------------------------------------
走是為了到另一境界,停是為了欣賞人生;未走過千山萬水,怎知生命的虛實與輕重!?
m9520213
一般會員


發表:13
回覆:7
積分:4
註冊:2007-12-03

發送簡訊給我
#3 引用回覆 回覆 發表時間:2008-01-26 22:13:18 IP:218.175.xxx.xxx 訂閱
嗯嗯!謝謝版大~~受教了!!
------
HI~~
系統時間:2024-04-28 9:25:34
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!