![]() |
感謝各位大神的幫忙,我認真思考,再調試 |
weqeq23 發表于 2022-8-29 14:46 這是基本條件和應用代碼
|
這么用2個IO??P5.5接VCC,試一下 |
coody_sz 發表于 2022-8-29 14:32 我覺得你可能沒有認真看我的回復 |
j1ason 發表于 2022-8-29 10:38 樓主用STC8G1K08A的P5.5輸出高電平,分壓后供P5.4 ADC取樣,這樣用沒有什么問題,但與 “I/O復用方式” 沒有干系。所謂復用是指同一個I/O口同時或分時執行兩個以上功能。出現異常波形當然是代碼問題。 |
樓主,理論上可行但如果不可控因素更多的話還是建議慎用,從你給的程序看完全就是測的P5.5的電壓,這跟你前面描述的情況完全不符啊http://www.zg4o1577.cn/bbs/forum.php?mod=redirect&goto=findpost&ptid=223192&pid=1105390 |
P5.5是穩定輸出高電平,P5.4進行AD轉換(輸入口)。通過AD轉化實現溫度檢測。 |
Y_G_G 發表于 2022-8-27 00:21 你這種情況,屬于電源問題,電源做好,不要有跌落,就不會復位,我用這個MCU做燈控也比較多,沒發現你說的問題。 |
Y_G_G 發表于 2022-8-29 11:29 8G1K穩定性好象是不好 我搞了個GPS時鐘服務 因為8G1K 20PIN的有雙串口就用這片子 超過2秒收不到GPS數據會報一下警告 大概穩定工作了半年 開始間隔報警 然后越來越頻繁 我以為是GPS模塊的問題 連模塊帶天線都換了一套也沒什么用 換了8G1K片子正常工作了 然后過半年 又不行了 但重新刷一下程序 一點沒動的程序 就又能穩定工作半年 應該不是電源的問題 這個模塊12VDC和12v電池雙供電 電源為主和電池為主都試過 一樣 |
cnos 發表于 2022-8-29 09:58 跟硬件肯定是沒有關系的了,估計是日光的鎮流器,只有在開燈的時候有復位現象,連續開燈十幾二十次就會有一次復位 同一塊PCB板子,直接換上PIC12F615,搭線測試,開了半個小時,沒有一次復位的 用于測試的程序很簡單,首先排除程序的問題 就是什么功能都沒有,就是開機之后,控制IO先低電平并延時0.5秒,然后,就是一直開燈,幾行代碼而已,ADC什么的都沒有用 只要開機之后出現滅燈的,就是復位了 |
Y_G_G 發表于 2022-8-26 17:18 unsigned char ADC_NTC(void) { unsigned char b; P5M0 = 0X00; P5M1 = 0X20; P_SW2 |= 0x80; ADCTIM = 0x3f; P_SW2 &= 0x7f; ADCCFG = 0x0f; ADC_CONTR = 0x85; _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); ADC_CONTR |= 0x40; _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); while (!(ADC_CONTR & 0x20)); ADC_CONTR &= ~0x20; b = ADC_RES 由于電路設計需要 |
xxxevery 發表于 2022-8-28 19:38 理論上還是可以的 |
程序問題,還得慢慢自己研究,那么多人用基本不會出現如此簡單的錯誤 |
coody_sz 發表于 2022-8-26 16:28 收到,另外,目前波形中P5.5已經是推挽輸出模式的了 |
Y_G_G 發表于 2022-8-27 00:21 不至于這么慘吧,同樣用STC8G1K08A-QFN 做了一個24V電源的監控處理板,沒聽用戶反饋什么問題,帶的是無刷電機。 |
Y_G_G 發表于 2022-8-27 00:21 抗干擾與你的電路設計有關,你的STC單片機用了幾個電容?多大容量的? |
P5.5接穩定高電平,那為啥不直接接到電源呢,不知咋想的。IO口輸出是經過了內部的輸出電路的,不管輸出高、低電平都會受到輸出電路內阻的影響,拿來作為AD的參考電壓很不合適啊 |
188610329 發表于 2022-8-26 15:29 STC8G1K08A 每個IO都有ADC功能,一塊二一片,性價比還是蠻可以的 就是抗干擾不怎么好,我DIY一個太陽能路燈,只是LED燈的線架在220V上而已,有時候開日光燈,這板子就復位了,我還打了20個板子,準備回家用呢......有點后悔了,當初應該用PIC12F615的 |
1,為什么要這么操作? 2,代碼上傳 |
一般建議NTC接地,這樣用什么問題嗎?P5.5要設置為推挽輸出。 |
j1ason 發表于 2022-8-26 14:14 P5.5 是不可能穩定輸出高電平的,你要穩定的話,只能 10K電阻的另一頭接VCC,把P5.5 開漏模式 輸出穩定的低電平 才有可能實現“穩定” |
STC8G 那么多產品中, 我還真沒找到 可以用 P5.4 測AD的型號, 所以,連示波器都用上了, 不能先看看 產品規格書么? |
上圖中在ADC過程,P5.5是穩定輸出高電平,P5.4進行AD轉換(輸入口)。通過AD轉化實現溫度檢測。 |
你這個問題描述的也太簡單了吧,哪個口是adc輸入,哪個口是IO口,實現的功能和出現的現象等都應該描述清楚才好解決啊 |
你這個怎么要I/O口呀,上面I/O的電壓要固定一個值才行。 |
ADC端口復用受外部硬件條件限制,也就是在ADC采樣時段其他外部硬件呈高阻,不影響ADC采樣電壓。從你的圖看不出你要怎么復用。 |
沒看明白,你說下你的操作過程。 |
沒明白你是怎么復用的不說明清除不好說 |
說明一下,P55與P54的電壓由誰提供。 這個圖在P55、P54做AD時,無外界提供電壓,AD采樣接近0。 P55、P54做IO時,則是示波器的圖形。 而且又不批出,黃線是誰的波形,藍線是誰的波形。在什么情況下的波形。 全靠別人猜。 溝通表達能力差。 |
剛好遇到了,STC技術告知的解決辦法:在ADC腳對地接一顆103電容。 http://www.zg4o1577.cn/bbs/forum.p ... p;page=1#pid1105080 |