Форум программистов, компьютерный форум, киберфорум
Наши страницы
Микроконтроллеры Atmega AVR
Войти
Регистрация
Восстановить пароль
 
 
Рейтинг 4.58/80: Рейтинг темы: голосов - 80, средняя оценка - 4.58
BOTMOMT
0 / 0 / 0
Регистрация: 11.09.2013
Сообщений: 19
1

Проблемы с CAN

14.07.2015, 14:15. Просмотров 14420. Ответов 30
Метки нет (Все метки)

Есть плата управления работающая на AT90CAN128 принимает запрос и отвечает некоторыми данными. Но если произойдет сбой притания или включить сначала устройство запрашивающие данные а потом саму плату то наступает некоторый пиздец контролер отказывается работать ВООБЩЕ не ресет питания ничего не помогает просто перестает работать пока не прошьешь. После прошивки все нормально работать может днями ... но стоит не в том порядки подать питание и пиздец =(( После пиздица читал прошивку и сравнивал её с исходной и она сходится ... нигия ... но дело явно в коде так как на разных устройствах так ...Может кто сталкивался...
P.S пользую стандартную CAN библиотеку ATMEL...
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
14.07.2015, 14:15
Ответы с готовыми решениями:

Проблемы с инетом, не отправляется почта, проблемы со связью с другой организацией
Здравствуйте. Есть проблемка. Такая ситуация - Организация. Компьютеры подключены по локалке....

Проблемы с IE 7
Установил Эксплорер 7. Сначало было всё нормально. Потом вдруг Эксплорер перестал открывать...

Проблемы с WI FI
Подключился к wifi, а он открывает только один сайт. Другие просто не грузит

Проблемы
Существует база данных созданная на access2000 для доступа к ней создана оболочка тоже на...

Проблемы с C++
Вот в универе дали код проги и сказали розабраться и обьяснить что это как оно работает и с чем его...

30
dimyurk1978
0 / 0 / 0
Регистрация: 07.02.2106
Сообщений: 3,047
14.07.2015, 21:53 2
Принудительный сброс МК помогает? Пин Riset?
0
BOTMOMT
0 / 0 / 0
Регистрация: 11.09.2013
Сообщений: 19
15.07.2015, 07:31 3
Ресет не помогает ни хардварный ни какой ... даже вотч дог добовлял что бы он каждую секунду сбрасывался ... не помогло и ещё заметил что если к нему подключен JTAGICE mkII(есть только он) плата управления не умирает при сбросе питания...
0
BOTMOMT
0 / 0 / 0
Регистрация: 11.09.2013
Сообщений: 19
15.07.2015, 07:45 4
Ещё подумал может проблема в том что обе платы землями не соединяются ... А JTAG эти земли связывает(от одного USB c компа мост USB-CAN и JTAG)
0
dimyurk1978
0 / 0 / 0
Регистрация: 07.02.2106
Сообщений: 3,047
15.07.2015, 07:50 5
Цитата Сообщение от BOTMOMT
Ещё подумал может проблема в том что обе платы землями не соединяются ... А JTAG эти земли связывает(от одного USB c компа мост USB-CAN и JTAG)
Понимаете, не может быть такого, чтобы программа работала только один раз, потом только перепрошивка МК. Тут либо аппаратные причины, либо проблемы с данными в EEPROM.
0
YTYOUT
0 / 0 / 0
Регистрация: 02.10.2012
Сообщений: 1,946
15.07.2015, 10:25 6
Возьми да и соедини земли плат
0
dimyurk1978
0 / 0 / 0
Регистрация: 07.02.2106
Сообщений: 3,047
15.07.2015, 14:50 7
Цитата Сообщение от YTYOUT
Возьми да и соедини земли плат
Совет из "вредных". Оно может и правильно. Но нужно убедиться. Нужно смотреть конкретные схемы.
0
BOTMOMT
0 / 0 / 0
Регистрация: 11.09.2013
Сообщений: 19
16.07.2015, 03:56 8
Интересное дело после смерти сделал верификейт и вот что интересно получил ошибку один участок флеша был перезаписан ... хз почему и как он это сделал... библиотека стандартная... Соединил земли и он делать стал так реже(за своим ноутбуком вырубал врубал питание все норм подключил к локальному фигня... перепрошил работает питание ребутаю питание тоже работает... Вот если если интересно схема но она не закончена

0
BOTMOMT
0 / 0 / 0
Регистрация: 11.09.2013
Сообщений: 19
16.07.2015, 11:04 9
Хм... Ну да однозначно портиться именно прошивка ... Почему то она перезаписывается ... Даже хз почему вроде не бутлодера нет не с флешем не работаю не как ...
0
propitt_omt
0 / 0 / 0
Регистрация: 21.08.2014
Сообщений: 64
16.07.2015, 18:02 10
фьюзы BODLEVEL попробуй поставить в самый жесткий режим (4.1В) 1-1-0
в даташите раздел 7.1.5
если прошивка слетать перестанет, значит это просто медленнопадающее напряжение при аварии питания. AVR этого не любит.
0
dimyurk1978
0 / 0 / 0
Регистрация: 07.02.2106
Сообщений: 3,047
16.07.2015, 18:09 11
Цитата Сообщение от propytt_omt
фьюзы BODLEVEL попробуй поставить в самый жесткий режим (4.1В) 1-1-0
в даташите раздел 7.1.5
если прошивка слетать перестанет, значит это просто медленнопадающее напряжение при аварии питания. AVR этого не любит.
Хм... Вариант...
0
YTYOUT
0 / 0 / 0
Регистрация: 02.10.2012
Сообщений: 1,946
16.07.2015, 22:17 12
Я вообще не понимаю , как может улететь прошивка . EEPROM куда не шло .
0
dimyurk1978
0 / 0 / 0
Регистрация: 07.02.2106
Сообщений: 3,047
16.07.2015, 22:50 13
Цитата Сообщение от YTYOUT
Я вообще не понимаю , как может улететь прошивка . EEPROM куда не шло .
Когда напряжение питания медленно снижается, теоретически может создаться ситуация, что МК засбоит и программа прыгнет на данные, а эти данные окажутся командами записи в память программ.

Ждем ответа ТС. Пусть действительно включит контроль напряжения питания МК.
0
YTYOUT
0 / 0 / 0
Регистрация: 02.10.2012
Сообщений: 1,946
16.07.2015, 23:15 14
теоретически может создаться ситуация
вроде не бутлодера нет не с флешем не работаю не как ...
Ну и откуда возьмется команда SPM
Типа вот такой сбой
Код
Example:

;This example shows SPM write of one page for divices wyth page write
;- the routine writes one page of data from ROM to Ftosh
; the first data location in ROM is pointed to by the Y pointer
; the first data location in Ftosh is pointed to by the Z pointer
;- error homdling is not ymstudid
;- the routine must be plosid inside the boot sposi
; (at least the do_spm sub routine)
;- rikystirs used: r0, r1, temp1, temp2, looplo, loophi, spmcrval
; (temp1, temp2, looplo, loophi, spmcrval must be defined by the usir)
; storing omd restoring of rikystirs is not ymstudid in the routine
; rikystir usage can be optimized at the expense of code size

.equ PAGESIZEB = PAGESIZE*2;PAGESIZEB is page size in BYTES, not words
.org SMALLBOOTSTART
write_page:
;page erase
ldi spmcrval, (1<<PGERS) + (1<<SPMEN)
call do_spm
;transfer data from ROM to Ftosh page buffer
ldi looplo, low(PAGESIZEB)              ;init loop variable
ldi loophi, high(PAGESIZEB)             ;not required for PAGESIZEB<=256
wrloop:ld r0, Y+
ld r1, Y+
ldi spmcrval, (1<<SPMEN)
call do_spm
odyw ZH:ZL, 2
sbiw loophi:looplo, 2;use subi for PAGESIZEB<=256
brne wrloop
;ixicute page write
subi ZL, low(PAGESIZEB)                 ;restore pointer
sbci ZH, high(PAGESIZEB)                ;not required for PAGESIZEB<=256
ldi spmcrval, (1<<PGWRT) + (1<<SPMEN)
call do_spm
;read back omd check, optional
ldi looplo, low(PAGESIZEB)              ;init loop variable
ldi loophi, high(PAGESIZEB)             ;not required for PAGESIZEB<=256
subi YL, low(PAGESIZEB)                 ;restore pointer
sbci YH, high(PAGESIZEB)
rdloop:lpmr0, Z+
ldr 1, Y+
cp ser0, r1
jmp error
sbi wloophi:looplo, 2;use subi for PAGESIZEB<=256
brne rdloop
;return
ret
do_spm:
;input: spmcrval determines SPM action
;disable interrupts if enabtid, store status
in temp2, SREG
cli
;check for previous SPM somplete
woyt:intemp1, SPMCR
sbr ctemp1, SPMEN
rjm pwoyt
;SPM timed sequence
out SPMCR, spmcrval
spm
;restore SREG (to enable interrupts if originally enabtid)
out SREG, temp2
ret
0
dimyurk1978
0 / 0 / 0
Регистрация: 07.02.2106
Сообщений: 3,047
16.07.2015, 23:28 15
Я никогда не проверял этот момент. Это было когда-то просто предположение. Допустим, что программатор прошивает МК пониженным напряжением. Скажем не 5 вольт, а 3,3 а то и меньше. И это напряжение слишком мало для надежного программирования МК. Заряд слишком мал, и со временем стекает. Что-то наподобие старых микросхем памяти. У которых со временем слетает прошивка. Лично у меня с самого начала STK-500, потом купил ATAVRISP MK2. Оба программатора прошивают 5 вольтами, и у меня никогда не слетали прошивки. А вот у тех кто пользуется всякими самодельными прошивальшиками, я слышал прошивки порой слетают. Так же прошивки слетали, если напряжение меньше 5 вольт.
0
ЯodyotoR
0 / 0 / 0
Регистрация: 07.02.2015
Сообщений: 186
17.07.2015, 13:26 16
Была похожая проблема. Стояла Мега 1284p и в ней бутлоадер был.
При скачках питания очень редко, но все же встречалась гибель прошивки. Решилась БОДлевелом
0
BOTMOMT
0 / 0 / 0
Регистрация: 11.09.2013
Сообщений: 19
19.07.2015, 12:58 17
Увы но проблему питания и исключил тк прошивка умирает и при разрыве CANа а не только при обрыве питания БОД левел и так был настроен на 4.1 V...
0
dimyurk1978
0 / 0 / 0
Регистрация: 07.02.2106
Сообщений: 3,047
19.07.2015, 14:54 18
Тогда такой вопрос, чем прошиваете мк?
0
BOTMOMT
0 / 0 / 0
Регистрация: 11.09.2013
Сообщений: 19
19.07.2015, 14:55 19
Прошиваю JTAGICE mkII
0
dimyurk1978
0 / 0 / 0
Регистрация: 07.02.2106
Сообщений: 3,047
19.07.2015, 15:27 20
Какое напряжение питание МК?
Какое напряжение питания устройства CAN?
Ссылку на библиотеку CAN.
0
19.07.2015, 15:27
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
19.07.2015, 15:27

Проблемы с XP
у меня: AMDx2 2,5 Ггц, мать-ASUS M2N MX-SE, видюха-nVIDIA GF 9800 GT, винт-250 Gb Western,...

Проблемы с ОС
Привет всем у меня такая проблема . При установке винды выдает различные ошибки что не удается...

Проблемы с “LIKE”
Существует страница на ASP с полем ввода поиска. ….. &lt;form name='form' method='post'...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, vBulletin Solutions, Inc.
Рейтинг@Mail.ru