• slider image 442
  • slider image 483
  • slider image 484
  • slider image 485
  • slider image 486
  • slider image 487
  • slider image 488
  • slider image 491
:::

論壇索引


Board index » All Posts




訪客
關於 A/D 轉換的問題
訪客-訪客
原本我的Vref是用AN3,但現在用VDD,問題來了
之前我用AN3當參考電壓是比方我設5V好啦…而通道的電壓為4.799V
則ADRES暫存器的值為F5,粉正常嘛,但我若用VDD為參考電壓也是5V,則通常的電壓為4.799V~而ADRES反而變之FF....請問這是啥情形呢

頂部


不知是用pic 或是 dspic
中級會員
中級會員


我有一個合作計劃是要驅動複合式 lcd,使用電壓3.3V以下,配合廠商使用 arm 的單晶片(聽他們說的16 bit的),但是因為使用pic 習慣及時間壓力,故想說用pic or dspic 來取代不知 pic or dspic 是否有 可直接 run 3.3 V以下的 demo board ,可作先行測試抱歉因工作關係今年的產品說明會沒參加故有點狀況外

發表於: 2004/8/20 13:22
頂部


Re: 時鐘問題
版主
版主


/* 程式功能:使用HI-TECH C,4MHz crystal,連接中階PIC, 達到每0.05秒中斷一次。

因為Interrupt latency,在使用內部(同步)中斷源時,固定為3 Tcy,
所不管主程式正在做什麼事,time-out之後,都會在相同的時機跳到
中斷處理程式。

由於不論寫值到 TMR1L或TMR1H都會使prescaler清為零,
所以,不要寫值到TMR1L或TMR1H,或者不要用prescaler會比較簡單。

如果,所接的crystal頻率,可以造成不必使用prescaler,又可以只
寫值到TMR1H,就可以不用考慮到中斷產生後,到寫值進TMR1L時,TMR1L
已經又遞增,不為零的情況。如32768Hz便滿足這個條件:不要使用prescaler,
只要讓它free-run,就會很準地每2秒進位到0000產生中斷一次;或者,只要
每次中斷填0x80到TMR1H,不要去動TMR1L,就可以每一秒中斷一次 */

#include <pic.h>
#define TMR1H_VALUE 256-(unsigned char)((4000000/4 * 0.05)/256)-1 //0.05改為0.01就可變成0.01秒中斷一次
#define TMR1L_VALUE 256-(unsigned char)(4000000/4 * 0.05) % 256 //0.05改為0.01就可變成0.01秒中斷一次
void init(void)
{
TMR1L=TMR1L_VALUE;
TMR1H=TMR1H_VALUE;
T1CON=0B00000001;
TMR1IF = 0;
TMR1IE = 1;
GIE = 1;
PEIE = 1;
}
main()
{
init();
while (1) //迴圈中的內容只是用來切換BANK,以證明計時仍然準確。
{
TRISB = 0;
PORTB ++;
TRISB = 0XFF;
PORTB ++;
}
}
interrupt void
interrupt_isr( void)
{
if (TMR1IF == 1)
{
TMR1H=TMR1H_VALUE;
TMR1L=TMR1L + TMR1L_VALUE; //以此補償中斷發生,到寫值到TMR1L的時間差要
//要注意可能因此加法,造成必須進位到TMR1H的情況
TMR1IF = 0;
NOP(); //NOP只是用來測試已
NOP(); //NOP只是用來測試已
}
else
{
NOP(); //NOP只是用來測試已
}
}

以上程式,用軟體模擬測過,很準哦!


發表於: 2004/8/20 12:59
頂部


中斷時間不對---幫幫忙
新會員
新會員


4MHZ震盪器 1秒要做250次 所以TMR0=7D,預除128
4MHZ/128/125=250,這樣對吧,下面我的的中斷程式幫忙看一下
INT0:
movwf W_Tmp
movf STATUS,w
clrf STATUS
movwf STATUS_Tmp
movf PCLATH,w
movwf PCLATH_Tmp
clrf PCLATH

bcf STATUS,RP0
btfsc INTCON,T0IF
call T0

End_Int:
movf PCLATH_Tmp,w
movwf PCLATH
movf STATUS_Tmp,w
movwf STATUS
movf W_Tmp
retfie

;-------------------------------------------
;------------ TIMER0 INTERRUPT--------------
;-------------------------------------------
T0:
; bsf T0Flag,0
incf Tcount
call CheckT
bcf STATUS,RP0
bcf INTCON,2

return

發表於: 2004/8/20 10:54
頂部


Re: 請問dspic30F2010中的PORTB與LATB之間的差異?
新會員
新會員


謝謝囉..我大概知道要怎麼處理...
對囉..像我使用30F2010這一顆IC的Timer1時..我要怎麼設定我中斷的時間呢?其中有關的戰存器有T1con及PR,而我使用的震盪器是7.37MHZ,我要如何設定才可以產生每1秒產生中斷的情況呢?經倍頻*4後,funcy=7.37MHZ的震盪器的內部工作內頻30MHZ,每一指令週期為0.135us,其中我參考了範例程式T1CON=0x8030,PR=funcy/256/2,可以產生0.5秒的中斷情況,其中PR為什麼要除256及除2呢?
有公式可循嗎?
謝謝..

發表於: 2004/8/20 0:37
頂部


Re: 無法用icd2的除錯模式...
版主
版主


在ICD2的完整包裝中,有一張大海報,其中有關於ICD2和PIC之間連接電路的詳細描述。

如果海報沒了,到Microchip美國網站搜尋ICD2 poster,大概可以找到它的電子檔。

感謝jubel將經驗分享出來。

發表於: 2004/8/19 23:30
頂部


Re: 時鐘問題
資深會員
資深會員


;4MHZ TMR1預除1
;使用預除2/4/8 有可能產生 1/62500~2/62500的誤差 16~32PPM



INT_TMR1:
BCF PIR1,TMR1IF
MOVLW 0XDC
ADDWF TMR1L,F
MOVLW 0X0B
SKPNC
MOVLW 0X0C
ADDWF TMR1H,F
;62500CYCLE 中斷一次
;中斷16次即一秒

發表於: 2004/8/19 11:10
頂部


Re: 無法用icd2的除錯模式...
資深會員
資深會員


抱歉...
昨晚再去別處測試
弄一兩小時才發現問題
ICD2沒問題
是我的電路有問題

我的線路是直接把MCLR接去ICD2
沒有接其他元件
(我以為除錯時MCLR是ICD2控制的,所以沒接到VCC)
昨晚試的結果
MCLR需要用顆電阻接到VCC
(電阻值跟ICD2有關,前晚測試的兩台,阻值相同,一台可用一台不可用...)
再一顆電容接地(有時不需要)
才可以使用除錯模式

抱歉浪費各位的時間 X_X

發表於: 2004/8/19 8:57
頂部


MCLR 當成輸出用!?
高級會員
高級會員


各位前輩好:
我記得在一本書上看過, 可以把 MCLR 當成輸出用, 可是我忘記裡面的內容.
請問前輩們, 可以這樣做嗎? 怎麼做??

Ming....!!

發表於: 2004/8/19 8:28
頂部


Re: 時鐘問題
版主
版主


就我所知,一般crystal的精度大約是50ppm。也就是說,程式寫得正確的話,一天誤差最多86400 * 50 /1000000 秒 ~ 4.32秒。

注意一點,就我的經驗,發現,crystal外殼要接地,否則,用手摸一下,頻率就跑掉了。

最近幾天,回問題時都快下班了,所以,偷懶了一些。希望順水推舟,讓提問題者自行找出解答。一定收穫、體認更大。

過兩天比較有空。

再提示:
仔細看一下timer 1的用法,也許要注意pre-scaller。

發表於: 2004/8/18 18:35
頂部



« 1 ... 7445 7446 7447 (7448) 7449 7450 7451 ... 7523 »



:::

Microchip連結

https://www.facebook.com/microchiptechnologytaiwan/
http://www.microchip.com.tw/modules/tad_uploader/index.php?of_cat_sn=13
https://mu.microchip.com/page/tmu
http://elearning.microchip.com.tw/modules/tad_link/index.php?cate_sn=1
https://page.microchip.com/APAC-PrefCenters-TW.html
http://www.microchip.com/
http://www.microchip.com/treelink
http://www.microchipdirect.com/
http://www.microchip.com.cn/newcommunity/index.php?m=Video&a=index&id=103
http://www.microchip.com.tw/modules/tad_uploader/index.php?of_cat_sn=2
http://www.microchip.com.tw/Data_CD/eLearning/index.html
http://www.microchip.com.tw/RTC/RTC_DVD/
https://www.microchip.com/development-tools/
https://www.youtube.com/user/MicrochipTechnology
[ more... ]

教育訓練中心

!開發工具購買
辦法說明 [業界客戶] [教育單位]
----------------------------------
!校園樣品申請
辦法說明 [教師資格] [學生資格]
----------------------------------