-Музыка

Прошлые

Дневник

Суббота, 06 Мая 2017 г. 03:42 + в цитатник

выхи посвятил очень насыщенной социалочке, так что эти дни хочется посвятить производству и задротству с паяльником, программатором и шпинделем. Поскольку я к электронным игрушкам подхожу довольно олдскульно - с программатором типа STK200 (пять проводков из LPT) и все Arduino-подобные упрощалки мне чужды, потому моя ардуина отладочная плата для AVR, NAND-флешки на 1ГБ и дисплея от Nokia 1616 LCD выглядит следующим образом:


PCB_LCD_Nokia_1616_NAND_FLASH (654x700, 233Kb)

Уже в заделе, чтобы можно было внедрить в 5.25" отсек компьютера и выводить на дисплей всяческую моддерскую ересь модными BITMAP-шрифтами (что там моддеры выводят? Температуры, загрузку ЦП, ОЗУ, ну то, что ни разу в жизни знать не полезно). Также есть две кнопки, у которых схема подключения настолько несовершенна, что лучше про них забыть. Они ввиду нехватки свободных пинов ATMega328 подключены параллельно к линиям #WE и ALE флешки. Для индексации, на плате есть:


• ATMega328 в DIP-исполнении
• MCP42010 - переменный резистор/потенциометр с SPI-управлением для регулировки яркости
• CH340G - мост USB-UART, который я искренне полюбил, однажды доставшись мне от одного конченного наркомана, я заказал ещё 25 штук и сую куда ни попади теперь.
• SAMSUNG K9K8G08U0B PIB0 - NAND-флеш память на 1ГБ, изъятая то ли из плеера, то ли откуда ещё.
• К142ЕН3Б - винрарный ☭ стабилизатор в золоте, на 3,3В для флешки.

Такая вот геттообразная ардуино отладочная плата. Она умеет общаться по программному SPI с дисплеем от Nokia 1616 (рекомендую всем паялам, в Art-GSM стоит копейки, лярвочка привезла 10 штук и я их распихиваю по устройствам), код вывода оптимизирован на ассемблер так, что инверсия бита порта CLK происходит в 1 такт, а значит заливка белым или чёрным экрана это не посылка двух байт на пиксел, а лишь ~16...20 тактов (+циклы с 8-битными счётчиками), что означает LCD CLS менее, чем за 400 мс при кварце 16 МГц. Плата также умеет выводить картинку прямо из UART (тот самый USB дисплей, но быстрее всего получается выводить картинку на LCD из флеш-памяти NAND. Заранее оптимизированная картинка о двух байтах на пиксел (RGB 5-6-5) залита постранично на флешку, остаётся только дёргать #RE (2 раз) и CLK (16 раз) и преобразовывать параллельную шину флешки в последовательную DATA дисплея. Никаких SD-карт! А также на этой плате можно вылизать методы низкоуровневого доступа к TSSOP-чипам памяти, алгоритмы шифрования, контрольные суммы и файловую систему для AVR.


И разумеется, после смены компа мне стало острейше не хватать LPT-порта на Winbond-чипе, не PCI-LPT, который с Win7x64 не то, что через InpOut, и DLPortIO плохо работает через CVAVR. Приходилось для заливки прошивки пользовать старую машину по RDP, а это лишний шум и геморрой. Вот тут бы и обратиться к идеологии прошивки по USB Arduino, только без дикой для белого человека Arduino IDE. А чтобы в нормальном таком ассемблероподобном BASCOM-AVR от MCS Electronics.


Написано много слов в интернетах, что BASCOM-AVR умеет программировать как через STK200, также как и через USB ASP (руки дойдут однажды:)), так и через их AVR USB-загрузчик MCS Bootloader. Но вот же в чём беда, что по схеме аппаратная UART пара RX-TX висит у меня на шине данных к NAND флешке, и общение ATMega с CH340G происходит через Software UART, а загрузчик для компактности написан под аппаратный UART. Ну, MCS приложили исходник загрузчика BootLoader_m328.bas, который нагуглить та ещё проблема.


Как выяснилось из чтения мануалов и форумов, загрузчик ни что иное, как кусок кода, который при использовании метауказаний компилятору $loader $loadersize размещается в конце области памяти контроллера по дальним адресам типа $3c00, $3800, $3f00, $3e00 (для ATMega328) и при помощи фьюзов BOOTRST, BOOTSZ0...BOOTSZ1 выставляется первичное действие контроллера (адрес прыжка) к этому загрузчику, который, например, ожидает по UART байт 123 или иной другой, чтобы начать запись прошивки, побайтно SPM-LPM командами принимая её из UART. Если же байт 123 или иной другой не приходит, прыгаем на адрес $0000, где по идее лежит основная программа. Размер основной программы, при наличии загрузчика в контроллере, ограничивается 30КБ, на 2КБ меньше.


Мой модифицированный загрузчик MCS для ATMega328 занял порядка 1024 слова (2 КБ), это много по меркам памяти контроллера, однако что поделать (жертвы), посему шить его надо по адресу $3c00, соответсвенно ему и выставляем фьюзы в CVAVR.


Бац, и ниxyя не работает. Ну, загрузчик прошивается в конец, даже работает, соединяется с BASCOM на скорости 115200, пишет отладочное приветствие "LDR", происходит запись принятой прошивки (основная программа на BASCOM-AVR или AVR-ASM, где метадирективой $loadersize=1024 указывается размер загрузчика, который не затереть бы...), прошивка стартует, выполняется цикл (общение по UART с прогой на ПК), но... Жмём RESET, и нет приветствия "LDR", что говорит о том, что загрузчик не запустился повторно с $3c00, а происходит запуск основного куска кода с $0000.


Фьюзы загрузчика в CVAVR, которые не влияют на результат по неведомым причинам

Проебшись 4 месяца набегами, перебрав все возможные комбинации фьюзов, таки наступил прогресс: сначала нажав кнопку Program All, зашил через CVAVR какие-то ещё ЗАПОВЕДНЫЕ БАЙТЫ, о которых в диалоговом окне ни слова, и загрузчик перестал шить SPM-ом вообще, и это были не LOCK-биты, а какая-то неведомая хepь. Хотя визуально всё оставалось на местах (зашитые фьюзы читались и чекбоксы ставились), это не был глюк CVAVR или битый чип Atmel. Просто фьюзы не зашивались, и на адресе $0000 были значения FFFF, которые пропускались как NOP контроллером и в итоге первый раз всегда запускался загрузчик, когда счётчик команд доходил до $3c00.


Корректные фьюзы в BASCOM-AVR

И только прочитав, что иногда PonyProg шьёт неверно фьюзы, я решил попробовать шить фьюзы не CVAVR, а STK200 BASCOM-AVR. И вуаля, вот оно счастье! CodeVision AVR тоже в помойку, как и PonyProg, за неправильные фьюзы! Надо выставлять в BASCOM-AVR следующие биты:


• Fusebit High DE 01:Bootsize 1024 words
• Fusebit F 0:Select BOOT vector

Ну, умный разберётся, дурак не полезет, короче из всех программаторов наибольшую верность заслуживает BASCOM-AVR.


Также была реализована следующая фича: любой Arduino просит жать RESET чтобы войти в загрузчик ручками, хотя люди с AVRProject пишут, что можно сигнал квитирования DTR (который COM-мыши пользовали для питания) подключить к ноге RESET контроллера, и перезагружать контроллер без участия кнопки. Проверено - RESET via DTR работает и штатно поддерживается MCS Bootloader / Programmer даже через мост CH340G.


Днём и ночью Nokia 1616 (640x621, 105Kb)

Это означает, что теперь я смогу зашить таким образом контроллер станка и апдейтить прошивку онлайн. Также, что я таки рожу более портативный девайс, который без геморроя прошивать можно будет.


Из минусов прошивки по USB/UART:


- нет возможности шить фьюзы и локбиты, что ограничивает манипуляции с частотами и делителями частот, watchdog и т.д., но и нет возможности сделать контроллер кирпичём.


- вероятность сбоя ввиду бросков питания и наводок на линии UART повышаются. То есть случайность может передать "123" контроллеру, он войдёт в режим прошивки, а вместо байтов прошивки на ножку UART будет прилетать эфирный мусор, и контроллер зашьёт его. А вы думали, как так может быть, чтобы в телефонах и иных устройствах от падения слетает прошивка? Да очень просто: BGA-шарик перестаёт контачить или замыкается в 0 с дребезгом, что приводит устройство в неработоспосоность.




А теперь несколько мыслей около.


Раз уж AVR на гарвардской архитектуре, обладает малым объёмом ОЗУ, и приниципиально не хочет выполнять код, взятый из ОЗУ, а люди иссохшишь по свободе 8085 и Z80 изгаляются, вляпывая в эти немощные контроллеры интерпретатор бейсика TinyBasic и вообще Linux запускают, то почему бы свой вариант изврата не предложить?


Да, все эти интерпретаторы недоязыков это здорово, но сразу же встаёт вопрос аппаратной платформы, терминала, ввода-вывода, а это уже ограничение возможностей вплоть до превращения многоногого ATMega в интерпретатор ему-же-подобного ассемблера... GW-BASIC. Это не наш путь. Так вот, волшебная штука этот ваш SPM - LDM, самопрограммирование AVR открывает широчайшие возможности по кастомизации кода во флеше, разве что вместо ОЗУ будет использоваться ФЛЕШ (ага, с его ограниченным ресурсом в 10000 циклов перезаписи). Для начала рисуем ОС, операционку в виде менюшки с возможностью выбора программы для заливки. Эту ОС запихиваем во внешний SPI Flash (3...4 ноги), как BIOS, затем рисуем загрузчик размером в 1024 слова, который при включении контроллера сначала шьёт в контроллер программу менюшки из SPI Flash, а уже менюшка может обращаться куда угодно, в т.ч. и к внешней памяти, SD-карте, UART и т.д., откуда можно взять прошивку любой кастомной программы, тетрис и иные утилитки, и уже вот эта менюшка шьёт на своё место или даёт указание загрузчику через EEPROM или состоянием физического переключателя зашить не себя (менюшку), а вот эту кастомную прогу. Опять же, кастомный переключатель, отвечающий за то, чтобы в контроллере не поселилась навсегда игрушка вместо менюшки, должен быть аппаратным, как кнопка RESET на персональных компьютерах эпохи IBM PC XT, ибо из DIGGER и ALLEY CAT нет другого выхода.


А ещё загрузчиком можно реализовать ликвидацию как прошивки в контроллере для защиты от вскрытия устройства, так и самого устройства, подав питание через умножитель напряжения...


Да вообще полезная возможность.

Рубрики:  этот удивительный мир вокруг нас

Метки:  

Теперь я бы и сам

Дневник

Суббота, 01 Сентября 2012 г. 00:21 + в цитатник
похоронил нокию. Периодически с появлением очередной тучи над корпорацией - продажа подразделения Vertu, закрытия очередной перспективной linux-платформы, сворачивание очередного магазина и поддержки в одной из стран, начинается бурление говн на хабрах. Сегодня говном по этому поводу изойду лично я. Считай за полгода эксплуатации своего желанного Nokia Carbon Arte всплыли почти все косяки, о коих писали маркеты. Нельзя делать так премиум-трубки. Айфун и тот менее коряво собран, что уж вспоминать качество Sirocco.
Самый страшный косяк! Очень стала шаткой рамочка и стеклышко камеры. Отвалилась рамочка - считай трубка уже не кондиция. Три раза лепил на момент, вроде держится, тьфу-тьфу-тьфу.
IMG_6593 (320x240, 88Kb)
При нагреве (а он полюбому есть) в штанах и при разговоре задняя панелька, посаженная на клей(!!!) только чтобы прикрывать винты, отваливается с полпинка. Тоже сажается на момент. К сожалению, мы не в идеальном мире живём, и ту часть, которая у сырка чёрная из чёрного пластика (не заметны царапины), здесь покрыта какой-то нанокраской, которая нахер стирается от ношения в штанах.
IMG_6594 (320x240, 77Kb)
Каким-то волшебным образом под стекло запоз предательский волос, причём не со стороны динамика или кнопок, а с боку. Причины такого поведения неизвестны.
IMG_6595 (320x240, 56Kb)
Пружина слайдера не тугая. Может, я чего не так делаю, но слайдер может висеть в полуоткрытом виде. И закрывать/открывать его можно только положив палец на джойстик, ибо боковым нажатием (чтоб дисплей не пачкать) он периодически упирается во что-то штатное, блядь!!!
IMG_6596 (320x240, 64Kb)
Даром что не китаец. У китайца, кстати, нет проблем с пружиной и рамкой фото. Короче, если ребята бы продолжили и дальше так - стоит пожелать их корпорации поскорее разогнать персонал и руководство, оборудование распродать, продать бренд и лого, и юридически ликвидироваться чтобы не позорить своё славное прошлое.
Рубрики:  здесь и сейчас

Метки:  

Чичас мы

Дневник

Среда, 06 Октября 2010 г. 13:03 + в цитатник
узнаем, можно ли научить меня выкладывать картинки с мабэльного телефона прямо в дняфку...
сравнительно свежая фотка (700x525, 77 Kb)
О_о ути какая пгегесть :) сё получилось. Камера у мну конечно полный треш, да и редактор слабоват, но уже хоть что-то. Я стал на ступеньку выше:)
Рубрики:  бывает)

Метки:  

В такие времена

Дневник

Четверг, 16 Июля 2009 г. 02:01 + в цитатник
трудно находиться в городе. Ужасающая погода, несмотря на все усилия климатических приборов продолжает доканывать людей и вещи. Кроме регулярно отклеивающегося двухметрового (2x2) зеркала в этот раз был трагически доканан невероятно живучий телефон Nokia 8910i, успешно прослуживший более 5 лет - конструкция почти идеальная. Была( Шлейф крепился на клейкое вещество (руки отрывать за такое), и в итоге попал под рельсы выдвижной части, кои со всей мощью настоящих Р65 и колёсной пары к ебене фене раздавили все жучочки-резисторы на этом самом шлейфе. Что ж, трагично. У него были очень юзабельные и приятные кнопочки, не в пример остальным нокийным телефонам скажем так очень хорошей серии 8XXX.
Ввиду отсутствия интернета (он, конечно, был, только вот не использовался по назначению) и невозможности сидеть в такой жаре я таки потерял ориентацию во времени и оказалось, что отправил Пашчке смс с др на сутки позже!! Агррр. И всё-таки с запозданием, но сегодня мы тебя поздравляем Паша Гёс Ху =)
Сегодня я таки привил кота от всяких недугов в ветлечебнице, и в этот раз чинуши удумали очередную отмывалку - что для вывоза животного (любой неразумной биомассы) даже за пределы города, не гря уже о межконтинентальных трипах, нужна справка. Ну чё, не такая уж трудность. Интересно, а разные ТП типа перисхилтон знают о существовании этой бумаги?Оказывается, ещё и небесплатная процедура. На гербовой бумаге со ватермарками. С печатью и голографической наклейкой - и шрифты то заковыристые, и бумагу-не-мять, только вот всё равно как ладошкой подтирались, так и дальше будем - не немцы же, зачем нам на гербовой бумаге, где всё разлиновано, попадать ровно в строчки? Зачем, спрашивается, заниматься такой хернёй, подгонять места впечатки по типу вот так надо, а не так и даже не так ? Правильно, этим не ветеринары должны заниматься, а планктон - хотя на сертификате егэ пятилетней давности та же история, а уж там планктона уйма.
Второе наблюдение - реакция на животное. Тот факт, что в городе индивидуалистов никому нет дела до ближнего своего, меня уже успокоила, но из двух шарашкиных контор организаций меня попросили якобы я негабарит с кошачьей сумкой, ну и из-за аллергиков. Охрана большого магазина меня удивила своей лояльностью: я увидел только инфернальные кошачьи глаза, полные недоумения, когда я закрывал дверцу камеры хранения. Лишь ничтожество, рядом игравшее в азартные игры на терминале, удивлённо посмотрело на меня.
Да, и вот такой P.S.: детский напиток Здрайверы опасен из-за упаковки - не первый раз обнаруживаю плесень на внутренней стороне крышки, она вовсе негерметична и упакована также отвратительно, как паковали в подвалах на коленке до появления специализированных предприятий. Это ж додуматься надо - спец.предприятия по упаковке...тетра пак. Однако, у ребят всё получилось))
В колонках играет - S Club Junior - One Step Closer to Heaven
Рубрики:  здесь и сейчас

Метки:  

история телефонов

Дневник

Воскресенье, 11 Ноября 2007 г. 19:36 + в цитатник
Настроение сейчас - (:
В колонках играет - The Spacelovers - Surrender



идея сплагиачена у I_was_Riot, но тоже захотелось)


Единственное, чего я может быть упустил - это форм-фактор раскладушек. А может и правильно упустил, приличных я еще по крайней мере не видел. Смартфонов здесь нет, и скорее всего не будет - принципиально считаю, что это массовое задротство районно-подъездных подростков.













 (80x150, 5Kb) мобильный телефон Siemens A52

первый телефон ну самого что ни на есть начального уровня, ничего особенного, если не учесть ту смс 14.02.2004...
благополучно отжат в самый неподходящий момент в нетрезвом состоянии.
какое-то время спустя я взял еще один, и сдал на запчасти.

 (76x150, 5Kb)
мобильный телефон Siemens C60

Как повелось с симензами, так и поехало дальше. Пожалуй, самый любимый телефон. Больше 150 часов разговора, где он только не побывал, был утоплен, после чего стал нереально глючить и был в один прекрасный день сдан за 200р на запчасти. Какая жалость. Преогромный архив смс, до сих пор обидно.
 (65x150, 2Kb)мобильный телефон Nokia 2300

куплен в порыве стремления к минимализму и прагматизму. пусть он и классифицируется как трубка для 12летних девочек, мне нравилось радио там)) он живой до сих пор, используется как будильник. пусть и изрядно изменился, но столько ударов об стену и замен частей ни одна трубка еще не терпела. лайфтаймер более 300 часов
 (67x138, 5Kb)
мобильный телефон Siemens S55

когда надоедает минимализм, берешь уже хоть что-то, колебался между c65 и s55, bluetooth победил) он жил недолго - 1 удара ему хватило
 (66x149, 2Kb) мобильный телефон Siemens CX65

вернее, два телефона. идентичных, с разностью в 1 день. увы, новая история заставила поменять даже это. но со вторым телефоном было весело и можно сказать, я был доволен. сейчас он служит ма уже 2.5 года с соответствующим "наболтышем"
 (102x110, 4Kb)
мобильный телефон Siemens SK65

О да, как говорится, сбылась мечта идиота. Он удовлетворял почти все мои потребности на то время) история его конца заслуживает место лучшего хрестоматийного сюжета comedy club. через полгода взял такой же, который жив до сих пор, но любые трубки устаревают, посему занял место на моей полочке и используется только в условиях, когда знаешь, что в ближайшие сутки в сеть не выберусь)
 (62x132, 5Kb)
мобильный телефон Siemens SL55

как говорится, взял у ViVorobev'а на пару дней поносить. поносил полгода, пока не мог себе психологически позволить обновить хоть что-то. в данный момент две половинки существуют независимо друг от друга, склеивать их не имеет смысла сейчас)
 (69x139, 8Kb) мобильный телефон Nokia 8800 Sirocco Dark
устав от постоянных ляпов второго SK65, по осени хочется чего-то лучшего, и этот незабываемый щелчок...ммм...я писал уже раньше об этом. nokia есть nokia...
Рубрики:  бывает)

Метки:  

nokia 8800 sirocco... не могу промолчать)

Дневник

Суббота, 20 Октября 2007 г. 00:34 + в цитатник
Рука испытывает оргазм.
Настроение сейчас - меркантильный оргазм

...и вот этот кусок мартенсита и прочей таблицы менделеева лежит у меня в руке. пожалуй даже буду ставить в подставочку. одним словом - материальная мечта. не скажу, что видел во сне, но очень хотелось)) была даже пошлая мысль взять китайца, но после всего прочтенного и увиденного понял, что не получу и 10% ощущения)) опять, эта трубка не совокупность блютусов и прочего наворота, это - ощущение.

//особый кайф испытываю от фирменного нокийского щелчка при закрытии)))))//

еще ни в чем не разобрался (да и надо ли?). осталось лишь перенести номера, поставить icq и инет, да рингтоны кое-какие...
Рубрики:  здесь и сейчас

Метки:  

глупость какая

Дневник

Вторник, 03 Июля 2007 г. 20:08 + в цитатник
В колонках играет - Wise Hand - Manschoud



Результат теста:Пройти этот тест

"Какой вы мобильник?"

NOKIA 6230i

Вы - деловой и практичный человек, вы привыкли рационально оценивать окружающие собития и людей, тем не менее вы не забываете оставаться стильным и пользоваться успехом у окружающих
Психологические и прикольные тесты LiveInternet.ru



ну че за хуйню пишут? с такими трубками тока кафказцы с рынка ходят и по своему гаркают, нихачууууууу!!!!!!!!:comando:
Рубрики:  бывает)

Метки:  

 Страницы: [1]