В общем залил ОС. Ее рабочее название AvrOS_1.
http://nedopc.org/nedopc/upload/NedoPC- ... S.v0.1.zip
Документация в каталоге doc/AvrOS_1.html. Она весьма неполная, зато с примерами.
Залитая ОС проверена с платой, которая теперь переименована в NedoAVR-90.8535. Так что все должно компилиться и работать.
Для работы ОС требуется (это то, чем пользуюсь я):
- Плата NedoAVR-90.8535.
- avr-gcc (GCC) 3.3.1 (но и на 2.96 вроде работает)
- avr-libc 1.0.4.
Помимо прочего, в ОС включены модули поддержки устройств, не имеющихся на плате NedoAVR-90.8535. Описание работы с этими модулями так же постараюсь сделать в будущем, но пока не знаю когда.
Все вопросы по непоняткам и траблам задавайте здесь.
Так же могу добавить, что я писал данную ОС для управления реальным технологическим оборудованием по очистке воды. Оборудование стоит и работает уже около трех лет, так что ОС рабочая, а не просто игрушка)))
недо-оська для AVR
Moderator: Shaos
-
- Doomed
- Posts: 491
- Joined: 16 Apr 2005 22:35
- Location: Томск
-
- Doomed
- Posts: 491
- Joined: 16 Apr 2005 22:35
- Location: Томск
Кстати - вместо того, чтобы ругать схему (которая хоть и работает, но еще "в процессе"), поругайте недооську для AVRок которую я выложил тут http://nedopc.org/nedopc/upload/NedoPC- ... S.v0.1.zip
Это мне было бы гораздо нужнее.
Это мне было бы гораздо нужнее.
-
- Admin
- Posts: 24080
- Joined: 08 Jan 2003 23:22
- Location: Silicon Valley
Выглядит вполне занимательноSfS wrote:Кстати - вместо того, чтобы ругать схему (которая хоть и работает, но еще "в процессе"), поругайте недооську для AVRок которую я выложил тут http://nedopc.org/nedopc/upload/NedoPC- ... S.v0.1.zip
Это мне было бы гораздо нужнее.

Я тут за главного - если что шлите мыло на me собака shaos точка net
-
- Doomed
- Posts: 491
- Joined: 16 Apr 2005 22:35
- Location: Томск
Поправил НодоОську и описание к ней.
Удалил ненужные пока модули. Добавил автоподключение модулей при компиляции. Оттестировал таймер и COM-порт.
Лежит тут. http://nedopc.org/nedopc/upload/NedoPC- ... v0.1.1.zip
В каталоге ../doc - описание и последний вариант схемы.
До понедельника можете разводить критику.
Удалил ненужные пока модули. Добавил автоподключение модулей при компиляции. Оттестировал таймер и COM-порт.
Лежит тут. http://nedopc.org/nedopc/upload/NedoPC- ... v0.1.1.zip
В каталоге ../doc - описание и последний вариант схемы.
До понедельника можете разводить критику.
-
- Admin
- Posts: 24080
- Joined: 08 Jan 2003 23:22
- Location: Silicon Valley
Описание с расширением .sxw? Кем читать?SfS wrote:Поправил НодоОську и описание к ней.
Удалил ненужные пока модули. Добавил автоподключение модулей при компиляции. Оттестировал таймер и COM-порт.
Лежит тут. http://nedopc.org/nedopc/upload/NedoPC- ... v0.1.1.zip
В каталоге ../doc - описание и последний вариант схемы.
До понедельника можете разводить критику.

Я тут за главного - если что шлите мыло на me собака shaos точка net
-
- Doomed
- Posts: 491
- Joined: 16 Apr 2005 22:35
- Location: Томск
О мама мия ! Простите - сконвертировать забыл в html.Shaos wrote:
Описание с расширением .sxw? Кем читать?
.sxw - документ OpenOffice.
Сконвертировал, выложил.
http://nedopc.org/nedopc/upload/NedoPC- ... v0.1.2.zip
Там и html и sxw.
-
- Admin
- Posts: 24080
- Joined: 08 Jan 2003 23:22
- Location: Silicon Valley
Интересно! Предложение автору - написать простую доку где описывались бы программные и аппаратные средства для работы с девайсом (например мне интересно как и чем собирать AVROS и чем программировать железяку).SfS wrote:О мама мия ! Простите - сконвертировать забыл в html.Shaos wrote:
Описание с расширением .sxw? Кем читать?
.sxw - документ OpenOffice.
Сконвертировал, выложил.
http://nedopc.org/nedopc/upload/NedoPC- ... v0.1.2.zip
Там и html и sxw.
Я тут за главного - если что шлите мыло на me собака shaos точка net
-
- Admin
- Posts: 24080
- Joined: 08 Jan 2003 23:22
- Location: Silicon Valley
Имя AVROS кстати занято под гнушную оську для авров:SfS wrote:Кстати - вместо того, чтобы ругать схему (которая хоть и работает, но еще "в процессе"), поругайте недооську для AVRок которую я выложил тут http://nedopc.org/nedopc/upload/NedoPC- ... S.v0.1.zip
Это мне было бы гораздо нужнее.
http://www.cdf.toronto.edu/~g2justin/avros.html
Если SfS является единственным автором предлагаемого программного продукта, то может переименовать оську в AVROSfS?

Я тут за главного - если что шлите мыло на me собака shaos точка net
-
- Admin
- Posts: 24080
- Joined: 08 Jan 2003 23:22
- Location: Silicon Valley
-
- Doomed
- Posts: 491
- Joined: 16 Apr 2005 22:35
- Location: Томск
Зачем ? То AVROS называется, а это NedoPC-90.AVROS - помоему очень отличные названия)Shaos wrote:
Имя AVROS кстати занято под гнушную оську для авров:
http://www.cdf.toronto.edu/~g2justin/avros.html
Если SfS является единственным автором предлагаемого программного продукта, то может переименовать оську в AVROSfS?
-
- Doomed
- Posts: 491
- Joined: 16 Apr 2005 22:35
- Location: Томск
Дело в том, что я не в /usr/local/include ставил прогу, а в /usr/include (из ALT-Linux - там кросссредства для AVR идут в дистрибе)Shaos wrote:Собрал недо-оську изменив одну строчку в Makefile:
AVR-INC= -I. --include avr/io.h --include avr/ina90.h --include system/sysdef.h
и создав линк avr ссылающийся на /usr/local/avr/include
поэтому нужна ссылка.
Собрать то ты ее собрал. А работает ли ?
-
- Admin
- Posts: 24080
- Joined: 08 Jan 2003 23:22
- Location: Silicon Valley
Получились два файла:SfS wrote:Дело в том, что я не в /usr/local/include ставил прогу, а в /usr/include (из ALT-Linux - там кросссредства для AVR идут в дистрибе)Shaos wrote:Собрал недо-оську изменив одну строчку в Makefile:
AVR-INC= -I. --include avr/io.h --include avr/ina90.h --include system/sysdef.h
и создав линк avr ссылающийся на /usr/local/avr/include
поэтому нужна ссылка.
Собрать то ты ее собрал. А работает ли ?
main.hex
Code: Select all
:1000000010C02BC02AC029C028C027C026C025C0C8
:1000100024C02EC022C021C020C01FC01EC01DC0D1
:100020001CC011241FBE20E0A89521BD20E025BFE3
:10003000ECE3F4E0A0E6B0E020E003C0C895319620
:100040000D92A236B207D1F7A2E6B0E020E001C0DF
:100050001D92AC36B207E1F7E0C100C0189581E00F
:1000600083BF89B7816089BF88B7816088BF0895E1
:100070001F920F920FB60F9211242F933F934F931D
:100080005F936F937F938F939F93AF93BF93CF9320
:10009000EF93FF938091650090916600009729F09F
:1000A0000197909366008093650080916500909120
:1000B0006600892BB1F180916200909163000097F6
:1000C00029F0019790936300809362008091620011
:1000D00090916300892B69F582E19AE79093630020
:1000E000809362004BD180916400882319F0815085
:1000F00080936400809164008823D9F4CCE3C0939A
:1001000064004DD180916700882319F0815080935D
:10011000670080916700882361F4C093670050D125
:1001200008C085E39CE0909366008093650014D13D
:10013000C2CFFF91EF91CF91BF91AF919F918F91DE
:100140007F916F915F914F913F912F910F900FBED3
:100150000F901F90189580E090E02DD080E090E007
:1001600035D01EBC000000001FBC00000000089538
:1001700083E88FBD000000001DBC000000001CBC17
:100180000000000081E08EBD0000000081B38063AC
:1001900081BB00000000089580E090E00CD080E07A
:1001A00090E014D01EBC0000000081B38F7C81BBA6
:1001B000000000000895282F392F832F99278BBD29
:1001C000000000002ABD000000000895282F392FEC
:1001D000832F992789BD0000000028BD0000000082
:1001E00008958BB38D618D7F8BBB000000008AB3B7
:1001F0008F618ABB0000000014BA0000000008955F
:10020000282F392F8BB385608BBB0000000025BBE6
:10021000000000008FEF84BB000000008BB3826001
:100220008BBB000000008BB38D7F8BBB00000000F8
:1002300014BA000000008BB3876F8BBB0000000076
:1002400085B3982F8BB388608BBB00000000892F8B
:1002500099270895282F392F8BB38A6F8BBB000005
:10026000000025BB000000008FEF84BB00000000F1
:100270008BB382608BBB000000008BB38D7F8BBB88
:100280000000000014BA000000008BB3876F8BBB26
:100290000000000085B3982F8BB389608BBB0000F2
:1002A0000000892F99270895282F392F8BB3856057
:1002B0008BBB0000000025BB000000008FEF84BB5B
:1002C000000000008BB382608BBB000000008BB38A
:1002D0008D7F8BBB0000000065BB000000008BB36E
:1002E0008F6E8BBB000000008BB380618BBB000066
:1002F000000014BA000000000895282F392F8BB396
:100300008A6F8BBB0000000025BB000000008FEF50
:1003100084BB000000008BB382608BBB0000000038
:100320008BB38D7F8BBB0000000065BB000000001D
:100330008BB38F6E8BBB000000008BB380618BBBD7
:100340000000000014BA000000008BB381608BBB7A
:1003500000000000089508951F9380916B0088238A
:1003600049F481E080936B001FB77894F4DF1FBFDE
:1003700010926B001F91089538D008951F938091BB
:100380006900882349F481E0809369001FB778945D
:10039000F3DF1FBF109269001F91089508951F9306
:1003A00080916800882349F481E0809368001FB73A
:1003B0007894F4DF1FBF109268001F91089508958C
:1003C0001F9380916A00882349F481E080936A003A
:1003D0001FB77894F4DF1FBF10926A001F91089531
:1003E0003EDEB9DEFEDE78940895809160009927A4
:1003F00087FD9095880F991F8093600080311CF0D5
:1004000081E08093600098B39F6080916000809548
:10041000982398BB000000000895CFE5D2E0DEBF2E
:10042000CDBFDEDF88B38F6088BB0000000087B3DC
:0C0430008F6087BB00000000FFCFFFCFF3
:02043C000100BD
:00000001FF
Code: Select all
Allocating common symbols
Common symbol size file
_1mvar 0x1 rtl/rtl.o
TIMER_1sec 0x2 hl/hl.o
_1svar 0x1 rtl/rtl.o
_1hvar 0x1 rtl/rtl.o
_100msvar 0x1 rtl/rtl.o
TIMER_1min 0x1 hl/hl.o
TIMER_100ms 0x2 hl/hl.o
TIMER_1hour 0x1 hl/hl.o
Memory Configuration
Name Origin Length Attributes
text 0x00000000 0x00002000 xr
data 0x00800060 0x00000200 rw !x
eeprom 0x00810000 0x00000200 rw !x
*default* 0x00000000 0xffffffff
Linker script and memory map
LOAD /usr/local/lib/gcc-lib/avr/3.2.3/../../../../avr/lib/crts8535.o
LOAD hl/hl.o
LOAD rtl/rtl.o
LOAD osl/osl.o
LOAD upl/upl.o
LOAD /usr/local/lib/gcc-lib/avr/3.2.3/libgcc.a
LOAD /usr/local/lib/gcc-lib/avr/3.2.3/../../../../avr/lib/libc.a
LOAD /usr/local/lib/gcc-lib/avr/3.2.3/libgcc.a
.hash
*(.hash)
.dynsym
*(.dynsym)
.dynstr
*(.dynstr)
.gnu.version
*(.gnu.version)
.gnu.version_d
*(.gnu.version_d)
.gnu.version_r
*(.gnu.version_r)
.rel.init
*(.rel.init)
.rela.init
*(.rela.init)
.rel.text
*(.rel.text)
*(.rel.text.*)
*(.rel.gnu.linkonce.t*)
.rela.text
*(.rela.text)
*(.rela.text.*)
*(.rela.gnu.linkonce.t*)
.rel.fini
*(.rel.fini)
.rela.fini
*(.rela.fini)
.rel.rodata
*(.rel.rodata)
*(.rel.rodata.*)
*(.rel.gnu.linkonce.r*)
.rela.rodata
*(.rela.rodata)
*(.rela.rodata.*)
*(.rela.gnu.linkonce.r*)
.rel.data
*(.rel.data)
*(.rel.data.*)
*(.rel.gnu.linkonce.d*)
.rela.data
*(.rela.data)
*(.rela.data.*)
*(.rela.gnu.linkonce.d*)
.rel.ctors
*(.rel.ctors)
.rela.ctors
*(.rela.ctors)
.rel.dtors
*(.rel.dtors)
.rela.dtors
*(.rela.dtors)
.rel.got
*(.rel.got)
.rela.got
*(.rela.got)
.rel.bss
*(.rel.bss)
.rela.bss
*(.rela.bss)
.rel.plt
*(.rel.plt)
.rela.plt
*(.rela.plt)
.text 0x00000000 0x43c
*(.init)
.init 0x00000000 0x22 /usr/local/lib/gcc-lib/avr/3.2.3/../../../../avr/lib/crts8535.o
*(.progmem.gcc*)
*(.progmem*)
0x00000022 . = ALIGN (0x2)
*(.text)
.text 0x00000022 0x3c /usr/local/lib/gcc-lib/avr/3.2.3/../../../../avr/lib/crts8535.o
0x0000005a _vector_4
0x0000005a _vector_6
0x0000005a _vector_14
0x0000005a _vector_7
0x0000005a _vector_8
0x0000005a _vector_16
0x00000022 _init_
0x0000005a _vector_12
0x0000005a _vector_13
0x0000005a _vector_3
0x0000005c _unexpected_
0x0000005a _vector_2
0x0000005a _vector_10
0x0000005a _vector_5
0x0000005a _vector_1
0x0000005a _vector_15
0x00000022 _real_init_
0x0000005a _vector_11
.text 0x0000005e 0x2f8 hl/hl.o
0x00000070 _vector_9
0x000001e2 ni_15_init
0x00000156 pwm_init
0x000002a8 ni_15_wrmem
0x000001b6 pwm_set_A
0x0000005e timer0_init
0x00000198 pwm_stop
0x00000254 ni_15_rdio
0x00000200 ni_15_rdmem
0x000001cc pwm_set_B
0x000002fa ni_15_wrio
0x00000170 pwm_start
.text 0x00000356 0x8a rtl/rtl.o
0x00000378 _1s
0x0000039c _1m
0x00000356 _100ms
0x00000358 task_100ms
0x0000039e task_1m
0x000003be _1h
0x000003c0 task_1h
0x0000037c task_1s
.text 0x000003e0 0x5c upl/upl.o
0x000003e0 AUTOINIT_ALL_MODULES
0x000003ea ttask_leds_shift
0x0000041a main
0x0000043c . = ALIGN (0x2)
*(.text.*)
0x0000043c . = ALIGN (0x2)
*(.fini)
0x0000043c _etext = .
.data 0x00800060 0x2 load address 0x0000043c
0x00800060 PROVIDE (__data_start, .)
*(.data)
.data 0x00800060 0x1 upl/upl.o
0x00800060 sled
*(.gnu.linkonce.d*)
0x00800062 . = ALIGN (0x2)
*fill* 0x00800061 0x1 00
0x00800062 _edata = .
.bss 0x00800062 0xa
0x00800062 PROVIDE (__bss_start, .)
*(.bss)
*(COMMON)
COMMON 0x00800062 0x6 hl/hl.o
0x0 (size before relaxing)
0x00800062 TIMER_1sec
0x00800064 TIMER_1min
0x00800065 TIMER_100ms
0x00800067 TIMER_1hour
COMMON 0x00800068 0x4 rtl/rtl.o
0x0 (size before relaxing)
0x00800068 _1mvar
0x00800069 _1svar
0x0080006a _1hvar
0x0080006b _100msvar
0x0080006c PROVIDE (__bss_end, .)
0x0080006c _end = .
.eeprom 0x00810000 0x0 load address 0x0000043e
*(.eeprom*)
0x00810000 __eeprom_end = .
.stab 0x00000000 0x1e78
*(.stab)
.stab 0x00000000 0x3cc /usr/local/lib/gcc-lib/avr/3.2.3/../../../../avr/lib/crts8535.o
.stab 0x000003cc 0xffc hl/hl.o
0x1008 (size before relaxing)
.stab 0x000013c8 0x4a4 rtl/rtl.o
0x60c (size before relaxing)
.stab 0x0000186c 0x234 osl/osl.o
0x39c (size before relaxing)
.stab 0x00001aa0 0x3d8 upl/upl.o
0x540 (size before relaxing)
.stabstr 0x00000000 0xbdb
*(.stabstr)
.stabstr 0x00000000 0xbdb /usr/local/lib/gcc-lib/avr/3.2.3/../../../../avr/lib/crts8535.o
0x0 (size before relaxing)
.stab.excl
*(.stab.excl)
.stab.exclstr
*(.stab.exclstr)
.stab.index
*(.stab.index)
.stab.indexstr
*(.stab.indexstr)
.comment
*(.comment)
.debug
*(.debug)
.line
*(.line)
.debug_srcinfo
*(.debug_srcinfo)
.debug_sfnames
*(.debug_sfnames)
.debug_aranges
*(.debug_aranges)
.debug_pubnames
*(.debug_pubnames)
.debug_info
*(.debug_info)
*(.gnu.linkonce.wi.*)
.debug_abbrev
*(.debug_abbrev)
.debug_line
*(.debug_line)
.debug_frame
*(.debug_frame)
.debug_str
*(.debug_str)
.debug_loc
*(.debug_loc)
.debug_macinfo
*(.debug_macinfo)
0x0000025f PROVIDE (__stack, 0x25f)
OUTPUT(main.out elf32-avr)

Last edited by Shaos on 07 May 2005 06:15, edited 1 time in total.
Я тут за главного - если что шлите мыло на me собака shaos точка net
-
- Admin
- Posts: 24080
- Joined: 08 Jan 2003 23:22
- Location: Silicon Valley
Ааа - ну это совсем другое делоSfS wrote:Зачем ? То AVROS называется, а это NedoPC-90.AVROS - помоему очень отличные названия)Shaos wrote:
Имя AVROS кстати занято под гнушную оську для авров:
http://www.cdf.toronto.edu/~g2justin/avros.html
Если SfS является единственным автором предлагаемого программного продукта, то может переименовать оську в AVROSfS?

Я тут за главного - если что шлите мыло на me собака shaos точка net