HELP!! Kontrol kecepatan motor dc dengan PIC16F877A menggunakan hi-tech

J

jun86dia

Guest
di sini adalah codes.Pls saya lakukan mencobanya .. dan katakan di mana masalah terjadi. Masalahnya adalah setiap kali saya input 1 ke RB0, CCP1 mampu menghasilkan pulsa untuk only.then 3 atau 4 siklus tidak ada pulsa .. thankz anymore.pls bantuan sebelumnya!
Code:
 # include # include # include # include "delay.h" # include void main (void) {/ / inisialisasi TRISB = 0xff; TRISC = 0x00; PORTB = 0x00; PORTC = 0x00; sementara (1) {/ / PORTB0 = 1; T2CON = 0b00000100; CCP1CON = 0b00001100; PR2 = 255; switch (PORTB) {case 0b00000001: {CCPR1L = 127; break;} default: {CCPR1L = 200; break;}}}}
[ code] [/code]
 
Hi jun86dia, Apakah Anda yakin bahwa RB0 terus dibuat tinggi? Jika tidak, maka menurut kode, nilai register CCPR1L berubah dan dengan demikian Anda mungkin tidak mendapatkan output yang tepat. Anda juga dapat menghapus inisialisasi (T2CON, CCP2CON ,...) dari loop sementara. Tidak perlu menginisialisasi mereka selalu. Anda dapat melakukannya sekali sebelum memasuki loop sementara. Salam, VHN
 
hei VHN, well, terus masukan RB0 Tinggi. dari kode saya, jika input RB0 tinggi untuk periode tertentu, secara default CPPR1L thn akan 200.however, output adalah RENDAH. bagaimana menurutmu? Btw thankz untuk info .. saya akan mengedit while ..=)-Juni-[size = 2] [color = # 999999] Ditambahkan setelah 3 menit: [/color] [/size] hei VHN, thankz. .. sekarang bekerja .. setelah menghapus inisialisasi (T2CON, CCP2CON ,...) dari loop sementara. Menghargai bantuan Anda =)-Juni-
 

Welcome to EDABoard.com

Sponsor

Back
Top