imi415 boosted

🗳️ choose then boost :boost_requested:

imi415 boosted

We are teaming up with the design agency @oakstudios to update our homepage and our brand. Goodbye social media blue, hello vibrant purple!

i.MXRT MCUs have an additional power mode which will automatically gate CPU core clock when WFI instruction is executed. This is the default behavior and I had no clue why debug connection was lost until I found this post:

Interface with I2C devices and sensors using NXP MCU-Link Pro and USBSIO library. A sample which looks like "i2cdetect"

Daily Segger joke 1/1: Segger RTT is available in SES even you are using CMSIS-DAP debugger with it.

@Neo_Chen 记得看下他的PoE是不是标准802.3af/at,别是强上灵车直接无脑输出就好

OK, It turns out that this is not a new feature, and is made of two "screen"s. Here are the htoprc lines

Show thread

@lamp I'm at 3.2.0 shipped from Arch Linux, but I don't know the exact version this feature was added.

Some "hidden" feature from the new htop utility, this tab is invisible until run as root user.

OK, it seems the vectored ecall handlers are not a problem. Got both vectored and PFIC mode working today.

Show thread

@Neo_Chen Getting started with... an HP 39GS :)
Currently using my 39GS Connectivity Kit on Windows 2k SP1, have no idea whether it works on XP..

@frederickzh 我前司Mac用户喜欢装Docker machine开发Go的服务端,四舍五入还是Linux虚拟机,不过他们可能不认为自己在跑虚拟机(

@frederickzh 这说的可能是Go菜了,不是Linux用户少了……另外可能是其他平台支持好了,省了个虚拟机……本来真的Linux用户也不是很多

It seems WCH also noticed this issue, however what they did is simply replaced the ecall instruction with a register write to their "PFIC", which pends a software interrupt with lower preemption priority than SysTick...

Show thread


This non-standard exception handling caused an unexpected result when RTOS is being used. Since the interrupt priority is fixed and interrupts are mixed with exceptions, the M mode ecall exception has higher priority than SysTick interrupt, so the SysTick interrupt won't fire while handing ecall exceptions due to preempt priorities.. However RTOS uses ecall instruction as yield function, so the scheduler mostly runs in M mode ecall exception routine.

Show thread

What we can clearly tell from the picture above is WCH does not handle exceptions and interrupts seperately.. The ecall exceptions are fitted in the vector table, and will be vectored if the MODE bit set to 0b01 or 0b11...
The spec clearly described that only [Asynchronous interrupts] should be vectored, not exceptions...

Show thread
Show older

The social network of the future: No ads, no corporate surveillance, ethical design, and decentralization! Own your data with Mastodon!