• slider image 532
  • slider image 533
  • slider image 538
  • slider image 539
  • slider image 540
  • slider image 541
  • slider image 542
:::

論壇索引


Board index » All Posts (minusone)




Re: PIC16F877的RB6作為按鍵輸入無法使用
#1
版主
版主


建議您移除在每個按鍵旁的電容,或者在該電容串個電阻 (如1k),以消除在按鍵時因電容被瞬間短路時產生的大電流。如附圖。
上述的這個大電流,除了產生很大的雜訊以外,還有可能因為按鍵的彈跳,使該電流在按鍵彈開那一瞬間,因電流無處流而流向PIC腳,造成無法預期的結果。不要問說為何只有RB6這樣,反正不正當使用PIC,結果就是不可預期。
我看到您說RB6串電阻就正常,才確認應該是這個問題。

很常看到大家喜歡在按鍵旁並電容以消除彈跳或雜訊,但是,依以上論述,只加電容是不好的!不然的話,您用原本線路,把0.1uF改成1uF甚至10uF試看看:可能連其它的腳都會不正常。甚至,PIC腳可能會被打壞!

最省材料成本,也應該是最正確的做法應該是:
1、移除按鍵的並聯電容。
2、在程式進入中斷時,多檢查幾次腳位的狀態,以達到debounce的效果。

Attach file:



jpg  Forum.jpg (22.33 KB)
11_67f48719ebdcd.jpg 206X336 px

發表於: 4/8 10:17
頂部


Re: 關於PIC16F74
#2
版主
版主


PIC16系列,相同腳數的大約腳位都相容。所以,去找一顆PIC16相同腳數相同包裝的,要替換大概都不難。

發表於: 2022/7/26 10:44
頂部


Re: 中斷所使用的變數需加 volatile 的疑問
#3
版主
版主


Project Properties -> XC8 Global Options -> XC8 Compiler -> Option categories -> Optimizations

參照:

jhlarn wrote:
版主

看起來是因為 C compiler 在把程式最佳化時出現意外的結果
那在 C compiler 有無什麼設定, 可以不做這類的最佳化???

發表於: 2020/9/9 8:45
頂部


Re: 中斷所使用的變數需加 volatile 的疑問
#4
版主
版主


volatile變數,就是在主程式以外,有可能會被改變值的變數。
所以,只要是在中斷程序中會被改值的變數,都應該把它宣告為volatile變數,否則可能C compiler在把程式最佳化時,會把一些絛件看起來一定不會成立的程序省略掉。
例如:
A = 1;
if (A==0)
{
LED = 1;
}
如果沒有把A宣告為volatile,則 if之後的所有程序都有可能會被移除。

另外,Special Function Register也有機會在不經過程式運行的情形下產生改變,所以,C compiler也會先行把它們宣告成volatile。

發表於: 2020/9/8 10:24

Edited by Steven on 2020年09月08日 12:03:02
頂部


Re: CTMU 輸出恆流源,AD取樣電壓測試
#5
版主
版主


有線路圖嗎?傳上來看看。

發表於: 2020/5/8 15:30
頂部


Re: 2010 秋季 Microchip嵌入式設計論壇 (Seminar)
版主
版主



發表於: 2010/10/13 16:43
頂部



(1) 2 3 4 ... 39 »



:::

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

教育訓練中心

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