Re: 關於CLKOUT...
|
||||
---|---|---|---|---|
資深會員
|
指令看起來是對的,但還是沒辨法同步吧,因為輸出是clk/4也就是10F200 4Mhz,12F508 1MHz.
不知道你要做什麼功能需要2顆MCU同步???
發表於: 2007/7/10 9:52
|
|||
|
Re: 我的中斷時間怎麼算不對!?
|
||||
---|---|---|---|---|
資深會員
|
答案是正確的,而且非常之準...周期是4MS
timer1 input clock = sysytem clock /4 = 5MHz T = 1/f = 1/5Mhz = 0.2 us 0-0xd8f0 = 10000 10000 * 0.2 = 2000 us =2 MS T =HI 2MS + LO 2MS = 4MS
發表於: 2007/7/9 21:18
|
|||
|
Re: 關於Timer0...
|
||||
---|---|---|---|---|
資深會員
|
放心吧,C的宣告其實也不會太難...曾百由老師的書第4章就是在說記憶體宣告的部分,當然如果你覺得有什麼不夠的地方也可以去看看microchip的data sheet會有更清楚的說明...
C Complier User's guide
發表於: 2007/7/9 21:02
|
|||
|
Re: 只有一個能夠輸出高電位
|
||||
---|---|---|---|---|
資深會員
|
你自己有做一下簡單的I/O測試來確定硬體沒問題嗎??有沒有空焊,包焊,零件極性焊錯之類的...
先把板子上的PIC拿下來,再把VCC或GND送到你說的那支I/O去看看LED是不是2個都會亮,順便把所有的I/O都測一測,確定不是人為的因素造成板子的問題,再者換顆PIC確定不是PIC壞了,再來討論吧...
發表於: 2007/7/9 15:13
|
|||
|
Re: 關於Timer0...
|
||||
---|---|---|---|---|
資深會員
|
USA-LA,有夠遙遠的啦~可以問問版主那裡有沒有workshop,其實我之前為了學PIC也到處找PIC的書,可以找來找去真的沒幾本書十支手指頭都數的完了,右手邊的範例程式第8點,慮春林寫的那本我就看過,算是寫的不錯的中文書了,至於PIC C到目前為止我只看過一本,就是曾百由寫的C語言與PIC18微控制器,雖然筆誤的地方不少,但如果想用C的話還是可以看看的.其實如果沒有同事可以討論的話,那就是能多找些書來看或是網路上找一些範例程式來參考,右手邊也有一些中文參考書也有幾本不錯的可以買來看看或多或少都有幫助的,雖然大多書上的寫法都是教學的寫法在實際應用上有差不太一樣,但基本的原理是相同的不會差太遠.
呵呵~你都用10F,12F..我都用16F57..半斤8兩,57只有一個timer0,wdt和一堆I/O其它就全部靠自己了.想想公司的前輩也真是厲害,居然用57搞汽車防盜器,而且還有2WAY的功能...真是了不起,要不是參照他們的程式做小修改,我想我也是寫不出來的,但要看懂他們的程式也真的是費了不少時間..哈哈~ 另外MCU C和一般C是不太一樣的,老實講我覺得差性還蠻大的,除了基本指令if...else...,for(;;;),while(1)...這些指令的用法相同,一些記憶體位址的宣告及使用還真是一團亂呢,討厭的是不同版本的C,宣告及使用方式又有些不同,還是要找出相關datasheet來看,但大多又寫不清楚所以用起來還真是討厭,但用C的好處是換MCU程式幾乎不用改,用ASM就...XXOO@!#! 你在LA英文不用很好嗎??我想MCU那些簡單的英文難不倒你的,你還有問題的話可以在這問,我想還有很多比我強的可以回答你,而且你也要讓我偷翻一下datasheet ^^~. 說真的你還真有毅力,只憑著一本書,一個燒錄器就可以玩的那麼高興...自從我知道有ICE2000模擬器這種好東西以後,就過著不能沒有模擬器的日子了,雖然同行一再告戒我模擬器不要常用才會增加功力,但是中毒以深難無藥可救了...^^~
發表於: 2007/7/9 9:55
|
|||
|
Re: 關於參考電壓的問題
|
||||
---|---|---|---|---|
資深會員
|
呵呵~是inputs沒錯啦,應該是一時筆誤,至於那個delay10us可以去看看datasheet,datasheet上面也有加,10us應該是讓I/O的設定轉態時間,最好是加一下,其實只要你的程式在10us之內不會讀寫I/O,不加delay也沒關係的.
發表於: 2007/7/8 2:10
|
|||
|
Re: Microchip 網站掛了嗎?
|
||||
---|---|---|---|---|
資深會員
|
很正常三不五時都會人多擁擠,晚一點再上去應該就OK了...
發表於: 2007/7/8 1:59
|
|||
|
Re: 關於CMCON register 的設定問題
|
||||
---|---|---|---|---|
資深會員
|
請再查查16f628a datasheet,有範例可以看,把cmcon設成0X07就可以把比較器關閉了.
CLRF PORTA ;Initialize PORTA by ;setting ;output data latches MOVLW 0x07 ;Turn comparators off and MOVWF CMCON ;enable pins for I/O ;functions BCF STATUS, RP1 BSF STATUS, RP0 ;Select Bank1 MOVLW 0x1F ;Value used to initialize ;data direction MOVWF TRISA ;Set RA<4:0> as inputs ;TRISA<5> always ;read as ‘1’. ;TRISA<7:6> ;depend on oscillator
發表於: 2007/7/8 1:57
|
|||
|
Re: 關於Timer0...
|
||||
---|---|---|---|---|
資深會員
|
呵呵~不用客氣啦~~
想當初我第一次看這種架構的程式時也看的很辛苦,但我的運氣比較好有同事可以問,加上公司有模擬器可以用,所以對程式的了解和使用有很大的幫助,當你看懂這種程式架構之後就會覺得他很神奇也很好用,這可是公司很多前輩的心血,當然這種架構還有很多變種的型態,這是基本型的.但功能都大同小異,加裝一個RF模組可以收RF CODE,也可以做I/O DEBOUNCE和時間的處理(還蠻準的).. 但有些同行說這個架構的程式有限制會造成程式寫不大...因為timer的時間是100us所以100us(大約400行程式)之內一定要呼叫timer程式不然時間會不準,所以主程式不可以超過400行. 但實際在使用時不可能只呼叫一次timer,可以把程式分割成很多小部分,只要各個小部分的程式都不要超過400行就可以了.那麼程式也可以寫的很大的,至少我目前用起來是這樣子的,16F57有2K的ROM都寫到快滿了,當然我用了一些共用程式碼的副程式和特殊的手法來共用程式,不然只有2K也是不夠用的... 不曉得你是在公司做還是個人玩PIC,但我的感覺是在公司或是接案子的學習速度是最快的,加上有人可以討論感覺會比較好,一個人做孤獨的英雄是很難長久的...^^~
發表於: 2007/7/8 1:46
|
|||
|