Экспериментирую с 8-ногим пиком PIC12C508A
Moderator: Shaos
-
- Admin
- Posts: 24011
- Joined: 08 Jan 2003 23:22
- Location: Silicon Valley
Экспериментирую с 8-ногим пиком PIC12C508A
https://hackaday.io/project/18857-1-entry-to-1kb-challenge
Просто интересно что можно сделать на экране ТВ с 4-мегагерцовым пиком (у pic12c508 всего 512 слов программы, а у pic12c508 - 1024 слов).
GitHub: https://github.com/shaos/pixy
P.S. Пока приготовил аналог официального файла P12C508.INC для GPUTILS, который также поддерживает pic12C509 и pic16c505, поэтому называется P12C50X.INC
Просто интересно что можно сделать на экране ТВ с 4-мегагерцовым пиком (у pic12c508 всего 512 слов программы, а у pic12c508 - 1024 слов).
GitHub: https://github.com/shaos/pixy
P.S. Пока приготовил аналог официального файла P12C508.INC для GPUTILS, который также поддерживает pic12C509 и pic16c505, поэтому называется P12C50X.INC
You do not have the required permissions to view the files attached to this post.
Я тут за главного - если что шлите мыло на me собака shaos точка net
-
- Admin
- Posts: 24011
- Joined: 08 Jan 2003 23:22
- Location: Silicon Valley
Re: Экспериментирую с самым маленьким пиком PIC12C508A
4 МГц это означает 1 миллион операций в секунду или 1 мкс на инструкцию, т.е. в одну строку NTSC (63.5 мкс) влезет 64 инструкций, которые можно разбить так:
- 4 операции темнота до синхроимпульса;
- 5 операций синхроимпульс;
- 7 операций темнота после синхроимпульса;
- 48 операций видимая часть экрана.
т.е. удастся вывести только 48 элементов по горизонтали, наполнение каждого может определятся 3-4 битами (еще один вход может быть кнопкой и один выход будет генерить синхру).
P.S. Если выводить произвольные элементы, то их будет еще меньше, чем 48, т.к. на вывод каждого будет уходить больше одной команды...
- 4 операции темнота до синхроимпульса;
- 5 операций синхроимпульс;
- 7 операций темнота после синхроимпульса;
- 48 операций видимая часть экрана.
т.е. удастся вывести только 48 элементов по горизонтали, наполнение каждого может определятся 3-4 битами (еще один вход может быть кнопкой и один выход будет генерить синхру).
P.S. Если выводить произвольные элементы, то их будет еще меньше, чем 48, т.к. на вывод каждого будет уходить больше одной команды...
Я тут за главного - если что шлите мыло на me собака shaos точка net
-
- Doomed
- Posts: 449
- Joined: 08 Apr 2013 04:04
- Location: 213.247.249.139
Re: Экспериментирую с самым маленьким пиком PIC12C508A
А почему не F508, который можно перешивать, причём не вынимая из девайса?
привет засранцу лавру :)
-
- Devil
- Posts: 912
- Joined: 06 Oct 2006 03:17
- Location: г.Лянтор,Сургутского р-на,ХМАО
Re: Экспериментирую с самым маленьким пиком PIC12C508A
На подобном 8-пиновым пике я видел схему со входом и выходом видеосигнала, куда подмешивались некоторые буквы.
-
- Admin
- Posts: 24011
- Joined: 08 Jan 2003 23:22
- Location: Silicon Valley
Re: Экспериментирую с самым маленьким пиком PIC12C508A
Потому что вот: И потом у меня не только F508 нету, но и программаторов егошних...angry_troll wrote:А почему не F508, который можно перешивать, причём не вынимая из девайса?
P.S. Хотя вру - вот этот вроде могёт и C, и F
P.P.S. Если я какой-то флешевый пик из 12-битных и буду использовать, то это будет (по наводке Лавра) PIC16F505 т.к. он похож на 155ЛА3

You do not have the required permissions to view the files attached to this post.
Я тут за главного - если что шлите мыло на me собака shaos точка net
-
- Admin
- Posts: 24011
- Joined: 08 Jan 2003 23:22
- Location: Silicon Valley
Re: Экспериментирую с самым маленьким пиком PIC12C508A
У этих чипов нету прерываний - совсем. Так что придётся видеосигнал генерить по ходу основной программы, аккуратно высчитывая такты, скажем путём последовательного вызова подпрограмм, генерирующих разнообразные строки растра:
Code: Select all
; call ; 2/2
Line:
nop ; 1/3
nop ; 1/4
; video 48 instructions /52
...
clrf GPIO ; 1/53 -> video 48
nop ; 1/54
nop ; 1/55
movlw 0x08 ; 1/56
tris GPIO ; 1/57
incf LineN,f ; 1/58 -> sync
nop ; 1/59 -> sync
nop ; 1/60 -> sync
movlw 0x18 ; 1/61 -> sync
tris GPIO ; 1/62 -> sync
retlw 1 ; 2/64
Я тут за главного - если что шлите мыло на me собака shaos точка net
-
- Doomed
- Posts: 449
- Joined: 08 Apr 2013 04:04
- Location: 213.247.249.139
Re: Экспериментирую с самым маленьким пиком PIC12C508A
Понятно, и лампочка есть тоже? А остальные три -- в помойку?Shaos wrote:Потому что вот:

Последний раз пицами занимался давным давно, но вижу у ф508 2 ноги для внутрисхемного программатора -- неужели какие-то программаторы внтурисхемное программирование могут не поддерживать?И потом у меня не только F508 нету, но и программаторов егошних...
привет засранцу лавру :)
-
- Admin
- Posts: 24011
- Joined: 08 Jan 2003 23:22
- Location: Silicon Valley
Re: Экспериментирую с самым маленьким пиком PIC12C508A
Надо поглядеть на PICKIT3 - может он умеет, а вообще я гляжу бывают даже 12-битные PIC16F54 и PIC16F57 (ближайший родственник SX28) на 20 МГц - это всё видимо совсем недавно всплыло (судя по датам в даташытах 2007-2009)
Утьтровиолетная стиралка у меня конечно же тоже есть
P.S. Остальные три будут однократно прошиты окончательными версиями очередных итераций
Утьтровиолетная стиралка у меня конечно же тоже есть

P.S. Остальные три будут однократно прошиты окончательными версиями очередных итераций

Я тут за главного - если что шлите мыло на me собака shaos точка net
-
- Doomed
- Posts: 449
- Joined: 08 Apr 2013 04:04
- Location: 213.247.249.139
Re: Экспериментирую с самым маленьким пиком PIC12C508A
А я в деццве пики (и не только пики, аврки и 51ые атмельки) шил с амиги. Железки сам паял, софт тоже сам писал (не считая пиков, там был софт, написанный RDC). Кросс-асмы находились, что характерно...
привет засранцу лавру :)
-
- Admin
- Posts: 24011
- Joined: 08 Jan 2003 23:22
- Location: Silicon Valley
Re: Экспериментирую с самым маленьким пиком PIC12C508A
Да там столько команд, что асм можно самому за пару вечеров накидатьangry_troll wrote:А я в деццве пики (и не только пики, аврки и 51ые атмельки) шил с амиги. Железки сам паял, софт тоже сам писал (не считая пиков, там был софт, написанный RDC). Кросс-асмы находились, что характерно...

А самодельные прошивалки - это да, небанальная активность

Я тут за главного - если что шлите мыло на me собака shaos точка net
-
- Doomed
- Posts: 449
- Joined: 08 Apr 2013 04:04
- Location: 213.247.249.139
Re: Экспериментирую с самым маленьким пиком PIC12C508A
Прошивалка at89c51 была сделана на КР580ВВ55 
А аврки и пики шились проводками из лпт.
На амиге лтп сделан на обычном 8520 (VIA), и там можно побитно ввод-вывод переключать.
Ещё делал эмулятор ПЗУ, состоял из 62256, кучи буферов типа АП5-АП6 и сдвиговых регистров забыл каких -- почти ЖТАГ доморощенный был

А аврки и пики шились проводками из лпт.
На амиге лтп сделан на обычном 8520 (VIA), и там можно побитно ввод-вывод переключать.
Ещё делал эмулятор ПЗУ, состоял из 62256, кучи буферов типа АП5-АП6 и сдвиговых регистров забыл каких -- почти ЖТАГ доморощенный был

привет засранцу лавру :)
-
- Admin
- Posts: 24011
- Joined: 08 Jan 2003 23:22
- Location: Silicon Valley
Re: Экспериментирую с самым маленьким пиком PIC12C508A
Ну железячно то понятно как оно может быть устроено - главная проблема "алгоритм" прошивки, точные моменты подавания импульсов нужной амплитуды и длительности и т.д.
Я тут за главного - если что шлите мыло на me собака shaos точка net
-
- Doomed
- Posts: 449
- Joined: 08 Apr 2013 04:04
- Location: 213.247.249.139
Re: Экспериментирую с самым маленьким пиком PIC12C508A
По-моему, алгоритмы прошивки пишут в даташитах... Ну по крайней мере на пики 8битные, аврки (хз как с новыми, всякие от-тяни и более старые -- написано) всё в даташитах есть.
Писать -- тупо берёшь и пишешь, на сях.
Писать -- тупо берёшь и пишешь, на сях.
привет засранцу лавру :)
-
- Admin
- Posts: 24011
- Joined: 08 Jan 2003 23:22
- Location: Silicon Valley
Re: Экспериментирую с самым маленьким пиком PIC12C508A
Ну не все пишут и не для всего, а если пишут, то бывает фиг поймешь как оно работаетangry_troll wrote:По-моему, алгоритмы прошивки пишут в даташитах... Ну по крайней мере на пики 8битные, аврки (хз как с новыми, всякие от-тяни и более старые -- написано) всё в даташитах есть.
Писать -- тупо берёшь и пишешь, на сях.

Поэтому люди и подсматривают всякими бас-пиратами и повторяют иголка в иголку

Я тут за главного - если что шлите мыло на me собака shaos точка net
-
- Admin
- Posts: 24011
- Joined: 08 Jan 2003 23:22
- Location: Silicon Valley
Re: Экспериментирую с самым маленьким пиком PIC12C508A
Поизучал вопрос - самым большим из продаваемых на сегодняшний день 12-битных пиков является PIC16F59 в 40-ногом корпусе - у него 32 I/O и цена чуть больше доллара! Может его и надо заюзать в NedoVideo? Там все равно прерывания не используются и никакая другая периферия ненужна. Ну еще пределы разгоняемости надо определить т.к. недовидео надо гнать примерно на 26 МГц, чтобы все в видимую область экрана влезло...Shaos wrote:Надо поглядеть на PICKIT3 - может он умеет, а вообще я гляжу бывают даже 12-битные PIC16F54 и PIC16F57 (ближайший родственник SX28) на 20 МГц - это всё видимо совсем недавно всплыло (судя по датам в даташытах 2007-2009)
Я тут за главного - если что шлите мыло на me собака shaos точка net