|
|
  |
AT90S1200 и tiny 2313 |
|
|
|
Sep 5 2006, 13:20
|
Частый гость
 
Группа: Свой
Сообщений: 196
Регистрация: 19-07-06
Из: Москва
Пользователь №: 18 922

|
Цитата(Terapefft @ Sep 5 2006, 16:39)  я программу вобще не трогал....разве в ней надо что нить изменять? и еще вопрос относительно фузов: почему в ponyprog не изменяется SPIEN? ведь в AVR093 написано что там должен быть 0. В AT90S1200 аппаратный стек, а в ATTiny2313 нет, его надо при старте устоновить используя следующие команды: ldi tmp,low(RAMEND) out SPL,tmp Также надо проверить, что там твориться с прерываниями, хотя думаю можно сначало только выстовить стек
--------------------
Тяжелое детство - 8-битные игрушки на 8-дюемовых дискетах
|
|
|
|
|
Sep 5 2006, 17:43
|

Знающий
   
Группа: Свой
Сообщений: 697
Регистрация: 26-07-05
Из: Могилев
Пользователь №: 7 095

|
Цитата(Terapefft @ Sep 5 2006, 14:03)  там на программаторе стоит какой то на 10 МГц, но я не знаю как проверить подключен он или нет, просто программатор самодельный какой то, был сделан задолго до моего прихода на эту работу. я вот седня пробовал новый микроконтроллер программировать, сначала прошил фузы, а затем нажал write programm в итоге все нормально прошилось, появилось сообщение write sucsesful, но когда я вставил его на плату индикации то ни фига опять не показывало. может на плате индикации что нить надо сделать? ее разрабатывали для s1200, там еще схема сброса стоит, я уже пробовал и с ней и без нее, когда без нее я просто ресет через резистор на питание вешал, но все равно ничего не получаеца. что можно еще попробовать? А на плате индикации какой кварц стоит? и стоит ли он там вообще? (может s1200, от RC генератора тактируется?) Фузы по AVR093 программируют тиню на работу с кварцем 3...8МГц . Цитата я программу вобще не трогал....разве в ней надо что нить изменять? См. посты Семёна. Цитата и еще вопрос относительно фузов: почему в ponyprog не изменяется SPIEN? ведь в AVR093 написано что там должен быть 0. Он (ноль) там и есть иначе понипрогом ничего не зашилось бы, поскольку понипрог программирует по SPI. А изменить его понипрогом нельзя, потому что SPIEN недоступен при последовательном программировании.
|
|
|
|
|
Sep 6 2006, 07:53
|

Частый гость
 
Группа: Свой
Сообщений: 192
Регистрация: 23-03-05
Из: Украина. Днепропетровск
Пользователь №: 3 626

|
Дева Мария, пресвятая богородица, заступница. Вам который день рассказывают. Во - первых. В самое начало программы вставьте конструкцию вида: ldi R16,low(RAMEND) ; настройка стека out SPL,R16 Во вторых, проверьте установку фузов. Потом, прочтите атмеловский пдф под названием :"Replacing AT90S1200_by_ATtiny2313.pdf" Если не можете сами отрихтовать программу, пришлите hex - файл. Я вам на шару эти 2 оператора добавлю. В догонку можете прислать схему самого дивайса. З.Ы. Сам с 1200 не работал, но в атмеловском пдф есть какая то неясная угроза насчёт отличия электрических параметров. Хотя, думаю, что это неважно.
Сообщение отредактировал Alex_Pol - Sep 6 2006, 07:58
|
|
|
|
|
Sep 7 2006, 18:13
|

Знающий
   
Группа: Свой
Сообщений: 697
Регистрация: 26-07-05
Из: Могилев
Пользователь №: 7 095

|
Цитата(Terapefft @ Sep 7 2006, 13:54)  я уже добавил настройку стэка, пробовал и с заводскими установками фузов и выставлял как в AVR093 написано, все равно нифига не работает, а s1200 все нормально работает. что можно еще попробовать? Судя вот по этому: Цитата на плате индикации нету кварца... S1200 работала от RC генератора (1МГц). (В этой связи понятны манипуляции ваших предшественников с программатором Picprog- это они программировали фуз RCEN в S1200, который доступен только при параллельном программировании.) А значит заводские фузы тини 2313 трогать всетаки не нужно  . Проанализируйте программу S1200 и выясните использовались ли прерывание от переполнения таймера 0 и прерывание от аналогового компаратора. У тини2313 вектора этих прерываний находятся по другим адресам. Если хотябы одно из этих прерываний задействовано, то ИМХО проще будет перекомпилировать проект под тиню. Кроме того у тини отличается доступ к ЕЕПРОМ, на это тоже надо обратить внимание.
|
|
|
|
|
Sep 7 2006, 22:27
|

Частый гость
 
Группа: Свой
Сообщений: 192
Регистрация: 23-03-05
Из: Украина. Днепропетровск
Пользователь №: 3 626

|
Цитата(Old1 @ Sep 7 2006, 21:13)  Проанализируйте программу S1200 и выясните использовались ли прерывание от переполнения таймера 0 и прерывание от аналогового компаратора. У тини2313 вектора этих прерываний находятся по другим адресам. Если хотябы одно из этих прерываний задействовано, то ИМХО проще будет перекомпилировать проект под тиню. Кроме того у тини отличается доступ к ЕЕПРОМ, на это тоже надо обратить внимание. Исходник в студию. Чтобы воду в ступе не толочь.  З.Ы. Мне бы на асме.
Сообщение отредактировал Alex_Pol - Sep 7 2006, 22:29
|
|
|
|
|
Sep 8 2006, 05:05
|

Частый гость
 
Группа: Свой
Сообщений: 167
Регистрация: 14-06-06
Из: Рязань
Пользователь №: 18 052

|
[/quote] Исходник в студию. Чтобы воду в ступе не толочь.  З.Ы. Мне бы на асме. [/quote] как его выложить? может я вам на мыло лучше пришлю?
|
|
|
|
|
Sep 8 2006, 09:31
|

Частый гость
 
Группа: Свой
Сообщений: 192
Регистрация: 23-03-05
Из: Украина. Днепропетровск
Пользователь №: 3 626

|
Получил. Дык она вообще не компилится. Компилятор матерно ругается вот в этом месте: prt1: ldi tmp1,$0f ; cp T2L,tmp1 ; breq p_rcorr ; ldi tmp1,$27 ; cpc T2H,tmp1 ; brcc p_rcorr ; cp T3H,tmp1 ; brcc p_rcorr ; ldi tmp1,1 ; cp T4H,tmp1 ; Здесь! brcc p_rcorr ; ldi tmp1,4 ; cp T4L,tmp1 ; brcc p_rcorr ; rjmp begin ; И правильно делает. Т4Н не определён. Если эту программу как нить откомпилить, работать всё равно не будет. Так как там должно быть на самом деле? Да, и ещё. Если вы ожидаете, что по прерыванию таймера у вас отработает процедура tim_0, то этого не случится никогда. Ещё раз, внимательно AVR093 стр.2, 3; таблица 3. Это я ещё до работы с EEPROM не добрался.
Сообщение отредактировал Alex_Pol - Sep 8 2006, 09:49
|
|
|
|
|
Feb 16 2007, 02:47
|
Группа: Новичок
Сообщений: 9
Регистрация: 6-01-07
Из: Ростов-на-Дону
Пользователь №: 24 157

|
to Andrew_k5 При программировании по SPI вывод RESET используется для ввода в режим программирования. Если Вы запретили внешний сброс, то как правильно советуют в предыдущем посте - ищите параллельный программатор.
|
|
|
|
|
  |
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|