Страница 1 из 1

ICM vs ATMEGA

Добавлено: Вт авг 08, 2017 07:05:43
leftmails
Друзья!
Помогите пожалуйста с дешифрацией сигнала.
Есть устройство в котором используется ICM7218.
http://lib.chipdip.ru/159/DOC000159556.pdf
Мне нужно вывести информацию на LCD.
Идея такая, что считывать данные на входе ICM и дешифровать
В качестве контролера используется мега 16. Компилятор аврстудио.

Начал с:

Код: Выделить всё

char icm_mode,icm_write,icm_id[8];
		if ((1 << PD6) & i){icm_id[6]=1;}else{icm_id[6]=0;}
		if ((1 << PD7) & i){icm_id[5]=1;}else{icm_id[5]=0;}

if ((1 << PA0) & i1){icm_id[3]=1;}else{icm_id[3]=0;}
if ((1 << PA1) & i1){icm_id[2]=1;}else{icm_id[2]=0;}
if ((1 << PA2) & i1){icm_id[0]=1;}else{icm_id[0]=0;}		
if ((1 << PA3) & i1){icm_id[1]=1;}else{icm_id[1]=0;}
if ((1 << PA4) & i1){icm_id[4]=1;}else{icm_id[4]=0;}	
if ((1 << PA5) & i1){icm_mode=1;}else{icm_mode=0;}	
if ((1 << PA6) & i1){icm_write=1;}else{icm_write=0;}	
if ((1 << PA7) & i1){icm_id[7]=1;}else{icm_id[7]=0;}

Почитав даташит не совсем понял как работает связка Моде, врайт.
Пожалуйста помогите разобраться с работой ICM? что то туплю сижу(((

Re: ICM vs ATMEGA

Добавлено: Вт авг 08, 2017 07:18:17
7seg
На буржуйском форуме есть небольшой туториал.
http://www.rocketnumbernine.com/2010/11 ... led-driver

Re: ICM vs ATMEGA

Добавлено: Вт авг 08, 2017 07:53:41
leftmails
Я собирал с этого сайта, запускал один из индикаторов, один сегмент и считывал, на меге через уарт выводило:

Код: Выделить всё

writre-(1), mode(0)
id0-(0),id1(0),id2(1)
id3(0),id4(0),id5(0),id6(0),id7(1)
===-------===
writre-(1), mode(1)
id0-(0),id1(0),id2(1)
id3(0),id4(0),id5(0),id6(0),id7(1)
===-------===
writre-(0), mode(1)
id0-(0),id1(1),id2(1)
id3(0),id4(1),id5(1),id6(0),id7(0)
===-------===
writre-(1), mode(1)
id0-(0),id1(1),id2(1)
id3(0),id4(1),id5(1),id6(0),id7(0)
===-------===
writre-(1), mode(0)
id0-(0),id1(1),id2(1)
id3(0),id4(1),id5(1),id6(0),id7(0)
===-------===
writre-(0), mode(0)
id0-(0),id1(0),id2(1)
id3(0),id4(0),id5(0),id6(0),id7(1)
===-------===
writre-(1), mode(0)
id0-(0),id1(0),id2(1)
id3(0),id4(0),id5(0),id6(0),id7(1)
===-------===
writre-(1), mode(1)
id0-(0),id1(0),id2(1)
id3(0),id4(0),id5(0),id6(0),id7(1)
===-------===
writre-(0), mode(1)
id0-(0),id1(1),id2(1)
id3(0),id4(1),id5(1),id6(0),id7(0)
===-------===
writre-(1), mode(1)
id0-(0),id1(1),id2(1)
id3(0),id4(1),id5(1),id6(0),id7(0)
===-------===
writre-(1), mode(0)
id0-(0),id1(1),id2(1)
id3(0),id4(1),id5(1),id6(0),id7(0)
===-------===
writre-(0), mode(0)
id0-(0),id1(0),id2(1)
id3(0),id4(0),id5(0),id6(0),id7(1)
===-------===
writre-(1), mode(0)
id0-(0),id1(0),id2(1)
id3(0),id4(0),id5(0),id6(0),id7(1)
===-------===
Что меня ввело в больший ступор.
По адресам самих индикаторов понятно, а вот вот запись в сегмент...