a***@spenarnc.xs4all.nl
2024-07-21 10:34:24 UTC
I have run arm forths on the
Raspberry 1 : 32 bits
Orange pi one plus : 64 bits
Orangepi 800 : 64 bit
You can have fun only if you control the hardware for
those single board computers.
For the Orangepi 800 I have full schematics (20 page pdf)
and the description of the soc (RK3399). (1000 page pdf).
(Same for OPI 1+).
I have defined a common interface.
Numbering the gpio pins: system dependant.
A word MMAP-IO that assumes the variable
PERIPHERALS is containing the hardware address.
If you have root privilege MMAP-IO fills
VMA-IO with the virtual address.
Now can you access all hardware in as far you can
distill information from the soc description.
The API I decided upon is
(function gpio -- )
Make gpio perform the function.
-2 (input ) and -1 (output) are fixed.
Other function value are implementation defined.
gpio-on gpio-off ( gpio -- )
turn the pin on and off.
gpio-in (gpio -- bit) deliver a cell with one bit up.
You can get reasonably far with this.
The orange pi 800 (similar to the raspberry pi 400)
has a r.pi 1 connector. I connected a lcd1602
(16 by 2 character display) to the orange pi one plus.
The same software can be used, merely by configuring
the gpio numbers .
In ciforth WANT fashion the library contains the software
for the 3 boards, governed by properly defining
?RP1 ?OP1 ?OP2 .
(I have reported on MMAP-IO before. It went from
c-with-resident-lib to c-static-linked to
In the NeShan board RICV I managed to configure
the serial port to midi 31.25 baudrate, impossible
to do under linux with the facilities provided.
Raspberry 1 : 32 bits
Orange pi one plus : 64 bits
Orangepi 800 : 64 bit
You can have fun only if you control the hardware for
those single board computers.
For the Orangepi 800 I have full schematics (20 page pdf)
and the description of the soc (RK3399). (1000 page pdf).
(Same for OPI 1+).
I have defined a common interface.
Numbering the gpio pins: system dependant.
A word MMAP-IO that assumes the variable
PERIPHERALS is containing the hardware address.
If you have root privilege MMAP-IO fills
VMA-IO with the virtual address.
Now can you access all hardware in as far you can
distill information from the soc description.
The API I decided upon is
(function gpio -- )
Make gpio perform the function.
-2 (input ) and -1 (output) are fixed.
Other function value are implementation defined.
gpio-on gpio-off ( gpio -- )
turn the pin on and off.
gpio-in (gpio -- bit) deliver a cell with one bit up.
You can get reasonably far with this.
The orange pi 800 (similar to the raspberry pi 400)
has a r.pi 1 connector. I connected a lcd1602
(16 by 2 character display) to the orange pi one plus.
The same software can be used, merely by configuring
the gpio numbers .
In ciforth WANT fashion the library contains the software
for the 3 boards, governed by properly defining
?RP1 ?OP1 ?OP2 .
(I have reported on MMAP-IO before. It went from
c-with-resident-lib to c-static-linked to
1-megabyte-assembler to 10-line-assembler to
6-line-high-level-forth ).In the NeShan board RICV I managed to configure
the serial port to midi 31.25 baudrate, impossible
to do under linux with the facilities provided.
--
Don't praise the day before the evening. One swallow doesn't make spring.
You must not say "hey" before you have crossed the bridge. Don't sell the
hide of the bear until you shot it. Better one bird in the hand than ten in
the air. First gain is a cat purring. - the Wise from Antrim -
Don't praise the day before the evening. One swallow doesn't make spring.
You must not say "hey" before you have crossed the bridge. Don't sell the
hide of the bear until you shot it. Better one bird in the hand than ten in
the air. First gain is a cat purring. - the Wise from Antrim -