vấn đề với pic16f87 Mikrobasic

Z

zkt

Guest
Các mã sau đây chạy tốt khi giá trị của cắn được thiết lập bên trong I2C_send_byte thủ tục con. Nhưng khi thiết lập trước khi gọi, phụ sda không thay đổi khi mã chạy trong các tiểu. Và SCL thay đổi đúng cách bên trong và bên ngoài các tiểu. Trong hai cách viết dòng IF không phải một trong các công trình. Tôi bị mắc kẹt. Bất kỳ trợ giúp đánh giá cao.
Code:
 pic 16F87 'chương trình chủ nhật mờ cắn, bit, tmp như byte' tda_adr const mờ như byte =% 10001000 tiểu thủ tục I2C_send_byte cắn =% 10101010 không bao gồm dòng này gây ra sda để không thay đổi cho bit = 0 đến 7 TRISB = 0 delay_us (50) "Nếu ((cắn, 128) = 128) Sau đó, nếu cắn và 128 = 128 sau đó TRISA = 128 'thiết lập TDA nếu bit tda_data hiện nay là cao khác TRISA = 0' thiết lập khác TDA thấp kết thúc nếu cắn cắn PORTB là đầu ra. kể từ PORTB = 0 portb.7 = logic 0 TRISA = 128 delay_us (50) TRISA = 0 'TRISB = 128 => portb.7 là đầu vào. không có gì để kéo các delay_us điện áp thấp (50) 'Rpu sẽ kéo cao và portb.7 thế = cao TRISB = 0 trở lại i2c_stop: delay_us (50) TRISB = 1 TRISA = 0 delay_us (50) TRISA = 128 delay_us ( 50) trở lại kết thúc
 
Ở đó Không có độ phân giải chưa. cơn sẵn sàng để viết nó trong asm và viết Mikrobasic cho tốt
 

Welcome to EDABoard.com

Sponsor

Back
Top