سلام و سال نو مبارک انشاالله که سال خوبی داشته باشید...
آقا من این ای سی رو که یه ای سی ولوم دیجیتال هست رو گرفتم و این ای سی با پروتکل I2C کار میکنه من تا حالا با I2C کار نکردم یه چنتا مشکل دارم...
1) تو این ار تباط یه بیتی هست به اسم ACKNOWLEDGE که مخفف میشه ACK این بیت تصدیق هست اینو مستر میفرسته یا اسلیو
2) من با کدویژن کار میکنم و برای ارتباط از کتابخونه کدویژن استفاده کردم فرق بین I2C با TWI چیه چرا تو کدویزارد کدویژن هردو رو اورده به اسم I2C تو یکیش فرکانس و ACK رو میشه تعیین کرد ولی تو اون یکی نمیشه و پین SCL و SDA رو میشه تعیین کرد قضیه چیه
3) این ای سی برای کنترل صدا 80 تا پله داره نمیدونم چرا درست پله هارو پشت سرهم نمیره این برنامه و دیتا شیت برنامه ای که نوشتم صدا رو کم وزیاد میکنه و پلهاش درست نیست
من کدوم رو باید انتخاب کنم TWI یا I2C

http://www.4shared.com/document/d-lpL-zH/PT2257.html
#include <mega32.h>
#include <delay.h>
// I2C Bus functions
#asm
.equ __i2c_port=0x1B ;PORTA
.equ __sda_bit=0
.equ __scl_bit=1
#endasm
#include <i2c.h>
void vol (unsigned char volin){
i2c_start();
ask=i2c_write(0x88);
ask=i2c_write(0xe0 | volin/10);
ask=i2c_write(0xd0 | volin%10);
i2c_stop();
}
آقا من این ای سی رو که یه ای سی ولوم دیجیتال هست رو گرفتم و این ای سی با پروتکل I2C کار میکنه من تا حالا با I2C کار نکردم یه چنتا مشکل دارم...
1) تو این ار تباط یه بیتی هست به اسم ACKNOWLEDGE که مخفف میشه ACK این بیت تصدیق هست اینو مستر میفرسته یا اسلیو
2) من با کدویژن کار میکنم و برای ارتباط از کتابخونه کدویژن استفاده کردم فرق بین I2C با TWI چیه چرا تو کدویزارد کدویژن هردو رو اورده به اسم I2C تو یکیش فرکانس و ACK رو میشه تعیین کرد ولی تو اون یکی نمیشه و پین SCL و SDA رو میشه تعیین کرد قضیه چیه
3) این ای سی برای کنترل صدا 80 تا پله داره نمیدونم چرا درست پله هارو پشت سرهم نمیره این برنامه و دیتا شیت برنامه ای که نوشتم صدا رو کم وزیاد میکنه و پلهاش درست نیست
من کدوم رو باید انتخاب کنم TWI یا I2C

http://www.4shared.com/document/d-lpL-zH/PT2257.html
#include <mega32.h>
#include <delay.h>
// I2C Bus functions
#asm
.equ __i2c_port=0x1B ;PORTA
.equ __sda_bit=0
.equ __scl_bit=1
#endasm
#include <i2c.h>
void vol (unsigned char volin){
i2c_start();
ask=i2c_write(0x88);
ask=i2c_write(0xe0 | volin/10);
ask=i2c_write(0xd0 | volin%10);
i2c_stop();
}
دیدگاه