проблем с pic16f87 Mikrobasic

Z

zkt

Guest
Следния код работи добре, когато стойността на ухапване е вътре под I2C_send_byte процедура. Но когато, преди да наричаме под SDA не се променя, когато код работи в под. И SCL промени правилно вътре и извън суб. От двата начина на писане на IF линия нито един. Аз съм заседнал. Всяка помощ оценявам. [Код] програма неделя PIC 16F87 слаба захапка, малко, ПТУ като байт "помрачени CONST tda_adr като байт =% 10001000 под I2C_send_byte процедурата" захапка =% 10101010, с изключение на тази линия причинява SDA не се променя за малко = 0 до 7 trisb = 0 delay_us (50) "Ако ((захапка и 128) = 128) След това, ако захапка и 128 = 128 TRISA = 128", ЗУТ, ако настоящите tda_data малко е висока друго TRISA = 0 "друго, TDA ниско края ако ухапе = захапка portb е изход. тъй като portb = 0 portb.7 = логика 0 TRISA = 128 delay_us (50) TRISA = 0 "trisb = 128 => portb.7 е вход. с нищо да дръпнете напрежение ниско delay_us (50) "RPU ще тегли на напрежението високо и portb.7 = висока trisb = 0 връщане i2c_stop: delay_us (50) trisb = 1 TRISA = 0 delay_us (50) TRISA = 128 delay_us ( 50) края на връщане. [/ код]
 
Там резолюция все още. пристъп готов да го напиша в ASM и напишете Mikrobasic за добро
 

Welcome to EDABoard.com

Sponsor

Back
Top