ccs c de doğrudan kullanabilirsiniz.
#define digipot_cs pin_b0//bu pinleri mcu nun istediğiniz bir pinine atayabilirsiniz.
#define digipot_sclk pin_b1//bu pinleri mcu nun istediğiniz bir pinine atayabilirsiniz.
#define digipot_si pin_b2//bu pinleri mcu nun istediğiniz bir pinine atayabilirsiniz.
void set_pot(unsinged int digital_pot_bilgi)
{
unsigned int digipot_fonk_sayaci=0;//değişken tipi ccs için ayarlandı
output_low(digipot_cs); // dijital pot veri algılama aktif
delay_ms(20);
output_low(digipot_sclk);
output_low(digipot_si);
for(digipot_fonk_sayaci=16;digipot_fonk_sayaci>=1;digipot_fonk_sayaci--)
{
output_low(digipot_si);
switch(digipot_fonk_sayaci)
{
case 16: output_low(digipot_si); break;
case 15: output_low(digipot_si); break;
case 14: output_low(digipot_si); break;
case 13: output_high(digipot_si); break;
case 12: output_low(digipot_si); break;
case 11: output_low(digipot_si); break;
case 10: output_low(digipot_si); break;
case 9 : output_high(digipot_si); break;
case 8 : if(bit_test(digital_pot_bilgi,7)==1){output_high(digipot_si);} break;
case 7 : if(bit_test(digital_pot_bilgi,6)==1){output_high(digipot_si);} break;
case 6 : if(bit_test(digital_pot_bilgi,5)==1){output_high(digipot_si);} break;
case 5 : if(bit_test(digital_pot_bilgi,4)==1){output_high(digipot_si);} break;
case 4 : if(bit_test(digital_pot_bilgi,3)==1){output_high(digipot_si);} break;
case 3 : if(bit_test(digital_pot_bilgi,2)==1){output_high(digipot_si);} break;
case 2 : if(bit_test(digital_pot_bilgi,1)==1){output_high(digipot_si);} break;
case 1 : if(bit_test(digital_pot_bilgi,0)==1){output_high(digipot_si);} break;
}
delay_ms(1);
output_high(digipot_sclk);
delay_ms(1);
output_low(digipot_sclk);
}
delay_ms(1);
output_low(digipot_si);
output_low(digipot_sclk);
output_high(digipot_cs); // dijital pot veri algılama pasif
}