|
Re: PIC 16F877可以馬達速度補償嗎??
|
||||
|---|---|---|---|---|
|
版主
![]()
|
PID 是 Proportional Intergal Differential三個字的縮寫,中文叫做「比例積分微分」器。
是什麼碗糕呢? 我常舉「撞牆」來作比喻: 當一個人想要跑向遠方的一道牆時,如果距離越遠,想要越快跑到目標,一定越用力的跑。也就是說,用力的程度和距離呈「比例」。 當跑了許久還跑不到,就應該更用力的跑。也就是說,用力的程度,和之前的距離及目前距離的總和,也就是距離的「積分」呈正比。 當快要跑到終點了,為了避免撞牆,用力的程度就應該要降低。也就是說,用力的程度,應該要依現在離牆的距離和剛剛離牆距離的差,即「微分」,而適當降低。 也就是說,PID是人類很自然的行為。拿它來作為控制的方法,也是很自然的事。如果腦袋夠清楚,寫程式的技巧也夠,就算不看別人的範例,自己也做得出來。
發表於: 2006/3/20 21:44
|
|||
|
||||
|
Re: 12f509 wake up 的問題
|
||||
|---|---|---|---|---|
|
版主
![]()
|
是的。
另外,可以利用STATUS的內容不同,來判別先前的RESET是由何種原因造成的。
發表於: 2006/3/7 13:37
|
|||
|
||||
|
Re: 12f509 wake up 的問題
|
||||
|---|---|---|---|---|
|
版主
![]()
|
list P=12f509
我用軟體模擬,測上面的程式,可以WAKE UP (reset) FROM PIN CHANGE啊! 啊哈!我想到了,您應該是以為在醒來之後,程式要往sleep以下的指令跑,對不對? 實際上,PIC12F509的動作是: RESET FROM PIN CHANGE. 只有14-BIT架構的PIC才會往SLEEP以下的指令跑。
發表於: 2006/3/7 0:07
|
|||
|
||||
|
Re: 12f509 wake up 的問題
|
||||
|---|---|---|---|---|
|
版主
![]()
|
您的GPIO接腳是怎麼接的呢?
發表於: 2006/3/6 21:34
|
|||
|
||||
|
Re: BRGH 要如何使用
|
||||
|---|---|---|---|---|
|
版主
![]()
|
有些 baud rate,就是要BRGH = 0 (或1)才設得出來。
發表於: 2006/3/1 17:43
|
|||
|
||||
|
Re: 誰可以救我ㄚ Pic16F946 UART ISSUE
|
||||
|---|---|---|---|---|
|
版主
![]()
|
http://ww1.microchip.com/downloads/en/devicedoc/41265a.pdf page 136, TABLE 11-3
其中的 Fosc = 4MHz. 您使用8MHz,那就選表中1200 bit rate的就對了。
發表於: 2006/3/1 17:29
|
|||
|
||||
|
Re: 關於I2C devive使用C18指令的問題
|
||||
|---|---|---|---|---|
|
版主
![]()
|
data這一欄不填的話,compiler過不了吧!
C18的函式庫有原始程式碼可以看。也許找到原始碼,自己改寫一下,創一個新的函式就可以了。
發表於: 2006/3/1 15:05
|
|||
|
||||
|
Re: BRGH 要如何使用
|
||||
|---|---|---|---|---|
|
版主
![]()
|
有公式,記載於 PIC16F946 DATA SHEET 的TABLE 11-1。
發表於: 2006/3/1 14:57
|
|||
|
||||
|
Re: 誰可以救我ㄚ Pic16F946 UART ISSUE
|
||||
|---|---|---|---|---|
|
版主
![]()
|
1、如依您將BRGH設為0,依DATA SHEET中的表格,SPBRG應設為51較準。
2、就算您的8MHz完全無誤差,也不可能用8MHz創造出2400 bit rate。一切都是由計算公式算出來的。 3、倘若要達到準確2400 bit rate,大概就一定要搭配OSCTUNE使用,微調8MHz。 4、但是,內部RC振盪頻率會受溫度及電壓影響,要考慮進去。
發表於: 2006/3/1 14:55
|
|||
|
||||