Gunslinger |
Дата: Вс, 15.04.2012, 16:15 | Сообщение # 1 |
Группа:
Удаленные
Ранг:
Сообщений:
Статус:
|
Добрый день столкнулся с такой проблемой: Подключил ADS1100 к PIC16F877A, вывел на LCD показания АЦП, но они не превышают 2047 т.е. 11 бит из 16
Вот код:
Sens var word Dclock var PortB.3 Ddata var PortB.2 Control con %10010000
main: I2CREAD Ddata,Dclock,Control,%10010000,[Sens] LCDOUT $FE,1, Dec Sens PAUSE 500 GOTO main
В чем может быть проблема?
|
|
|
|
DNM |
Дата: Вс, 22.04.2012, 19:04 | Сообщение # 2 |
Группа:
Проверенные
Ранг:
Понимаю
Сообщений:
75
Замечания:
±
На сайте с 29.09.2011
Статус:
Offline
|
можно упростить постановку задачи... где-то так..-
r var word ' as Sens 'PORTB.0 - CLK 'PORTB.1 - DATA 'PORTB.2 - CS
load: portb.2=0 'разрешаю считывание 'так как АЦП 16-разрядный, то считываем 16 бит r.15=.. '16 bit r.14=.. '15 bit r.13=.. '14 bit r.12=.. '13 bit r.11=.. '12 bit r.10=.. '11 bit r.9=portb.1 '10 bit <разряд> pulsout portb.0,1 r.8=portb.1 '9 bit pulsout portb.0,1 r.7=portb.1 '8 bit pulsout portb.0,1 r.6=portb.1 '7 bit pulsout portb.0,1 r.5=portb.1 '6 bit pulsout portb.0,1 r.4=portb.1 '5 bit pulsout portb.0,1 r.3=portb.1 '4 bit pulsout portb.0,1 r.2=portb.1 '3 bit pulsout portb.0,1 r.1=portb.1 '2 bit pulsout portb.0,1 r.0=portb.1 '1 bit pulsout portb.0,1 portb.2=1 'запрет считывания return
Более подробно здесь: http://asemlab.net/
|
|
|
|