[英]Enable port RA0 as input and retrieve value LDR from led
我正在將picdem 18F4550與帶有C18編譯器的v8.63芯片一起使用。
我將使PortA設置為輸入,我將在端口RA0上連接LDR。 如下(我認為)
TRISAbits.TRISA0 = 1; <= set RA0 as input
現在,我想要LDR的值(如果LED亮則為電壓/值),我可以說:
int colorLed = PortAbits.RA0;
現在在int類型的變量中有我的LED的值/電壓。
如果我錯了糾正我。
聽起來您想測量一個模擬電壓,在這種情況下,您需要將該引腳用作AN0
而不是RA0
。 你應該閱讀的章節21 數據表 ,但總的來說,您需要使用的寄存器配置AD轉換器ADCON0
, ADCON1
和ADCON2
,讀這就是出現在結果ADRESH:ADRESL
。
請注意,您可能會使用數字輸入來讀取LDR,但將無法對其進行校准。 使用模擬輸入稍微復雜些,但要靈活得多。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.