Помогите разобраться
|
|
vpashko |
Дата: Вт, 08.07.2008, 22:58 | Сообщение # 16 |
Группа:
Пользователи
Ранг:
Новенький
Сообщений:
13
Замечания:
±
На сайте с 25.06.2008
Статус:
Offline
|
Добрый вечер. У меня такой вопрос. Можно ли между сменами комбинации (??????) вставить какую то команду, чтоб предыдущая комбинация выполнялась ну например 10 раз, а потом переход на следующую комбинацию: Symbol LED = PORTB TRISB = %00000000 main: Led = %00000001 pause 200 Led = %00000011 pause 200 Led = %00000111 pause 200 Led = %00001111 pause 200 Led = %00011111 pause 200 Led = %00111111 pause 200 Led = %01111111 pause 200 Led = %11111111 pause 200 ??????????????????????????????????????? Led = %10000000 pause 200 Led = %01000000 pause 200 Led = %00100000 pause 200 Led = %00010000 pause 200 Led = %00001000 pause 200 Led = %00000100 pause 200 Led = %00000010 pause 200 Led = %00000001 pause 200 goto main Спасибо.
|
|
|
|
sever |
Дата: Вт, 08.07.2008, 23:42 | Сообщение # 17 |
Группа:
Пользователи
Ранг:
Начал соображать
Сообщений:
35
Замечания:
±
На сайте с 15.04.2008
Статус:
Offline
|
я думаю тут проще вам для каждой комбинации написать подпрограмму напримир LED_1: ,LED2:,... и обращаться к ним через GOSUB. А сомо обращение сделать с помощью цикла FOR...NEXT. типа Code main: for n=0 to 9 'цикл от 0 до 9 gosub LED_1 ' отправить в подпрограмму LED_1 next n for n=0 to 9 gosub LED_2 next n goto main LED_1: ...ваши вариции мигалок .. . RETURN LED_2: .ваши вариции мигалок . RETURN
|
|
|
|
vpashko |
Дата: Ср, 09.07.2008, 12:34 | Сообщение # 18 |
Группа:
Пользователи
Ранг:
Новенький
Сообщений:
13
Замечания:
±
На сайте с 25.06.2008
Статус:
Offline
|
Доброе утро. Вот готовая прога из повтором каждого эффекта, в данном случаи 10 раз. Спасибо Sever, это Ваша подсказка. I var Byte Symbol LED = PORTB TRISB = %00000000 main: For I = 0 to 9 gosub LED_1 next For I = 0 to 9 gosub LED_2 next goto main LED_1: LED = %00000001 pause 200 LED = %00000011 pause 200 LED = %00000111 pause 200 LED = %00001111 pause 200 LED = %00011111 pause 200 LED = %00111111 pause 200 LED = %01111111 pause 200 LED = %11111111 pause 200 LED = 0 pause 200 RETURN LED_2: LED = %10000000 pause 200 LED = %01000000 pause 200 LED = %00100000 pause 200 LED = %00010000 pause 200 LED = %00001000 pause 200 LED = %00000100 pause 200 LED = %00000010 pause 200 LED = %00000001 pause 200 LED = 0 pause 200 RETURN goto main
|
|
|
|
sever |
Дата: Ср, 09.07.2008, 19:02 | Сообщение # 19 |
Группа:
Пользователи
Ранг:
Начал соображать
Сообщений:
35
Замечания:
±
На сайте с 15.04.2008
Статус:
Offline
|
а теперь мне нужна помощь, поля дня мучаюсь, не разберусь. ЧИП 12F675. использую внутренний RC генератор. подключаяю к нему GPIO.0-SDA GPIO.1-SCL внешнюю eeprom 24c02+ внешние потдягивающие резисторы на 10Ком на sda и scl. нифига, не читает и не пишет, если подключаю просто светодиоды к нему, нормально мигает ими. ИДЕ эмулятор вообще 24с02 не эмулирует. Смотрел цифр.осцилографом, данные идут, но не красивой формы 0 есть, а высокий уровень в бесконечность уходит, сравнивал с программатором от компьютера, так у того по осцилу красивая форма сигнала, есть низки и высокий уровень. вот код Code define intosc 4 mhz ansel=0 cmcon=7 trisio=%00001100 y VAR BYTE
sda VAR GPIO.0 scl VAR GPIO.1 addr VAR byte
cont CON %10100000 main:
loop:
program: for addr=0 to 255 I2CWRITE sda,scl,cont,addr,5 pause 20 next addr return + тоже инфа к размылению, пик питал от кроны с кренкой на 5 волть, делал просто на выводах кнопки 0 по умолчанию, включение подавал на вывод +5 вольт через резистор 10КОМ. Кнопки самовозбуждались, думал кренка помехи создает, ставил фильтр конденсаторы - не помогло. Вышел из этого положения поставив резисторы на выоды кнопок по 200КОМ и на минус... Вот меня это и смущает, может пик сильно шумит на выводах, и все их надо шунтировать на минус резисторами, кондеры не помогаюют- значит это не импульсные помехи. посоветуйте что нить дельное пожалуста.
|
|
|
|
mars_000 |
Дата: Чт, 10.07.2008, 00:09 | Сообщение # 20 |
Группа:
Проверенные
Ранг:
Начал соображать
Сообщений:
26
Замечания:
±
На сайте с 03.01.2008
Статус:
Offline
|
покажи как подключаеш 24с02 к пик. лучше всю схему, мож че не так, а там посмотрим.
|
|
|
|
ADMIN |
Дата: Чт, 10.07.2008, 05:58 | Сообщение # 21 |
Администратор
Группа:
Администраторы
Ранг:
Специалист
Сообщений:
1086
Замечания:
±
На сайте с 20.08.2007
Статус:
Offline
|
vpashko, думаю, вам поможет команда умножения на 2, записанная в одну подпрограмму: LED=1 for i = 1 to 8 LED = LED * 2 pause 200 next i А во втором случае помогает сдвиг: LED=128 for i = 1 to 8 LED=LED >> 1 pause 200 next И еще, почему от 0 до 9? Это, в общей сложности 10 раз, а разрядов в переменной LED всего 8...
|
|
|
|
sever |
Дата: Чт, 10.07.2008, 18:20 | Сообщение # 22 |
Группа:
Пользователи
Ранг:
Начал соображать
Сообщений:
35
Замечания:
±
На сайте с 15.04.2008
Статус:
Offline
|
Quote покажи как подключаеш 24с02 к пик. лучше всю схему, мож че не так, а там посмотрим. sad ОСЬ на скорую руку нарисовалДобавлено (11.07.2008, 0:20:00) --------------------------------------------- посидел поэкспериментировал с битами конфигурации, ноль. Думаю завтра купить пик с внешним кварцем и на нем сваять, так-как на етом портов нехватает.
|
|
|
|
holyuser |
Дата: Чт, 10.07.2008, 19:00 | Сообщение # 23 |
Группа:
Проверенные
Ранг:
Могу и подсказать
Сообщений:
228
Замечания:
±
На сайте с 12.12.2007
Статус:
Offline
|
А Вы на 24с02 питание подали? На рисунке что-то не видно.
|
|
|
|
sever |
Дата: Чт, 10.07.2008, 19:13 | Сообщение # 24 |
Группа:
Пользователи
Ранг:
Начал соображать
Сообщений:
35
Замечания:
±
На сайте с 15.04.2008
Статус:
Offline
|
Quote (holyuser) А Вы на 24с02 питание подали? На рисунке что-то не видно. да, подал. Ладно завтра попробую другой чип, потомучто все подозрения на биты конфигурации. По осцилографу смотрю, сигнал есть, но он кривой, сравниваю сигнал с програматора для eepromok.
|
|
|
|
vpashko |
Дата: Пт, 11.07.2008, 11:08 | Сообщение # 25 |
Группа:
Пользователи
Ранг:
Новенький
Сообщений:
13
Замечания:
±
На сайте с 25.06.2008
Статус:
Offline
|
Здравствуйте basicpic, спасибо за команды. От 0 до 9 имеется в виду повтор 10 раз каждого эффекта переключения светодиодов, можно написать от 0 до 2 (повтор 3 раза), или от 0 до 15( повтор 16 раз).
|
|
|
|
sever |
Дата: Пт, 11.07.2008, 20:41 | Сообщение # 26 |
Группа:
Пользователи
Ранг:
Начал соображать
Сообщений:
35
Замечания:
±
На сайте с 15.04.2008
Статус:
Offline
|
тааак, купил новый чип 16f676, собрал на нем схему. примпаял резисторы 4,7 КоМ на SDA и SCL ,тоже самое , не шьет 24с02 и не читает, вроде все правильно, припаял внешний кварц, кнопочками лампочками мигает, установил цифровые выходы. где эта сабака зарыта, может дело в команде I2C бока, где то в ести находил эмулцию этого протокола с помощью команд на бейсике. Кстати на эмуляторе ИДЕ все нормально.
|
|
|
|
mars_000 |
Дата: Сб, 12.07.2008, 00:36 | Сообщение # 27 |
Группа:
Проверенные
Ранг:
Начал соображать
Сообщений:
26
Замечания:
±
На сайте с 03.01.2008
Статус:
Offline
|
Quote (sever) не шьет 24с02 и не читает, вроде все правильно, припаял внешний кварц, кнопочками лампочками мигает, установил цифровые выходы биты конфигурации правильно выставляеш? Посмотри в примерах подключение памяти, не перепутал ли местами scl cda
|
|
|
|
mars_000 |
Дата: Сб, 12.07.2008, 01:25 | Сообщение # 28 |
Группа:
Проверенные
Ранг:
Начал соображать
Сообщений:
26
Замечания:
±
На сайте с 03.01.2008
Статус:
Offline
|
Quote (sever) тааак, купил новый чип 16f676, собрал на нем схему. примпаял резисторы 4,7 КоМ на SDA и SCL ,тоже самое , не шьет 24с02 и не читает, вроде все правильно, припаял внешний кварц, кнопочками лампочками мигает, установил цифровые выходы. где эта сабака зарыта, может дело в команде I2C бока, где то в ести находил эмулцию этого протокола с помощью команд на бейсике. К вот пример смотри
|
|
|
|
sever |
Дата: Сб, 12.07.2008, 17:30 | Сообщение # 29 |
Группа:
Пользователи
Ранг:
Начал соображать
Сообщений:
35
Замечания:
±
На сайте с 15.04.2008
Статус:
Offline
|
Quote биты конфигурации правильно выставляеш? Посмотри в примерах подключение памяти, не перепутал ли местами scl cda sda и scl нормально сидят, биты конфигурации такие: pic 16f676 ANSEL = 7 ' все порты.С как цифровые CMCON = 7 ' Analog comparators off а в приложении установки которые выставляю при програмировании, там все по умолчанию, может в них дело?
|
|
|
|
mars_000 |
Дата: Сб, 12.07.2008, 22:23 | Сообщение # 30 |
Группа:
Проверенные
Ранг:
Начал соображать
Сообщений:
26
Замечания:
±
На сайте с 03.01.2008
Статус:
Offline
|
Quote (sever) а в приложении установки которые выставляю при програмировании, там все по умолчанию, может в них дело? невидал такого прегера.... попробуй после програмированя прочитать биты конфигурации Я собирал примеры из книги Ч Хейлибака , с еепром все работало.
|
|
|
|