1WIRE & DS1990 (чтение ключей iBUTTON)

AVR версия программы

Re: 1WIRE & DS1990 (чтение ключей iBUTTON)

Сообщение mim (mim) » 21 фев 2014, 19:25

Дык, теперь по концу попробуй, если по началу не получилось... и минус в том что не прочел что, где и как можно приинклудить... к любому МК, да?
I Am Legend
Аватар пользователя
Ник: mim
Имя: mim
(Из Лесу, вестимо...)
Легенда
Легенда
Информация о пользователе

Re: 1WIRE & DS1990 (чтение ключей iBUTTON)

Сообщение Nicolasomsk (Nicolasomsk) » 21 фев 2014, 19:35

Наверное, да :) Есть подозрение, что считыватель не хочет получать от контроллера запросы по типу: "сколько устройств на шине" устройство же всегда одно.
Пока писал, мельком глянул код изменённого макроса, похоже это то, что мне нужно, команды заточены на чтение одного устр-ва без адрессации. Спасибо, MIM попробую поковырять.
Семь бед-один reset
Аватар пользователя
Ник: Nicolasomsk
Имя: Nicolasomsk
(Омск)
Практик
Практик
Информация о пользователе

Re: 1WIRE & DS1990 (чтение ключей iBUTTON)

Сообщение Nicolasomsk (Nicolasomsk) » 21 фев 2014, 22:10

Почти получилось. Я открыл Flowcode для ПИК и для АВР, открывал свойства разных макросов компонента, нашел закономерность-это некая приставка к команде "%a_" Например, было "oo_scratchpad[counter] = temp;" (для Пиков),а для АВР надо %a_oo_scratchpad[counter] = temp;. MIM объясни, пожалуйста, что это такое? На форуме не нашел.
И самое главное, ключ ibutton читает идеально и считанное совпадает с гравировкой на ключе, а карта шлёт черти что, но на лицо какая-то закономерность.
вот логи считанной 11 раз одной и той же карты
5F 55 DD FF 7D DD 5F 57
5F 55 DD FF 7D DD 5F 57
5F 55 DD FF 7D DD 5F 57
57 55 F7 7F 5F F7 D7 D5
57 55 F7 7F 5F F7 D7 D5
57 55 F7 7F 5F F7 D7 D5
AF AA EE FF BE EE AF AB
5F 55 DD FF 7D DD 5F 57
5F 55 DD FF 7D DD 5F 57
57 55 F7 7F 5F F7 D7 D5
57 55 F7 7F 5F F7 D7 D5

ХЗ почему данные не совподают.
У вас нет доступа для просмотра вложений в этом сообщении.
Семь бед-один reset
Аватар пользователя
Ник: Nicolasomsk
Имя: Nicolasomsk
(Омск)
Практик
Практик
Информация о пользователе
Вернуться наверх

Re: 1WIRE & DS1990 (чтение ключей iBUTTON)

Сообщение mim (mim) » 22 фев 2014, 07:05

Nicolasomsk писал(а): некая приставка к команде "%a_" Например, было "oo_scratchpad[counter] = temp;" (для Пиков),а для АВР надо %a_oo_scratchpad[counter] = temp;.

1. Это не для ПИКов и для АВР.... Это некоторые отличия 4 от 5.
2. В разных макросах 4 и 5 такие обозначения присутствуют.
3. Это способ передачи значений определенных в самой программе ФК (через свойства компонентов) в макросы компонента - это и имена переменных, и порты, и значения...
4. Открой Хелп на "Custom Component" и увидишь как это делается:
Код: выделить все
Find the section of Defines.
//common defines
#define MX_CUSTOM_1  %a
#define MX_CUSTOM_2  %b
#define MX_CUSTOM_3  %c
#define MX_CUSTOM_4  %d
#define MX_CUSTOM_5  %e
#define MX_CUSTOM_6  %f
#define MX_CUSTOM_7  %g
#define MX_CUSTOM_8  %h
#define MX_CUSTOM_9  %i
#define MX_CUSTOM_10 %j

5. Например, так это определено в макросе [Defines] One Wire (смотри код):
Код: выделить все
/**** Macro Substitutions ****
a = Unique Reference
b = CRC Check Enable (0-Off / 1-On)
c = One Wire Port Register
d = One Wire Pin
******************************/
//Global Definitions
#define    %a_OO_CRC_EN           %b
#define    %a_OO_PORT           port%c
#define    %a_OO_TRIS             tris%c
#define    %a_OO_PIN              %d
//I/O for the OO
#define    %a_Float_OO          FC_CAL_Bit_In_DDR( %a_OO_PORT , %a_OO_TRIS , %a_OO_PIN )
#define    %a_Clear_OO            FC_CAL_Bit_Low_DDR( %a_OO_PORT , %a_OO_TRIS , %a_OO_PIN )


Про карту - хорошо бы глянуть осликом согласование карты по шине (электрические характеристики)... Сходу напрашивается мысль об неустойчивых параметрах интерфейса... Пока другое ничего не приходит.
I Am Legend
Аватар пользователя
Ник: mim
Имя: mim
(Из Лесу, вестимо...)
Легенда
Легенда
Информация о пользователе
Вернуться наверх

Re: 1WIRE & DS1990 (чтение ключей iBUTTON)

Сообщение Nicolasomsk (Nicolasomsk) » 22 фев 2014, 07:28

Спасибо за информацию, MIM. Осцил есть портативный, но памяти в нем кот наплакал, попробую им прочитать или в крайнем случае логический анализатор за выходные спаяю.
Семь бед-один reset
Аватар пользователя
Ник: Nicolasomsk
Имя: Nicolasomsk
(Омск)
Практик
Практик
Информация о пользователе
Вернуться наверх

Re: 1WIRE & DS1990 (чтение ключей iBUTTON)

Сообщение Вячеслав (Вячеслав) » 22 фев 2014, 17:29

Nicolasomsk писал(а):в крайнем случае логический анализатор за выходные спаяю.

Любопытно, какой анализатор можно спаять за выходные? Иногда достаточно подключить осциллограф и посмотреть уровень сигнала и фронты.
Аватар пользователя
Ник: Вячеслав
Имя: Вячеслав
(Саратов)
Разработчик
Разработчик
Информация о пользователе
Вернуться наверх

Re: 1WIRE & DS1990 (чтение ключей iBUTTON)

Сообщение Nicolasomsk (Nicolasomsk) » 23 фев 2014, 07:07

Анализато вот такой, а осцилограф у меня, как я уже говорил, больше ппохож на мультиметр.Изображение
Забросил я эту идею (пока). План-минимум выполнил, ключики ibutton читать научился, а считыватель по UART подключу, благо он это умеет. Ещё он умеет работать по Wiegand-26, Wiegand-37, Wiegand-44, только во flowcode нет упоминания об этих протоколах.
Семь бед-один reset
Аватар пользователя
Ник: Nicolasomsk
Имя: Nicolasomsk
(Омск)
Практик
Практик
Информация о пользователе
Вернуться наверх

Re: 1WIRE & DS1990 (чтение ключей iBUTTON)

Сообщение mim (mim) » 23 фев 2014, 07:22

Nicolasomsk писал(а):Забросил я эту идею (пока).
Тыц
I Am Legend
Аватар пользователя
Ник: mim
Имя: mim
(Из Лесу, вестимо...)
Легенда
Легенда
Информация о пользователе
Вернуться наверх

Re: 1WIRE & DS1990 (чтение ключей iBUTTON)

Сообщение Nicolasomsk (Nicolasomsk) » 23 фев 2014, 07:30

mim писал(а):
Nicolasomsk писал(а):Забросил я эту идею (пока).
Тыц

:) Когда будет тех. возможность, докопаюсь до истины и отпишу.
Семь бед-один reset
Аватар пользователя
Ник: Nicolasomsk
Имя: Nicolasomsk
(Омск)
Практик
Практик
Информация о пользователе
Вернуться наверх

Re: 1WIRE & DS1990 (чтение ключей iBUTTON)

Сообщение vovikas (Vladimir) » 15 июл 2015, 17:32

Два дня просидел и промучился с чтением обычного 1990, не идет ни в какую! Пришлось передавать байт запроса и, соответственно, принимать побайтно. Ну ладно, с этим можно смириться. но никак не хочет читать (вернее читает все FF) китайские ключи, купленные на ебее. Ладно, с этим тоже смирюсь, хотя разница в цене в четыре раза существенна, конечно. И вот тут совершенно случайно решил попробовать эту-же программу нарисовать на пятой версии. И, о, чудо! Все, оказывается, работает. И чтение, и сканирование и китайские ключи. Вот теперь вопрос - это что, получается глюк шестой версии?
Аватар пользователя
Ник: vovikas
Имя: Vladimir
(vilnius)
Ученик
Ученик
Информация о пользователе
Вернуться наверх

Пред.След.

Вернуться в Flowcode AVR

Кто сейчас на форуме

Пользователь просматривает форум: нет зарегистрированных пользователей