• 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 (Blake)




Re: PIC單片機休眠模式時的功耗
#51
高級會員
高級會員


才剛寫過休眠...
Configuration Bits 的 POR 或 BOR關掉有差...
不需要的模組關掉..輸入端若浮接也有影響 ...
Pull-high電阻也有影響...我後來電阻接47K..

我之前用16F946,待機時靠外部31K振盪喚醒,
執行LCD模組顯示,還有AD功能ON..
耗電大約在3~5uA(指針量測)..應該可以再更省..
不過已達客戶要求..所以就沒再繼續試了...
參考看看....

發表於: 2007/8/15 12:22
頂部


Re: 5V 使用RE0 讀取AD值不到200???
#52
高級會員
高級會員


剛找時間又測了AN6,AN7..結果都正常...
然後又回測AN5..也正常了..
電路跟之前測試的4個樣品..不同在輸入電路的電容..
有問題的都是裝鉭質電容..現在測試都是裝電解電容..
等客戶把樣品寄回後我再測看看是不是輸入電容造成的...
麻煩各位了....謝謝~~

發表於: 2007/8/14 13:54
頂部


5V 使用RE0 讀取AD值不到200???
#53
高級會員
高級會員


晶片型號 16F946
小弟同時使用AN1,AN4,AN5...
AN1,AN4都很正常..
AN5(RE0)..我在sensor斷路時..
量得電壓為4.99v左右..但是AD值讀取卻只有195左右??
然後我將RE0 改為 RA2(AN2) ...5V讀取就大於250?
是不是有大大遇過相同的問題??
還是沒把其它模組設定好造成的?? 謝謝~



發表於: 2007/8/13 15:06
頂部


Re: 如何在 巨集內 goto 巨集內的 label
#54
高級會員
高級會員


加一行 local m_loop
可以看一下mpasm的說明....


發表於: 2007/8/8 13:35
頂部


Re: PICC complier 問題??
#55
高級會員
高級會員


感謝版大還有Eigen的幫忙...
的確是版本太舊的問題..
排除9.60 complier的錯誤訊息後..
連原來切bank的問題也都ok了....
謝謝各位了...


發表於: 2007/7/31 10:07
頂部


Re: PICC complier 問題??
#56
高級會員
高級會員


上面的問題..在呼叫一個副程式時,會直接跳到中斷執行..
怪的是..返回的位址也錯亂掉..看stack也才4層而已...
就這樣..執行到呼叫就跳中斷...中斷後又回到while迴圈啟始..
感覺就好像page沒切好..完全搞不清楚是什麼情況...
找了v9.60的版本..連要complier過都有一堆看不懂的錯誤..
真是一波多折..想想還是改組語好了.....

發表於: 2007/7/31 2:51
頂部


Re: PICC complier 問題??
#57
高級會員
高級會員


難道...用 c 也要自己切頁嗎????....
把幾段程式拿掉..complier $0186 - $07FF程式執行就ok...
把程式加入後..$0186 - $0830..呼叫副程式會亂跳?
真的是...太莫名奇妙了...我電腦是中毒了嗎??
C18好用多了..microchip怎沒出C16...


Program ROM $0000 - $0181 $0182 ( 386) words
Program ROM $0186 - $0830 $06AB ( 1707) words
******************************************
$082D ( 2093) words total Program ROM

Bank 0 RAM $0021 - $006D $004D ( 77) bytes
Bank 0 RAM $0070 - $0074 $0005 ( 5) bytes
$0052 ( 82) bytes total Bank 0 RAM

Bank 2 RAM $0120 - $0124 $0005 ( 5) bytes total Bank 2 RAM
Bank 0 Bits $0100 - $0103 $0004 ( 4) bits total Bank 0 Bits
Config Data $2007 - $2007 $0001 ( 1) words total Config Data


Program statistics:

Total ROM used 2093 words (25.5%)
Total RAM used 88 bytes (26.2%)

發表於: 2007/7/30 23:16
頂部


PICC complier 問題??
#58
高級會員
高級會員


105:               //****************************//
106:               //                      顯示        //
107:               //***************************//
108:               void TuneLvLed (void)
109:               {
110:                   if (fTuneSel)
  0693    0183     
CLRF 0x3
  
0694    1DA2     BTFSS 0x220x3
  
0695    2E9C     GOTO 0x69c
111
:                   {
112:                       oLed5= !oLed5;
  0696    
1683     BSF 0x30x5
  
0697    1703     BSF 0x30x6
  
0698    3008     MOVLW 0x8
  
0699    0688     XORWF 0x8F
113
:                       oLed6 1;
  069
A    1508     BSF 0x80x2
114
:                   }
  069
B    0008     RETURN  *****BANK3??*****
115:                   else
116:                   {
117:                       oLed6= !oLed6;
  069
C    1683     BSF 0x30x5
  
069D    1703     BSF 0x30x6
  
069E    3004     MOVLW 0x4
  
069F    0688     XORWF 0x8F
118
:                       oLed5 1;
  
06A0    1588     BSF 0x80x3
119
:                   }
120:               }
  
06A1    0183     CLRF 0x3 *****BANK0???*****


void test (void)
{
              while(
bcnt >0)
              {
                    
TuneLvLed();
                    
bcnt --; <---- ftunesel 1bank3
                               
;         ftunesel 0bank0
              
}
}


唉....找問題找到快吐血了...找到後...還真是欲哭無淚....
使用hi-tech c v8.05, chip 16f946
bcnt 宣告在bank0....
fTuneSel = 1時...
執行完TuneLvLed();
竟然沒有切回bank0? ...
突然..不知道該怎麼繼續寫下去...

感覺...這是 Complier 的 Bug...還是我沒設定好參數??
還是這個版本的complier還沒支援到16f946??
是不是有前輩可以提供較新版本供測試....感謝~

發表於: 2007/7/30 15:17
頂部


Re: 用pic如何讀取IR信號
#59
高級會員
高級會員


謝謝Eigen大大..剛有看了一下..滿多格式的..謝謝
底下程式是擷取出來的..不完整..
接收IR是用取樣的方式寫的..格式跟市售的也不太一樣
不過只要修改checkbit的部份..應該也可以相容...
有機會我再拿家裡的遙控器玩玩看..
感謝各位提供相關寶貴的知識..又認識到滿多東西的...

傳輸碼格式
start bit hi 3.6ms/lo 1.2ms
bit 0 hi 1.2ms/lo 0.6ms
bit 1 hi 0.6ms/lo 1.2ms
end bit hi 0.6ms
hold time lo 12.6ms

; IO定義
iRcv EQU 3 ; PORTB

dRange EQU D'2' ; 取樣次數正負承認範圍
dRcvBit EQU D'63' ; 63bit
dResetDuty EQU '60' ; 12ms/200us = 60 (12.6ms為發射間隔時間)
dStartBitA EQU D'18' ; 3.6ms/200us = 18
dStartBitB EQU D'6' ; 1.2ms/200us = 6
dBitDutyA EQU D'6' ; 1.2ms/200us = 6
dBitDutyB EQU D'3' ; 600us/200us = 3

bRcvBuf0 EQU H'70' ; Command
bRcvBuf1 EQU H'71' ;
bRcvBuf2 EQU H'72' ;
bRcvBuf3 EQU H'73' ;
bRcvBuf4 EQU H'74' ;
bRcvBuf5 EQU H'75' ;
bRcvBuf6 EQU H'76' ;
bRcvBuf7 EQU H'77' ; CheckSum

bRcvACnt EQU H'78' ; Lo 取樣次數
bRcvBCnt EQU H'79' ; Hi 取樣次數
bRcvBitCnt EQU H'7A' ; 64BIT資料位元
bTEMP EQU H'7B'

FLAG_RCV EQU H'7C'
fPinStatus EQU 7 ; 上一次狀態
fRcvStart EQU 6 ;
fRcvBits EQU 5
fRcvEnd EQU 4

;=======================;
; 紅外線接收取樣程式(200us)
;=======================;
pRcvCode:
.. BTFSS PORTB,iRcv
.. GOTO RCV_A
;-----------------------------------------------; HIGH
RCV_B:
.. BANKSEL FLAG_RCV
.. BTFSC FLAG_RCV,fPinStatus
.. GOTO CHK_BCNT
;-----------------------------------------------; LO->HI
.. BSF FLAG_RCV,fPinStatus ;
.. BTFSC FLAG_RCV,fRcvEnd
.. GOTO CLR_BCNT
.. BTFSS FLAG_RCV,fRcvBits
.. GOTO CLR_BCNT
;-----------------------------------------------; CHECK_END_BIT
CHECK_END_BIT:
.. mCheckBit bRcvACnt,dBitDutyB ; END BIT, LO->600us
.. SKPNC
.. GOTO ERR_BCNT

.. CLRC
.. CALL pShiftBit ; 移位1bit(同步資料64bit)

.. CALL pCheckData ; 資料接收成功,檢查CheckSum
.. SKPZ
.. GOTO ERR_BCNT

.. CALL pLoadData ; 資料正確,載入資料
.. BSF FLAG_RCV,fRcvEnd ;
.. GOTO CLR_BCNT
;-----------------------------------------------; HI
CHK_BCNT:
.. MOVLW dResetDuty; CHECK RESET RCV
.. SUBWF bRcvBCnt,W
.. SKPC
.. GOTO INC_BCNT
ERR_BCNT:
.. MOVLW B'10000000'
.. ANDWF FLAG_RCV,F
CLR_BCNT:
.. CLRF bRcvBCnt
INC_BCNT:
.. INCF bRcvBCnt,F
.. GOTO EXIT_RCV
;-----------------------------------------------; LOW
RCV_A:
.. BANKSEL FLAG_RCV
.. BTFSS FLAG_RCV,fPinStatus
.. GOTO INC_ACNT
;-----------------------------------------------; HI->LO
.. BCF FLAG_RCV,fPinStatus ;
.. BTFSS FLAG_RCV,fRcvStart
.. GOTO CHECK_START_BIT
.. BTFSS FLAG_RCV,fRcvBits
.. GOTO CHECK_DATA_BIT
.. GOTO CLR_ACNT
;-----------------------------------------------;CHECK_START_BIT
CHECK_START_BIT:
.. mCheckBit bRcvACnt,dStartBitA
.. SKPNC
.. GOTO CLR_ACNT
.. mCheckBit bRcvBCnt,dStartBitB
.. SKPNC
.. GOTO CLR_ACNT

.. BSF FLAG_RCV,fRcvStart
.. MOVLW dRcvBit
.. MOVWF bRcvBitCnt
.. GOTO CLR_ACNT
;-----------------------------------------------; CHECK_DATA_BIT
CHECK_DATA_BIT:
.. mCheckBit bRcvACnt,dBitDutyA
.. SKPNC
.. GOTO _CDB10
.. mCheckBit bRcvBCnt,dBitDutyB
.. SKPNC
.. GOTO ERR_ACNT
.. CLRC
.. GOTO _CDB20
_CDB10:
.. mCheckBit bRcvACnt,dBitDutyB
.. SKPNC
.. GOTO ERR_ACNT
.. mCheckBit bRcvBCnt,dBitDutyA
.. SKPNC
.. GOTO ERR_ACNT
.. SETC
_CDB20:
.. CALL pShiftBit
.. DECFSZ bRcvBitCnt,F
.. GOTO CLR_ACNT

.. BSF FLAG_RCV,fRcvBits
.. GOTO CLR_ACNT
;-----------------------------------------------;
ERR_ACNT:
.. MOVLW B'10000000'
.. ANDWF FLAG_RCV,F
CLR_ACNT:
.. CLRF bRcvACnt
INC_ACNT:
.. INCF bRcvACnt,F
EXIT_RCV:
.. BANKSEL PORTB
.. BCF STATUS,PA0
.. GOTO MAIN_10



發表於: 2007/7/6 12:58
頂部


Re: 用pic如何讀取IR信號
#60
高級會員
高級會員


版大是不是有曼徹斯特碼或NRZ相關的格式說明...
因為目前小弟用的信號格式是上頭規定的方式
我並不清楚這是屬於哪一種編碼系統..
想多了解一點...謝謝

發表於: 2007/7/6 8:28
頂部



« 1 ... 3 4 5 (6) 7 8 9 ... 13 »



:::

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... ]

教育訓練中心

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