Аватар пользователя
sam_soft

Местный

Регистрация: 29.10.2005

Сообщений: 2148

17.08.2006 в 16:09:36

2_SERGEY_
Дело тут не в бардаке, а станет понятнее почему это нежелательно, если ты поизучаеш асм листинги своего сварочника. Но это конечно имеет смысл только если там есть сишный код. А если его нету дык и делов нету. А у меня его 98 %. Пока 98, но может асма трохе и прибавиться. буду смотреть по обстоятельствам. Ну да ладно, хрен сним. Я свои проблемы решил сам, просто было интересно как другие компилеры ведут себя на эту тему. Кстати, IOpins у тебя задействован ? А то можно еще нан 190 сэкономить при сбросе ШИМ. По моему rjmp - это три такта.

0
Аватар пользователя
sam_soft

Местный

Регистрация: 29.10.2005

Сообщений: 2148

17.08.2006 в 18:46:34

2_SERGEY_
И еще, а чего ты SREG не сохраняеш в прерываниях ? Это автоматом не делается когда туда управление попадает. Вот этот cpi r17, 0xFF из INT0, на 100% разломает SREG . Когда код вернется в исходную точку после прерывания велика вероятность того, что чего нидь рухнет или резалт будет непредсказуем.

0
Аватар пользователя
wiha

Местный

Регистрация: 29.10.2005

Запорожье

Сообщений: 216

18.08.2006 в 08:57:02

Не пойму зачем вообще голову морочить с СИ для столь простого проэкта. Тут и на асме особо писать нечего :)

0
Аватар пользователя
sam_soft

Местный

Регистрация: 29.10.2005

Сообщений: 2148

18.08.2006 в 11:08:12

2wiha
А это смотря что в этом проекте подразумевается ? Если только ШИМ, наподобие того что _SERGEY_ опубликовал, то и в самом деле, делов то на пять копеек. Ну а если еще и температуру мерить по нескольким каналам, и выходное напряжение и задатчик тока , + еще усреднение данных по каналам. И потом еще показывать на LCD выходное напряжение и текущий сварочный ток, температуру полупроводов. Да и мало ли еще чего в голову потом придет :) Вот оно и набегает. Не спорю, можно все и на асме сделать. Но на Си это делатся в 10 раз быстрее ( это конечно если знаеш Си, а если нет, то тогда и делов нет )

  • мы имеем более менее нормально структуированный код, который и чере годик-два понять несложно. А с асмовским в этом плане уже через пару месяцев возникнут проблемы если понадобится модернизация\изменение, как бы ты его не коментил. А мороку я пока только одну увидел - crt0 со своими векторами. И то это из-за того что экономиш каждую сотню наносек в некоторых местах, ради транзюков. Если б был какой нидь 50-100 мегагерцовый АВР-чик, я бы забил на это все. А ваще то я никого не агитирую за Си, просто мне так подсказывает свой опыт в этом деле. Хоть и давно это было, но думаю что принципиально ничего не поменялось, разве что проци стали быстрее и больше периферии в них всякой

А может новую тему завести ? Типа - А кто нибудь делал сварочник на микроконтроллерах ?
А то загадится тут все. Может большинству народа и неинтересно эта байда.

2k_p
А как ты травил слои, сразу оба или по отдельности приклеивая скотчи всякие ?

0
Аватар пользователя
simpson

Местный

Регистрация: 23.02.2006

Минск

Сообщений: 177

18.08.2006 в 13:32:53

2sam_soft

sam_soft написал : А как ты травил слои, сразу оба или по отдельности приклеивая скотчи всякие ?

Уж извинит меня k_p , я свой пятачок вставлю, т.к. именно в данный момент собираюсь положить платки в ванночку ;). Делаю так: Прокалываю на шаблонах совмещённые контрольные точки иглой. Накладываю один шаблон на плату и слегка прокатываю утюгом - чтобы чуток пристал. Потом сверлю наименьшим из имеющихся свёрл отверстия на контрольных точках (на плате с нанесённым шаблоном) - та же пара по диагонали. Затем накладываю второй шаблон, совмещаю с отверстиями и фиксирую иглой,сверлом, куском провода - всё тонкое. Припекаю утюгом слегка, чтобы зафиксировался, вынимаю фиксаторы и тогда уже грею и прижимаю как -положено. А положено так - минут по 10 на каждую сторону, конкретно прижимая и проходя ребром утюга пока дорожки не проявятся через бумагу. И никакого скотча! - он оставляет клейкие следы,которые трудновато убирать. После размочки и скатывания бумаги ( а она аж 80г/мм, толстая - ну нету у меня глянцевой!) травлю обе стороны сразу, периодически переворачиая и т.д. Можно извратится и потом нанести обозначения и раположение элементов - быстро прогреть и оторвать горячий соответствующий шаблон. Недостаток - это можно сделать до только залуживания металла (в смысле ручного обыкновенного, т.к. ручками в некоторых местах горбато лудится и там ничего не прилипнет), если же у вас есть порошок и печка, тогда аккуратно залудится и можно нанести картинку.

0
Аватар пользователя
_SERGEY_

Местный

Регистрация: 29.10.2005

Новочеркасск

Сообщений: 542

18.08.2006 в 14:13:37

2sam_soft
Смотрел я эти коды, поэтому и сказал что крайне не желательно. С SREG просто про...бал. Но месяц уже работает, а перешить конечно надо. А че за байда IOpins?

0
Аватар пользователя
sam_soft

Местный

Регистрация: 29.10.2005

Сообщений: 2148

18.08.2006 в 15:13:55

2_SERGEY_
IOpins - это вектор прерываний на IO pin change. По моему в Т26 он идет следом за INT0. Если он не задействован у тебя , то можно на месте INТO сделать cbi ШИМу. А потом rjmp на осталной код. В итоге 3 такта можно сэкономить (190нан), ну соотв ток КЗ. cbi на флаги не действует, поэтому SREG останется целым и его сохранять уже потом. А работает у тебя без сохранения SREG или просто случайно что-то совпадает, что весьма маловероятно или потому что main loop не задействован или примитивен настолько, что и ломаться там нечему.

0
Аватар пользователя
Sasha L

Местный

Регистрация: 18.01.2006

Челябинск

Сообщений: 552

18.08.2006 в 15:45:31

Кто как 150ebu устанавливает? В частности катод: на винт или пайкой? Что-то не нравится место контакта получающееся при соединении на винт (луженая медная фольга винт, без шайбы). Может есть специальные требования?

0
Аватар пользователя
Bigson

Местный

Регистрация: 29.10.2005

Ярославль

Сообщений: 253

18.08.2006 в 17:28:54

2Sasha L Любое винтовое соединение греется больше чем пайка, и с течением времени греется сильнее из-за окисления, я паяю...

0
Аватар пользователя
_SERGEY_

Местный

Регистрация: 29.10.2005

Новочеркасск

Сообщений: 542

18.08.2006 в 17:44:54

2sam_soft
Конечно нечему ломаться, в main loop идет мониторинг флагов и все. Сэкономить конечно можно(сначала так и было), но я использую TIMER1_CMPA_vect, вот и не влезает 2 команды, т.к. одна команда весит 2 байта. 2Sasha L
Крепил просто винтами М4. Слабовато выглядит...

0
Аватар пользователя
Балбес

Местный

Регистрация: 06.04.2006

Сиэтл

Сообщений: 43

19.08.2006 в 00:40:51

sam_soft написал : 2wiha
Если б был какой нидь 50-100 мегагерцовый АВР-чик, я бы забил на это все.

Ну, AVR не AVR, но бывает. См. http://focus.ti.com/docs/prod/folders/print/tms320r2811.html -- если, конечно, 128LQFP не пугает (меня -- в домашних условиях -- пугает). И ADC там 80 нс, и PWM умеет почти все, что только в голову придти может, и каналов вагон. 15 баксов в розницу.

0
Аватар пользователя
Chaynik

Местный

Регистрация: 30.01.2006

Симферополь

Сообщений: 354

19.08.2006 в 23:38:22

Извиняюсь что перебиваю тему. Вот что можно сделать из лц-5 с окном 30 на 15 (когда надежда на нормальный магнитопровод иссякла :) ). Хотелось сделать компактный транс, и чтобы жгуты можно было заложить нормальные. Получился сердечник с реальным сечением где-то 700 мм^2 с окном 40мм х 15мм. Орентируясь на индукцию до 0,25 для частоты 30кГ, думаю намотать витков 28 и 9 в три ряда, вторичка между первичкой. По очень грубым прикидкам с первичкой всё впорядке, жгутик будет с плотностью тока около 10А на мм^2. А вот со вторичкой пока непонятно как её мотать. Окошко для неё остаётся 9х40мм. Т.е. на каждый виток 9х4,4мм. Если сделать круглый жгутик диаметром 4,4, то плотность тока в нём будет многовата около 20-25Ахмм (на ток 150А). Надо каким-то прямоугольным жгутом, 9х4,4. Если где-то ошибся - поправте пожалуйста.

0
Вложение
Аватар пользователя
wiha

Местный

Регистрация: 29.10.2005

Запорожье

Сообщений: 216

21.08.2006 в 08:26:05

_SERGEY_ написал : Сэкономить конечно можно(сначала так и было), но я использую TIMER1_CMPA_vect, вот и не влезает 2 команды, т.к. одна команда весит 2 байта.

Так програмная память в 16 битном формате. А одна команда 16 бит. Ведь на один вектор ложится rjmp.

0
Аватар пользователя
k_p

Местный

Регистрация: 07.02.2006

Ростов-на-Дону

Сообщений: 135

21.08.2006 в 08:59:22

sam_soft написал : 2k_p
А как ты травил слои, сразу оба или по отдельности приклеивая скотчи всякие ?

  • засветил 1 слой, затем засветил 2 слой;
  • проявка сразу всей платы;
  • травление сразу всей платы
0
Аватар пользователя
k_p

Местный

Регистрация: 07.02.2006

Ростов-на-Дону

Сообщений: 135

21.08.2006 в 09:10:25

Chaynik написал : Если сделать круглый жгутик диаметром 4,4, то плотность тока в нём будет многовата около 20-25Ахмм (на ток 150А). Надо каким-то прямоугольным жгутом, 9х4,4. Если где-то ошибся - поправте пожалуйста.

набираешь из проводочков ленту шириной 4.4мм и мотаешь 9 витков(получится в 1 слой). берешь следующую такую же ленту и нова мотаешь 9 витков. и так пока не наберешь свои 9мм окна, я думаю, что на 5-6А/мм2 выйдешь.

0
Назад

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий.

Присоединяйтесь к самому крупному DIY сообществу