سلام من برنامه زیر رو برای راه اندازی ماژول آلتراسونیک srf05 با بسکام نوشتم و از کریستال خارجی 16 مگا هرتز استفاده کردم با atmega32 معمولی برنامه به درستی اجرا میشه و فاصله رو درست نشون میده اما با atmega32A فواصل بالای 30 سانتیمتر رو اشتباه نشون میده لطفا راهنمایی کنین که مشکل کجاست ؟
کد:
$regfile = "m32def.dat" $crystal = 16000000 Dim D As Single Dim B As String * 10 Dim A As Word Config Pinb.0 = Output Config Pinb.1 = Input Config Lcd = 16 * 2 Config Lcdpin = Pin , Db4 = Porta.0 , Db5 = Porta.1 , Db6 = Porta.2 , Db7 = _ Porta.3 , Rs = Porta.4 , E = Porta.5 Portc.5 = 0 D = 0 Again: Pulseout Portb , 0 , 20 Pulsein A , Pinb , 1 , 1 A = A * 8 D = A / 5 D = D * 1.12 B = Fusing(d , "#.#") Cls : Lcd "distance = " ; B ; " mm" Waitms 500 Goto Again End
دیدگاه