Помогите разобраться новичку - Страница 7 - Форум Picbasic.ru
Регистрация | Вход
[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
Страница 7 из 11«12567891011»
Модератор форума: demanik 
Форум Picbasic.ru » Программирование МК » Proton PicBasic » Помогите разобраться новичку (как правильно?)
Помогите разобраться новичку
MiXaS Дата: Чт, 21.11.2013, 20:58  |                                                                                                                Сообщение # 91
Группа: Проверенные
Ранг:  Разобрался
Сообщений: 613
Репутация: 26   ±
Замечания:   ±
На сайте с 02.10.2010

Статус: Offline

Спасибо! Не было у меня этого файла. Может сильно старый протон? 3.5.2.6.

Немного через ж poor пу, но работает вроде. Единственное при первой попытке компилтрования вылезло куча ошибок, связано это с тем, что в коде указано одно имя файла, а по факту немного по другому называется.

Устранив этот недочет снова компильнул, но компилятор сказал: неа не дам hex! В файте с расширением inc есть строка:

#if((Return_Type == Word) || (Return_Type == SWord))

Изменил тип данных на просто ворд и все скомпилировалось, проверил в протеусе все заработало. Думаю это опечатка. Раньше никогда не встечал такой тип данных. Короче заработало, уже хорошо.

Спасибо

Сообщение отредактировал MiXaS - Чт, 21.11.2013, 21:07
ЯНДЕКС Дата: 21.11.2013
xvovanx Дата: Пт, 22.11.2013, 14:40  |                                                                                                                Сообщение # 92
Группа: Проверенные
Ранг:  Могу и подсказать
Сообщений: 247
Репутация: 12   ±
Замечания:   ±
На сайте с 02.05.2013

Статус: Offline

Цитата anatol ()
Искал выкройки трусов для внука


И такое на форуме есть? Думаю пару микроконтролеров вшить стоит, чтоб не баловался roll
xaker-sss Дата: Вс, 24.11.2013, 14:25  |                                                                                                                Сообщение # 93
Группа: Проверенные
Ранг:  Могу и подсказать
Сообщений: 198
Репутация: 1   ±
Замечания:   ±
На сайте с 26.04.2009

Статус: Offline

Подскажите идиоту как в переменой B изменить бит в цикле, запарился уже
по идее должно быть так
FOR A = 0 TO 7
B.A = PORTB.0 
NEXT A
но не выходит


ПРОТОН ЭТО ВЕЩЬ.
anatol Дата: Вс, 24.11.2013, 15:54  |                                                                                                                Сообщение # 94
Группа: Проверенные
Ранг:  Разобрался
Сообщений: 535
Репутация: 13   ±
Замечания:   ±
На сайте с 10.02.2010

Статус: Offline

Круто! Я бы не догадался так сделать. Есть вероятность чого что переменная цикла существует сама по себе и не относится к объявленным переменным. Надо проверить как-то.
Вопрос по существу. У вас что, байт переменной В должен заполнится значением "0" разряда порта В по времени?

Сообщение отредактировал anatol - Вс, 24.11.2013, 15:54
dimitriy-bc Дата: Вс, 24.11.2013, 16:31  |                                                                                                                Сообщение # 95
Группа: Проверенные
Ранг:  Могу и подсказать
Сообщений: 190
Репутация: 1   ±
Замечания:   ±
На сайте с 19.03.2012

Статус: Offline

xaker-sss, честно говоря я вообще не понял, что Вы хотите сделать?
mnbv Дата: Вс, 24.11.2013, 17:22  |                                                                                                                Сообщение # 96
Группа: Проверенные
Ранг:  Начал соображать
Сообщений: 22
Репутация: 0   ±
Замечания:   ±
На сайте с 09.03.2011

Статус: Offline

Не изящно, но работает.
Код
For a = 0 To 7
b.0 = PORTB.0
b =  b<<1
Next a  
End
xaker-sss Дата: Вс, 24.11.2013, 17:51  |                                                                                                                Сообщение # 97
Группа: Проверенные
Ранг:  Могу и подсказать
Сообщений: 198
Репутация: 1   ±
Замечания:   ±
На сайте с 26.04.2009

Статус: Offline

Блин че с сайтом, avast орет, отключаю еле загружается раз из 10.
Да надо в цикле заполнить переменную битами, короче записать вот эту последовательность в переменные. см.скрин.
Прикрепления: 7929142.jpg(327Kb)


ПРОТОН ЭТО ВЕЩЬ.
dimitriy-bc Дата: Вс, 24.11.2013, 21:16  |                                                                                                                Сообщение # 98
Группа: Проверенные
Ранг:  Могу и подсказать
Сообщений: 190
Репутация: 1   ±
Замечания:   ±
На сайте с 19.03.2012

Статус: Offline

mnbv, может так.

Main:
    For a = 0 To 7
        b = b<<1
        b.0 = 1
    Next
    a = 0
    b = 0
    GoTo Main
End
mnbv Дата: Вс, 24.11.2013, 21:26  |                                                                                                                Сообщение # 99
Группа: Проверенные
Ранг:  Начал соображать
Сообщений: 22
Репутация: 0   ±
Замечания:   ±
На сайте с 09.03.2011

Статус: Offline

Не совсем согласен, вроде надо "вписать" в бит b состояние порта. В моем коде ошибка - сдвигать b надо 7 раз. Код становится некрасивым, может быть есть другое решение.
Я как-то тоже 1:1 хотел сделать как ТС, нашел другое решение, но забыл, какое.
ivan_fd Дата: Вс, 24.11.2013, 21:31  |                                                                                                                Сообщение # 100
Группа: Модераторы
Ранг:  Специалист
Сообщений: 882
Репутация: 47   ±
Замечания:   ±
На сайте с 12.01.2009

Статус: Offline

Если в протоне, то так:

Код
For a = 0 To 7
    If PORTB.0 = 0 Then  
     ClearBit b, a  
    Else  
     SetBit b, a
    EndIf
  Next


Меня все время преследуют умные мысли...но я быстрее!!!
mnbv Дата: Вс, 24.11.2013, 21:42  |                                                                                                                Сообщение # 101
Группа: Проверенные
Ранг:  Начал соображать
Сообщений: 22
Репутация: 0   ±
Замечания:   ±
На сайте с 09.03.2011

Статус: Offline

Точно, SetBit использовал!
dimitriy-bc Дата: Пн, 25.11.2013, 00:01  |                                                                                                                Сообщение # 102
Группа: Проверенные
Ранг:  Могу и подсказать
Сообщений: 190
Репутация: 1   ±
Замечания:   ±
На сайте с 19.03.2012

Статус: Offline

Цитата mnbv ()
Не совсем согласен, вроде надо "вписать" в бит b состояние порта.

Ну если вписывать в переменную состояние одного пина порта, меняющегося во времени,  то в цикле надо организовать и синхронизацию приема. А так наверно то, что предложил ivan_fd, только добавить сдвиг после записи каждой единици информации.

Сообщение отредактировал dimitriy-bc - Пн, 25.11.2013, 00:04
xaker-sss Дата: Пн, 25.11.2013, 08:55  |                                                                                                                Сообщение # 103
Группа: Проверенные
Ранг:  Могу и подсказать
Сообщений: 198
Репутация: 1   ±
Замечания:   ±
На сайте с 26.04.2009

Статус: Offline

Цитата ivan_fd ()
For a = 0 To 7     
If PORTB.0 = 0 Then       
ClearBit b, a     
Else       
SetBit b, a     
EndIf   
Next
Да вот тут меня протон удивил, такой команды не имеет, так я тоже думал, но это-же глупо так писать, но раз по другому нельзя, будем делать так.


ПРОТОН ЭТО ВЕЩЬ.
dimitriy-bc Дата: Пн, 25.11.2013, 16:59  |                                                                                                                Сообщение # 104
Группа: Проверенные
Ранг:  Могу и подсказать
Сообщений: 190
Репутация: 1   ±
Замечания:   ±
На сайте с 19.03.2012

Статус: Offline

xaker-sss, Если не секрет, то с чего и для чего Вы собираетесь считывать информацию?
xaker-sss Дата: Пн, 25.11.2013, 18:13  |                                                                                                                Сообщение # 105
Группа: Проверенные
Ранг:  Могу и подсказать
Сообщений: 198
Репутация: 1   ±
Замечания:   ±
На сайте с 26.04.2009

Статус: Offline

Пульт ДУ LG, вроде от какой-то автомагнитолы.

ПРОТОН ЭТО ВЕЩЬ.
Форум Picbasic.ru » Программирование МК » Proton PicBasic » Помогите разобраться новичку (как правильно?)
Страница 7 из 11«12567891011»
Поиск: