Просмотр полной версии : Помогите разобраться с прошивками SimEmu
Здравствуйте.
Хотелось бы разобраться с работой SimEmu и взаимодействием сим карты с телефоном в частности, в связи с чем есть некоторые вопросы:
В прошивке Pic'а есть CRC, где она записана и как считается? И кто ее проверяет, можно ведь просто убрать эту функцию?
Где можно почитать об взаимодействием сим карты с телефоном: Какие функции выполняются при включении телефона и какие необходимы для работы? Организация памяти, где что лежит. (все коди IMSI, KI и т.д., настройки смс, адресная книга, смс).
На первом этапе хочется узнать как добавлять меню в телефон (sim-menu). Вообщем есть симка одного оператора на ней есть некоторые функции - узнать курс, баланс и т.д., так вот хочется перенести некоторые из них или хотябы отправить смс и позвонить по номеру при выборе пункта в меню.
Всем спасибо.
PIC-ador
11.07.2004, 21:33
1.А зачем убирать CRC?
2. См. доки ETSI TS 100 977, ETSI TS 101 267, ETSI TS 123 038
А как отлаживать simemu в MPLab? Он проверяет полученные данные, а их нет.
И когда дизасемблю в Icprog то он не сохраняет eeprom, как быть?? (т.е в hex формате он есть, а в asm нет)
PIC-ador
14.07.2004, 22:43
...извини, забыл указать, что еще и по Пикам, документацию читать надо!
Так по пикам у меня есть.
PIC-ador
15.07.2004, 10:31
...Он проверяет полученные данные, а их нет
Это о чем?
то он не сохраняет eeprom, как быть??
Какой ? Внутр. или внешний ?
ЗЫ. Держи:
http://www.cardwerk.com/smartcards/smartcard_standard_ISO7816-3.aspx
Ну, например, он должен запрасить pin код.
EEprom внутренний.
PIC-ador
15.07.2004, 12:52
он должен запрасить pin код
Это кто должен запросить ПИН?
Телефон должен сделать сброс и начать чтение, и если установленно запрашивать pin-код, то симка должна дать комманду телефону на ввод кода.
Огромное спасибо за ссылки, очень полезная инфа. Буду разбираться.
А вообще хочется для начала написать прошивку которая хотябы отдавала ответ на сброс карты.
Я так понимаю там организовано как клиент-серверное приложение. И все выполняется как запрос-ответ. Синтакс комманды у меня есть CLA INS P1 P2 P3 PROC DATA SW1 SW2. Но как обрабатывать их на стороне сим карты?
PIC-ador
15.07.2004, 21:29
Но как обрабатывать их на стороне сим карты?
ETSI TS 101 267
А как в MPLab смоделировать reset(MCLR) чтобы посмотреть как и где передается ответ (ATR) карты?
И зачем нужен коэффициент деления предделителя (для WDT)? Что такое WDT и для чего нужно?
Есть коэффициент деления предделителя для TMR0, я так понимаю это для того чтобы реже происходили прерывания?
PIC-ador
18.07.2004, 02:13
А как в MPLab смоделировать reset(MCLR) чтобы посмотреть как и где передается ответ (ATR) карты?
Зачем что-то моделировать? У тебя есть ассемблерный текст, правда весь сырой. Сиди, думай. Я вообще MPLab почти не пользовал, только MPASMWIN из пакета.
ЗЫ. Учти, что ссылки (переходы) стреляют в пределах одной страницы!
1)Как сохранить конфигурацию прошивки в .asm файле? Компилирую в MPLabe и экспортирую в .hex формат, но конфигурацию приходится выставлять в ручную, хотя при открытии любых прошивок он выставляется автоматически.
2)Зачем нужен код защиты? Он расположен в 1F00-1FFF.
3) Есть два режима работы 1: F = 372 Baud rate = Clock * D/F [Hz] D = 1
2:F = 512 Baud rate = Clock * D/F [Hz] D = 8
Это просто разная скорость между симкой и телефоном?
PIC-ador
18.07.2004, 23:33
1. Есть такая директива:
__config 0x2F29 ; Слово конфигурации
2. ...так захотелось :)
3. SIM-карта это АСИНХРОННАЯ чип-карта, соовтетствующая одновременно спецификациям и стандарта ISO 7816 и стардарта GSM 11.11. (Посему не заморачивайся с WDT)
P.s. ...извини больше отвечать не буду. Судя по твоим темпам, мне придеться отвечать еще год-полтора.
Удачи!
Что такое WDT и для чего нужно?
Watch Dog Timer
Следит, чтоб карточка не зависала.
Есть код для загрузки байта с 3 страници в(w):
Lab_0FF MOVF 0x7A , W
MOVWF PCLATH ; страница
MOVF 0x79 , W
MOVWF PCL ; смещение
по этому адресу стоит:
RETLW 0x23 ; записывает данные в (w)
а как можно находясь на 0 странице записать по тому же адресу другую комманду?
например: RETLW 0xFF
PIC-ador
20.07.2004, 17:04
PIC16F87X Data Sheet page 44.
Подскажите ссылку для доки по EEPROM 24C64, как осуществляется чтение/запись. Все идет через 6 и 5 ногу. Или здесь раскажите как передается адрес и чтение/запись.
PIC-ador
21.07.2004, 12:21
Подскажите ссылку для доки по EEPROM 24C64
А что сайт производителя не работает? (ATMEL)
PIC-ador
21.07.2004, 14:00
краткость
сестра ...
Во как я про себя сказал :D
Куда пдф слать? Цеплять в конфу смысла нет. Или стоит?
Wishmaster
21.07.2004, 16:39
Куда пдф слать? Цеплять в конфу смысла нет. Или стоит?
Цепляй, если прицепится. Когда будет не нужен (например через неделю) - удали, если не забудешь.
Конечно все еще надо, отправляй на ssbelov@mail.ru
Спасибо.
Скинул в мыло, может, поможет...
Что-то не могу разобраться как обрабатываются прерывания, например по изменению уровня сигнала на RB7-RB4. При прерывании переходит на 0004h и там надо ставить переход на обработчик прерываний?
И как организована файловая система симки, где что лежит? желетельно поподробней.
PIC-ador
28.07.2004, 10:37
как обрабатываются прерывания
Никак. Там все программно.
как организована файловая система
см. GSM 11.11
Тогда вот такой пример. Дали тебе винт и говорят там есть диски (C: D:) на этих дисках есть каталоги, а в этих каталогах файлы. Вот тебе нужен файл на диске С: в каталоге Temp с именем 1.txt. И где ты его будешь искать на своем магнитном диске?? через лупу разглядывать и кричать а-у.?
Мне надо знать как найти в EEPROM нужный мне файл и как устроена файловая система.
И где лежат все коды, записная книжка и СМС? (В Ext. EEPROM, Flash) Pin'ы и PUK лежат в Int.EEPROM. А что там за коды 00000000, 11111111 ?? Это тоже какие-то пины?
(В Ext. EEPROM, Flash) Pin'ы и PUK лежат в Int.EEPROM. А что там за коды 00000000, 11111111 ?? Это тоже какие-то пины?Неужели так сложно через конфигуратор забить карточку под завязку на все 10 операторов, а потом посмотреть где лежат пины и паки для каждого оператора? Там весь внутренний Епром будет забит, только последняя строчка с адреса 00F8 пустая остается.
Как я обычно поступаю с незнакомыми кассами (для примера). Ставлю чистую фискалку, забиваю данные, затем считываю информацию, анализирую. Забиваю еще, цикл повторяю. Через несколько таких циклов уже ясен принцип работы и адреса, куда что пишется.
Бери Пикадоровскую прогу, забивай один номер, скажем, по разным позициям разными числами, например ИМСИ 111111... КИ 222222.... ИССИД 333333..... наименования и т.п. Сохраняй и смотри. Дальше - вторую, третью и т.д.... Можешь затем Вороном записнуху создать и залить, тоже все будет видно... В общем, не такая уж сложная работа :)
PIC-ador
30.07.2004, 09:58
И где ты его будешь искать на своем магнитном диске??
Что нибудь про FAT слышал?
PIC-ador
30.07.2004, 12:56
надо плотно заняться РТФМом
Что-то поиском прошелся, и не нашел расшифровки сей аббревиатуры. Смутно подозреваю, что это связано с бронетехникой! Подтверди плиз. мою догадку!
PIC-ador
30.07.2004, 15:17
Не в ту ветку, но в тему!
по 3 за шт.
Даниелю запрос отправил
надеюсь, по испански?
только новый бронепоезд надо сваять...
:!: ... а ты за машиниста?
Неужели так сложно через конфигуратор забить карточку под завязку на все 10 операторов, а потом посмотреть где лежат пины и паки для каждого оператора? Там весь внутренний Епром будет забит, только последняя строчка с адреса 00F8 пустая остается.
А как его потом считать?? вот внешний могу, а внутренний не получается. Его надо читать вместе с прошивкой?
А как его потом считать?? вот внешний могу, а внутренний не получается. Его надо читать вместе с прошивкой?
Не, ну ты, мужик, этого... нахрена ее зашивать а потом считывать? Тебе же ясно написали - работай с конфигуратором и прошивкой, для этого карточка и не нужна совсем!
URL:: http://alevlab.narod.ru/archive/mc.rar
Рекомендую всем, кто работает с хекс-бин файлами, прошивками и т.д. Сам уже пользуюсь года четыре - вроде винхекса, только наш родной...
Ему бы еще дизасм привернуть нормальный, вообще бы цены не было...
Не в ту ветку, но в тему!
Даниелю запрос отправил
надеюсь, по испански?
Даниель в отпуске - еще недели две.
Как прочитать внешний еепром? (может конфигурацию надо настроить определенным образом) Как-то раз получилось, но уже не помню как настраивал.
Просто собираюсь отладочную информацию туда записать, а потом ее нужно от туда считать.
А как адресовать больше 8К в Ext.EEPROM если адрес 13 бит?
И где можно почитать какими коммандами загружается меню в телефон и как оно работает? а то в документации нефига не понятно, по крайней мере мне :)
PIC-ador
03.08.2004, 09:45
А как адресовать больше 8К в Ext.EEPROM если адрес 13 бит?
I2C
Про I2C я уже разобрался, просто для Силвера он отправлял одно и тоже число т.к. там всего 8К.
И всетаки как считать Ext.EEPROM или куда можно сохранять отладочную информацию чтобы ее потом можно было считать. Сейчас пишу прямо в ATR, но это не выход :((
PIC-ador
03.08.2004, 15:58
Какую, блин отладочyю информацию? Там все отлажено!
Так чужие коды не разбирают! Всего то надо: голова, мануалы и карандаш.
Какую, блин отладочyю информацию? Там все отлажено!
Так чужие коды не разбирают! Всего то надо: голова, мануалы и карандаш.
Пиво забыл. Ну или в моем случае (после врачебного запрета на пиво) - джин. 8)
PIC-ador
03.08.2004, 23:14
в моем случае (после врачебного запрета на пиво) - джин.
Если сурогат под назв. джин-тоник, то еще вредней. Страдает желудок, зубы (кальций от пузырьков), и т.д. и т.п.
Есть знакомые медики - подтвердят.
в моем случае (после врачебного запрета на пиво) - джин.
Если сурогат под назв. джин-тоник, .
Я - старый, даже где-то больной.. но не больной на голову.
Beefeater.
Кстати, пойло под названием джин-тоник - сначала финское, потом и наше "браво"- банки коллекционирую (-ровал), я попробовал позже и джина (да и тоника тоже 8))
Вот посмотрите код. Он вроде копируем 0х50 байт с банка 2 с адреса 0х20 в банк 1 с адреса 0хА0. Но ведь в банке 2 эти адреса ссылаются на банк 0 0х20-0х7F, зачем так все запутывать??
Lab_12B MOVLW 0x20
MOVWF 0x60
MOVLW 0xA0
MOVWF 0x62
MOVLW 0x50
MOVWF 0x76
Lab_109 BSF STATUS , IRP
MOVF 0x60 , W
MOVWF FSR
MOVF 0x00 , W
MOVWF 0x5D
BCF STATUS , IRP
MOVF 0x62 , W
MOVWF FSR
MOVF 0x5D , W
MOVWF 0x00
INCF 0x60 , f
INCF 0x62 , f
DECFSZ 0x76 , f
GOTO Lab_109
RETURN
PIC-ador
04.08.2004, 17:03
зачем так все запутывать??
Читай мануалы. Ничего там запутанного нет!
... не нравится. Напиши по другому!
Сори, ступил. Просто мануал на pic16f873/4 и pic16f876/7, страничка была как раз с 873. А теперь все понятно