سلام
من میخواستم MCP41 رو راه اندازی کنم برنامش رو هم نوشتم ولی داخل پروتئوس که جواب نمیده. برنامه ای که نوشتم اینه:
نه تنها توی این فورم بلکه تو هیچ سایتی هم تا به حال مثالی ازش ندیدم هر جا هم که کسی پرسیده بهش پیشنهاد دادن از PWM استفاده کنه. ممکنه کمک کنید یک بار برای همیشه این آی سی رو راه اندازی کنیم؟
تو دستور اول دو تا بیت اول(از سمت چپ) که مهم نیستن. دو تا بیت دوم هم که برای نوشتن باید 01 باشن دو تا بیت بعدی هم باز مهم نیستن و دو تا بیت آخر هم برای انتخاب کاناله که باز تو این آی سی مهم نیست چون تک کانالست. پس فقط بیت سوم و چهارم مهمه.
دستور دوم هم که ولوم رو تغییر میده اما هر مقداری میذارم بی تاثیره.
من میخواستم MCP41 رو راه اندازی کنم برنامش رو هم نوشتم ولی داخل پروتئوس که جواب نمیده. برنامه ای که نوشتم اینه:
کد:
#include <mega32.h> #include <spi.h> void main(void){ PORTA=0x00; DDRA=0x00; PORTB=0x00; DDRB=0xB0; PORTC=0x00; DDRC=0x00; PORTD=0x00; DDRD=0x00; // SPI initialization // SPI Type: Master // SPI Clock Rate: 921.600 kHz // SPI Clock Phase: Cycle Start // SPI Clock Polarity: Low // SPI Data Order: MSB First SPCR=0x50; SPSR=0x00; spi(0b00010001); spi(0b10000000); while (1); }
تو دستور اول دو تا بیت اول(از سمت چپ) که مهم نیستن. دو تا بیت دوم هم که برای نوشتن باید 01 باشن دو تا بیت بعدی هم باز مهم نیستن و دو تا بیت آخر هم برای انتخاب کاناله که باز تو این آی سی مهم نیست چون تک کانالست. پس فقط بیت سوم و چهارم مهمه.
دستور دوم هم که ولوم رو تغییر میده اما هر مقداری میذارم بی تاثیره.
دیدگاه