Saya menggunakan PIC18F4680 dan saya mengalami masalah menjalankannya membentuk sumber clock eksternal 40 MHz atau kristal 10 MHz dalam mode HSPLL. Menggunakan kristal 10 MHz dalam mode HS tampaknya baik-baik saja dan kristal 5 MHz dalam mode HSPLL juga berfungsi dengan baik.
Apa yang terjadi adalah bahwa PIC mulai, bekerja selama beberapa detik dan kemudian dimatikan untuk sementara waktu dan mulai lagi. Total periode siklus adalah sekitar 5 detik dari mana PIC bekerja berhenti bekerja di awal detik kedua.
Saya juga memperhatikan bahwa kadang-kadang ketika saya menambahkan kapasitor kosong yang cukup besar ke bus daya papan tempat memotong roti, PIC akan bekerja dengan baik. Poin yang menarik adalah bahwa ini hanya terjadi jika saya menambahkan kapasitor saat PIC sudah berjalan. Jika saya menyalakan papan tempat memotong roti dengan kapasitor di sana atau saya menempatkan kapasitor yang belum sepenuhnya habis masalahnya tetap ada.
Saya telah membaca di beberapa situs bahwa masalah yang mirip dengan tambang dapat terjadi karena peningkatan konsumsi daya PIC pada frekuensi yang lebih tinggi dan tegangan operasi terendah yang lebih tinggi. Dalam kasus tersebut, jika ada beberapa jatuh tegangan pendek pada catu daya, mereka lebih cenderung mencapai tegangan operasi terendah dari PIC pada frekuensi itu sehingga ide yang baik untuk memiliki kapasitor tambahan di papan tempat memotong roti untuk menyelesaikan masalah itu. Karena di bawah beban penuh pada 40 MHz, seluruh rangkaian menggunakan sekitar 64 mA, ide pertama saya adalah untuk meletakkan beberapa kapasitor tantalum berharap bahwa mereka akan cukup besar dan memiliki ESR cukup rendah untuk memperbaiki masalah. Satu tidak membantu dan yang kedua tidak membantu juga. Jadi saya menambahkan 100 μ Fkapasitor aluminium dan itu tidak membantu. Lalu aku menambahkan aluminium kapasitor untuk tidak berpengaruh. Pada akhirnya, saya menambahkan kapasitor elektrolit aluminium 1 mF dan kemudian untuk pertama kalinya rangkaian bekerja dengan baik sampai dimatikan dan pada daya. Saya juga harus mencatat bahwa untuk tujuan pengujian saya menggunakan Vcc 5,5 V yang merupakan tegangan pengenal tertinggi untuk mikrokontroler ini. Ini harus meninggalkan saya ruang sampai 4.2 V yang merupakan tegangan operasi terendah pada 40 MHz
Karena panjang kawat dari output osilator ke input osilator di PIC, saya mengharapkan masalah dengan itu, tapi saya tidak mengharapkan masalah dengan kristal 10 MHz yang sangat dekat dengan pin osilator pada PIC. Juga dengan kristal, saya akan mengharapkan masalah dalam mode HS juga, jika distorsi sinyal osilator karena papan tempat memotong roti adalah masalah, tetapi dalam mode HS, PIC bekerja dengan baik.
Saya biasanya menggunakan kapasitor 33 pF untuk kristal, tapi saya sudah mencoba 15 pF juga dan saya tidak bisa mendeteksi perubahan.
Saya juga harus mencatat bahwa PIC ini memiliki monitor jam gagal-aman dan pergantian osilator internal / eksternal. Saya sudah mencoba mengaktifkan keduanya, berharap bahwa mereka setidaknya akan mengkonfirmasi bahwa masalahnya ada pada osilator, tetapi mereka tidak membantu dengan masalah tersebut. Tidak ada perbedaan apakah mereka hidup atau mati.
Saya juga menonaktifkan untuk keperluan pengujian pengawas waktu, reset brown-out dan stack over / underflow reset. Saya pikir saya mematikan semua sumber reset untuk chip ini. Juga program ini berada dalam loop tak terbatas, sehingga tidak berakhir.
PCF8583 tidak memiliki masalah dan terus beroperasi dengan benar bahkan ketika PIC mengatur ulang sendiri, tetapi di sisi lain ia memiliki tegangan minimum yang jauh lebih rendah.
Sayangnya, saya tidak memiliki osiloskop, tetapi saya melakukan beberapa pengujian dengan kartu suara (sample rate 96 kHz) dan saya perhatikan ketika RTC aktif, ada sekitar 25 Hz noise di saluran listrik. Program yang saya gunakan melaporkan sekitar 300 mV dari puncak ke puncak, tapi saya tidak tahu seberapa banyak mempercayainya dan saya tidak tahu apakah itu cukup untuk menimbulkan masalah bagi PIC. Ketika semuanya mati, kebisingan sekitar 100 mV dari puncak ke puncak, jadi itu tidak masalah.
Dalam hal ini membantu, inilah gambar papan tempat memotong roti itu sendiri: (klik kanan-> lihat gambar untuk ukuran penuh)
Jadi, adakah yang tahu apa yang terjadi di sini?
Pada akhirnya, saya bisa menjalankan PIC pada 20 MHz, tetapi jika saya membutuhkan lebih banyak kekuatan pemrosesan, saya ingin dapat menjalankannya pada 40 MHz.
MEMPERBARUI
Saya telah menempatkan regulator lain di papan tempat memotong roti itu sendiri dan suara yang diambil oleh kartu suara sekarang jauh lebih rendah (sekitar 50 mV dari puncak ke puncak), tetapi itu tidak mempengaruhi masalah utama.