Re: 時序的計算?
|
||||
---|---|---|---|---|
版主
|
1. 系統時脈 Tosc=64MHz ,指令週期 Fcy=16MHz,也就是說指令是以 16MIPS的速度在執行。
2. Timer1 的輸入是用 Tcy,所以要用 16MHz 去計算。 3. 取樣時間受溫度及輸入阻抗影響其計算方式如下: Tc = -18pF (250 + 1.2K + 2.5K ) In (1/8192) = 0.641uS (取樣時間)TSMP = 0.5us + 0.641uS+ (25oC-25oC)(0.05/oC) = 1.141uS 轉換時間是固定的為 714nS * 14 Tad = 10uS, 所以12-bit ADC 需 10uS + 1.14uS = 11.14uS 10-bit ADC 約為 2uS + 1uS = 3uS 4. 在 dsPIC30F Family Reference Manual 第 19-3-1 就有 UART Baud Rate Table 可供參考。
發表於: 2005/5/23 16:23
|
|||
|
Re: 時序的計算?
|
||||
---|---|---|---|---|
新會員
|
不好意思!!因為剛用dsPIC所以問題比較多,煩請版主解答時可用c30回答小弟的問題!!
發表於: 2005/5/23 15:34
|
|||
|
Re: PIC chip 購置
|
||||
---|---|---|---|---|
版主
|
訂單的處理都有一固定的成本,從代理商開始-->到Microchip 分公司-->再到 Microchip 總公司 中間經過的人力處理都是成本,所以少量訂單還是可以考慮用 buy.Microchip 會比較方便,尤其是買一些 Demo Board 的時候,單一片版子代理商很難湊到最低下單的需求的。
發表於: 2005/5/23 15:33
|
|||
|
Re: TC3400是有缺陷嗎?
|
||||
---|---|---|---|---|
版主
|
按時間來看這顆IC已經上了年紀了,原先是 Telcom 旗下的產品,Microchip 一直要設計一個新的元件替換她,只是到現在還沒發佈而已,所以新的設計不建議客戶使用這顆,但新元件也還沒出來就是這樣尷尬。
發表於: 2005/5/23 15:24
|
|||
|
Re: pic使用連續記憶體
|
||||
---|---|---|---|---|
版主
|
應該是用 FSR 的定址模式,這樣才可以定到RAM的位址。
但連續100個 byte 在 PIC16 只有少數幾個較大顆的可以做到例如:PIC16F87x (因為最大連續位址為 0x20 ~ 0x7F),但在PIC18F 裡就可以連續使用超過256 byte以上的資料。 PIC16F877為例:
CBLOCK 0x20
發表於: 2005/5/23 15:04
|
|||
|
時序的計算?
|
||||
---|---|---|---|---|
新會員
|
(1)假設外部震盪器使用8MHZ*8(倍頻),預除器為1;那經過除4電路後;系統時脈是不是為64MHZ?指令時脈是不是為16MIPS?
(2)由上述系統時脈,以TIMER1為例做一定時中斷功能時,"定時"的值要如何去做計算與設計?? (3)AD轉換功能;轉換速度最快為多少(取樣時間+轉換時間) -已知:AD_10為500Ksps ;AD_12為100Ksps- (4)是否有UART鮑率,震盪器與dsPIC設定值(可以整除)的對照表
發表於: 2005/5/23 14:55
|
|||
|
Re: 請教PIC18F252的應用
|
||||
---|---|---|---|---|
新會員
|
謝謝版主~問題解決了,跟你說的一樣.
那再請教大大們我的下列程式想在PORTB以掃描的方式顯示出0,1.,3...9而我現在的功能只能顯示我單獨輸入的數值,那我還需要加些什麼嗎? #include <p18f252.h> #define SW1 PORTAbits.RA3 #define SW2 PORTAbits.RA4 unsigned char i; unsigned char debounce; //*************************************** //* Program Main ( ) * //*************************************** void main(void) { TRISA=0x00; PORTA=0x50; TRISC=0x00; PORTC=0x03; TRISB=0x00; PORTB=0xF0; ADCON1=0b00000110; TRISAbits.TRISA3=1; TRISAbits.TRISA4=1; debounce=0; while(1) { if (debounce==0) { if (!SW1) { PORTB++; debounce=30; } if (!SW2) { PORTB--; debounce=30; } } else { if (SW1 & SW2) { debounce--; for (i=0;i<50;i++); } else debounce=30; } } }
發表於: 2005/5/23 14:41
|
|||
|
Re: LCD 顯示中文問題
|
||||
---|---|---|---|---|
版主
|
很久以前(倚天中文最暢銷得時候)為了中文加速顯示關係那時我都用依天所提供的 24x24 中文字型燒到EPROM裡,再計算倉頡輸入以取得字型的起始位址後將該字讀出來,這種方式應該很多老前輩都知道,那時候很辛苦可是為了顯示中文也很流行。
發表於: 2005/5/23 14:12
|
|||
|
Re: dsPIC震盪器選用
|
||||
---|---|---|---|---|
版主
|
dsPIC 震盪頻率只要不超過120MHz(內部) 就可以。會選用 7.3728MHz 主要是符合 UART 的標準傳送速率並使用16倍頻後可以得到接近30MIPS (118MHz)的效率。
dsPIC的 XT 或 EC mode 的輸入範圍為 4MHz ~ 10MHz , 用4倍頻的輸出範圍建議值為 16MHz~40MHz 用8倍頻的輸出範圍建議值為 32MHz~80MHz 用16倍頻的輸出範圍建議值為 64MHz~120MHz 妳可以用 7.5MHz *16 = 120MHz 或 8MHz * 8 =64MHz都可以
發表於: 2005/5/23 14:01
|
|||
|