cortex-from-scratch
4 years agoSystem Calls cleanup, multiple Processes and context switch master
Robin Krens [Thu, 31 Oct 2019 11:25:29 +0000 (12:25 +0100)]
System Calls cleanup, multiple Processes and context switch

4 years agobasic scheduling, basic syscall, (added .data copy)
Robin Krens [Wed, 30 Oct 2019 19:01:52 +0000 (20:01 +0100)]
basic scheduling, basic syscall, (added .data copy)

4 years agoSYSCALL cleanup and ivt rewrite
Robin Krens [Tue, 22 Oct 2019 20:31:43 +0000 (22:31 +0200)]
SYSCALL cleanup and ivt rewrite

4 years agoSYSCALL naked assembly working
Robin Krens [Tue, 22 Oct 2019 19:04:20 +0000 (21:04 +0200)]
SYSCALL naked assembly working

4 years agoMerge branch 'master' of https://github.com/robinkrens/cortex-from-scratch
Robin Krens [Sun, 20 Oct 2019 20:27:07 +0000 (22:27 +0200)]
Merge branch 'master' of https://github.com/robinkrens/cortex-from-scratch

4 years agokalloc and kfree interface and abstraction
Robin Krens [Sun, 20 Oct 2019 20:23:01 +0000 (22:23 +0200)]
kalloc and kfree interface and abstraction
new file:   heap.c

4 years agokalloc and kfree interface and abstraction
Robin Krens [Sun, 20 Oct 2019 20:23:01 +0000 (22:23 +0200)]
kalloc and kfree interface and abstraction

4 years agoMerge branch 'master' of https://github.com/robinkrens/cortex-from-scratch
Robin Krens [Sun, 20 Oct 2019 00:15:37 +0000 (02:15 +0200)]
Merge branch 'master' of https://github.com/robinkrens/cortex-from-scratch

4 years agokheap_info and trace
Robin Krens [Sun, 20 Oct 2019 00:14:29 +0000 (02:14 +0200)]
kheap_info and trace

4 years agobasic heap implementation
Robin Krens [Sat, 19 Oct 2019 21:04:22 +0000 (23:04 +0200)]
basic heap implementation

4 years agoUpdate README.md
Robin Krens [Fri, 20 Sep 2019 11:02:28 +0000 (18:02 +0700)]
Update README.md

4 years agost7735s: documentation, ready for merge
Robin Krens [Fri, 20 Sep 2019 09:08:00 +0000 (16:08 +0700)]
st7735s: documentation, ready for merge

4 years agost7735s: font bitmaps and scrolling update (needs review)
Robin Krens [Thu, 19 Sep 2019 16:17:49 +0000 (23:17 +0700)]
st7735s: font bitmaps and scrolling update (needs review)

4 years agost3375s: linked to stdout, printf, works as an olscool VGA screen now
Robin Krens [Thu, 19 Sep 2019 05:32:12 +0000 (12:32 +0700)]
st3375s: linked to stdout, printf, works as an olscool VGA screen now

4 years agost7735s: scrolling screen
Robin Krens [Thu, 19 Sep 2019 04:32:15 +0000 (11:32 +0700)]
st7735s: scrolling screen

4 years agost7735s: bug fix uninitialized value
Robin Krens [Wed, 18 Sep 2019 08:08:58 +0000 (15:08 +0700)]
st7735s: bug fix uninitialized value

4 years agost7735s: houston, we got a letter
Robin Krens [Wed, 18 Sep 2019 07:31:54 +0000 (14:31 +0700)]
st7735s: houston, we got a letter

4 years agost7735s: tft_fill and tft_setpixel basic functionality
Robin Krens [Tue, 17 Sep 2019 17:20:53 +0000 (00:20 +0700)]
st7735s: tft_fill and tft_setpixel basic functionality

4 years agost7735s: i can draw
Robin Krens [Tue, 17 Sep 2019 14:05:44 +0000 (21:05 +0700)]
st7735s: i can draw

4 years agost7735s: signs of life
Robin Krens [Mon, 16 Sep 2019 09:46:16 +0000 (16:46 +0700)]
st7735s: signs of life

4 years agomk450: documentation, prepare for merge
Robin Krens [Fri, 13 Sep 2019 11:37:40 +0000 (18:37 +0700)]
mk450: documentation, prepare for merge

4 years agomk450: code clean up and documentation
Robin Krens [Fri, 13 Sep 2019 11:14:03 +0000 (18:14 +0700)]
mk450: code clean up and documentation

4 years agomk450: x and y axis basic implementation
Robin Krens [Fri, 13 Sep 2019 10:28:21 +0000 (17:28 +0700)]
mk450: x and y axis basic implementation

4 years agodate and readme update
Robin Krens [Wed, 11 Sep 2019 06:15:40 +0000 (13:15 +0700)]
date and readme update

4 years agoprintid and get_temp implementation
Robin Krens [Tue, 10 Sep 2019 13:43:53 +0000 (20:43 +0700)]
printid and get_temp implementation

4 years agobasic command implementation traditional way
Robin Krens [Tue, 3 Sep 2019 13:34:52 +0000 (21:34 +0800)]
basic command implementation traditional way

4 years agosketchy slow test with LEDs
Robin Krens [Mon, 2 Sep 2019 13:52:07 +0000 (21:52 +0800)]
sketchy slow test with LEDs

4 years agosimple timer input push/pull, output open-drain
Robin Krens [Wed, 28 Aug 2019 10:37:25 +0000 (18:37 +0800)]
simple timer input push/pull, output open-drain

4 years agosimple timer with led test
Robin Krens [Wed, 28 Aug 2019 09:43:16 +0000 (17:43 +0800)]
simple timer with led test

4 years agoUpdate README.md
Robin Krens [Wed, 14 Aug 2019 18:33:15 +0000 (02:33 +0800)]
Update README.md

4 years agoReadme.md update
Robin Krens [Wed, 14 Aug 2019 18:30:18 +0000 (02:30 +0800)]
Readme.md update

4 years agoadded commenting, removed deprecated functions
Robin Krens [Wed, 14 Aug 2019 18:17:55 +0000 (02:17 +0800)]
added commenting, removed deprecated functions

4 years agortc example with tm1637 driver
Robin Krens [Wed, 14 Aug 2019 14:21:21 +0000 (22:21 +0800)]
rtc example with tm1637 driver

4 years agorewrite register function, code formatting
Robin Krens [Tue, 13 Aug 2019 19:05:58 +0000 (03:05 +0800)]
rewrite register function, code formatting

4 years agoMerge branch 'tm1637'
Robin Krens [Tue, 13 Aug 2019 16:49:37 +0000 (00:49 +0800)]
Merge branch 'tm1637'

4 years agoacknowledges for send bits
Robin Krens [Tue, 13 Aug 2019 16:06:12 +0000 (00:06 +0800)]
acknowledges for send bits

4 years agotm1637 function routine rewrite
Robin Krens [Tue, 13 Aug 2019 15:33:15 +0000 (23:33 +0800)]
tm1637 function routine rewrite

4 years agoset address location, reset I2C
Robin Krens [Tue, 13 Aug 2019 12:30:42 +0000 (20:30 +0800)]
set address location, reset I2C

4 years agoBasic functionality for TM1637
Robin Krens [Mon, 12 Aug 2019 20:53:23 +0000 (04:53 +0800)]
Basic functionality for TM1637

Note: this chip is big-endian.
Note2: Similar to I2C, but with no addressing phase. Hacked with dummy
comments

4 years agopretty print EEPROM
Robin Krens [Mon, 12 Aug 2019 13:39:32 +0000 (21:39 +0800)]
pretty print EEPROM

4 years agoeeprom, cases for n=1, n=2 and n>2
Robin Krens [Sun, 11 Aug 2019 15:40:01 +0000 (23:40 +0800)]
eeprom, cases for n=1, n=2 and n>2

4 years agoeeprom sequential read
Robin Krens [Sun, 11 Aug 2019 13:34:16 +0000 (21:34 +0800)]
eeprom sequential read

4 years agoeeprom at24c signs of life
Robin Krens [Fri, 9 Aug 2019 16:12:53 +0000 (00:12 +0800)]
eeprom at24c signs of life

4 years agoraising and failing edge capture on TIM4
Robin Krens [Tue, 6 Aug 2019 19:18:26 +0000 (03:18 +0800)]
raising and failing edge capture on TIM4

4 years agobasic implemtation general purpose clock and tinyprintf
Robin Krens [Mon, 5 Aug 2019 14:29:35 +0000 (22:29 +0800)]
basic implemtation general purpose clock and tinyprintf

TIM4 used as general purpose timer; output mode; sends out continous
pulses over GPIOB6. Implementation tinyprintf library (not all converted
yet).

4 years agortc implementation
Robin Krens [Thu, 1 Aug 2019 15:32:49 +0000 (23:32 +0800)]
rtc implementation

Basic rtc implementation. LSE oscillator is used as clock source
(32kHz). Second (periodic) interrupt is enabled to trigger a interrupt
every second. RTC is not calibrated with tamper pin (so could be off
with a few second each month). Added small uptime cmd.

4 years agoHSE usage
Robin Krens [Tue, 30 Jul 2019 20:11:42 +0000 (04:11 +0800)]
HSE usage

High speed external clock set to 36 MHz, 72MHz speeds crashed on board.
No changes to buspeeds. Adaptions to UART baud rates.

4 years agotm1637 signs of life, terminal builtin cmds
Robin Krens [Sun, 28 Jul 2019 20:00:58 +0000 (04:00 +0800)]
tm1637 signs of life, terminal builtin cmds

4 years agobasic led gpio driver
Robin Krens [Thu, 25 Jul 2019 14:33:25 +0000 (22:33 +0800)]
basic led gpio driver

4 years agotested working terminal and reordering of code
Robin Krens [Wed, 24 Jul 2019 20:26:08 +0000 (04:26 +0800)]
tested working terminal and reordering of code

4 years agobasic terminal
Robin Krens [Tue, 23 Jul 2019 19:00:45 +0000 (03:00 +0800)]
basic terminal

4 years agofixed-sized memory pool allocator
Robin Krens [Mon, 22 Jul 2019 18:22:23 +0000 (02:22 +0800)]
fixed-sized memory pool allocator

4 years agosmall system SRAM info output
Robin Krens [Fri, 19 Jul 2019 18:55:07 +0000 (02:55 +0800)]
small system SRAM info output

Small sysinfo output of SRAM memory, stack and used memory so far

4 years agofurther ivt and isr implementation
Robin Krens [Fri, 19 Jul 2019 15:37:48 +0000 (23:37 +0800)]
further ivt and isr implementation

general (dummy) exception or interrupt handlers show exception number
(from VTOR status register)

4 years agouart small ping pong receive, update of register functions
Robin Krens [Thu, 18 Jul 2019 16:55:33 +0000 (00:55 +0800)]
uart small ping pong receive, update of register functions

no priorities, so one handler might keep 霸占 the CPU

4 years agobasic memory management and uart wait fix
Robin Krens [Mon, 15 Jul 2019 16:58:54 +0000 (00:58 +0800)]
basic memory management and uart wait fix

4 years agouart functionality (delay) + interrupt tested
Robin Krens [Sun, 14 Jul 2019 17:38:53 +0000 (01:38 +0800)]
uart functionality (delay) + interrupt tested

4 years agobasic uart functionality (not tested)
Robin Krens [Sat, 13 Jul 2019 16:13:52 +0000 (00:13 +0800)]
basic uart functionality (not tested)

4 years agoimplementation of interrupts, SysTick exception
Robin Krens [Wed, 10 Jul 2019 20:11:15 +0000 (04:11 +0800)]
implementation of interrupts, SysTick exception

4 years agoinit vector implementation
Robin Krens [Wed, 10 Jul 2019 10:40:58 +0000 (18:40 +0800)]
init vector implementation

4 years agoprint to uart0 [note: always printed on screen through DMA]
Robin Krens [Tue, 9 Jul 2019 06:24:26 +0000 (14:24 +0800)]
print to uart0 [note: always printed on screen through DMA]

4 years agojump to c
Robin Krens [Mon, 8 Jul 2019 13:39:02 +0000 (21:39 +0800)]
jump to c

4 years agostatic RAM (.data) usage
Robin Krens [Fri, 5 Jul 2019 09:49:05 +0000 (17:49 +0800)]
static RAM (.data) usage

4 years agofirst commit, basic setup and makefile
Robin Krens [Fri, 5 Jul 2019 09:09:55 +0000 (17:09 +0800)]
first commit, basic setup and makefile